zdravim,
za posledni roky jsem vyzkousel par procesoru od AMD co se tyce Javy a vyvoje na Springu.
Budu mluvit o desktopu.
Co se tyce velkych buildu na Maven, tak Ryzen 1800x trhne dopre taktovane 6 jadro od Intelu - core I7, core i9. Tady je to hlavne o frekvenci jednoho jadra a paraelizace tak slavna neni. To same je i boot Spring aplikaci.
Pri spusteni vidite, ze to obcas zabere na veskera jadra. Ale jinak vytizeni na jedno vlakno je slabota.
Ohledne buildu je load tak okolo 8 pokud se bavime o korporatnich aplikacich.
Jinak Spring a paraelni boot, tak to je kapitola sama pro sebe. Staci si projit nektere ticket-y(bugzilla) na Springu.
Vyvojari maji jine priority.
Notebooky nebo miniITX pocitace, tak to je pomale a hlavne to hrozne funi = vetraky.
Tam kde trhnete Intel:
jsou unit testy. Idealne psane pomoci mock-u nebo nejake vypocty. Pokud se jede single thread do relacni databaze vsechny testy (nepocitam H2 a in memory databaze), tak tam vede Intel.
Tak to proste je.
Samozrejme, ze se pocita, ze mate NVMe disky a alespon 32GB RAM. Idealne 64GB s virtualizaci.
Proc teda kupovat neco jineho a vicejadroveho ?
----
Pokud mate dobre napsane testy, tak to se pocita.
Na 16 jadru nepoznate, ze delate build ci poustite unit testy na 32 vlaken a muzete delat dalsi veci. Je to plynule.
Virtualizace jsou jasna volba.
Pokud si jeste provozujete databazi a par webserveru(JBOSS,....), tak to je taky jasna volba. Je to pak hodne svizne.
Pokud delate s velkymi daty.
Nektere aplikace podstatne startuji rychleji. Ve vterinach. IDEA, Eclipse, SQLDeveloper.
Je pro Vas dulezite vykryt dobre nejake spicky - narazove vyuziti HW.
Pokud se denne prepnete denne do 10-12 GIT ruzne starych vetvi, delate buildy a delate merge + chcete si ozkouset unit-testy, nez to poslete na code-review ci rovnou git push, zda to chodi.
Me osobne vadi zasekavani masiny a trhani aplikaci pri myslenkovych pochodech pri praci. Hure se pak soustredim.
Muzete se dostat k hodne zajimavym uloham a zkusenostem, co ostatni delat nemohou. Nektere veci se na core i5, 8GB RAM a HDD delat v rozumnem case nedaji.
Performance testy. Zde to je jasna volba.
Lepsi vicejadro se taky hodi, pokud si zapnete Sonar pri vyvoji.
Nejake dlouhodobe zkusenosti za posledni asi 3 roky:
AMD Vishera 8300 8c - pomale v porovnani s dalsimi CPU v seznamu. Nic moc slavneho.
AMD Ryzen 1800x 8c/16t - slusne. Hodne zajimavy CPU.
AMD ThreadRipper 1950x 16c/32t - naprosta plynulost.
AMD ThreadRipper 2990WX 32c/64t - budu vedet za mesic/dva.
--------------------------
Pokud chcete setrit, tak 4 jadro core i7. Vice se, pokud nemate nejake paraelizace a paraelizovatelne ulohy, nevyplati.
Pokud chcete vyssi efektivitu za vynalozene penize tak 6 jadro od Intel. Pokud chcete nejaky lepsi vykon za nizsi penize tak Ryzen 2700x - 8 jader.
Pokud chce nekdo usetrit, tak staci zacit pouzivat misto Eclipse IDE InteliJ IDEA. Uplne jinak toto IDE pracuje s HW prostredky (RAM, CPU).
Pavel Kysilka