Wybór procesora pod programowanie

0

Witam

Czy procesory AMD Zen lepią się sprawdzą w developerce java od Intela?
Chodzi mi o budowanie mavenem, compilacje kodu, szybkość dzałania intelij, obrazy na dockerze, baza danych itp., wszystko postawione lokalnie.
Ramu będzie 32 gb.

Na przykład biorąc takiego Ryzena 7 2700 i porównująv go z i7 8700 ?
Ryzen ma 8 rdzeni a i7 6 rdzeni.
W internecie jest sporo testów i porównań tych procesorów ale głównie w grach lub programach do obróbki graficznej itp.
Ogólnie w grach intel jest lepszy, w obróbce graficznej ryzen, a ja się pytam który będzie lepszy do javy i tych zastosowań co wyżej napisałem.
Czy te 2 dodatkowe rdzenie zrobią różnicę ?
Jak na ironie Ryzen jest tańszy od i7.

Co o tym myślicie , warto iść w ryzena w tych zastosowaniach ?

0

Ja to bym raczej w dysk nvme uderzył, a co do pytania, to niestety jestem zawsze za intelem. Tak po prostu, Intel + nVidia i PlayStation :)

0

sprawa jest prosta, intel (na razie) ma silniejszy pojedynczy rdzeń, za to wielowątkowością wygrywa amd, tak samo amd wygrywa przeliczeniem ceny do wydajności. Osobiście mam ryzena 2700x bo właśnie potrzebowałem jak najwięcej wątków jednocześnie obsłużyć.

1

Plus też dla Intel+Nvidia lepsze zarządzanie energią = dłuższa batka na lapku, chociaż konkurencja się przyda.

2

Wystarczy dowolny intel min. 4C/8T.
Programowanie nie jest specjalnie wielowątkowe, chyba że programujesz bardzo specyficzne rzeczy.
Aplikacje biznesowe i IDE raczej nie wykorzystują więcej niż 4 wątki, gdyż ponieważ są przede wszystkim zorientowane na I/O.
Zamiast wydziwiać z CPU lepiej kup szybki dysk - jak tu już napisano.

0

@vpiotr: nie powiedział bym, wszystko zależy co jest robione, mogę powiedzieć, że jak ktoś robi na dużych aplikacjach angularowych to lepiej więcej rdzeni. Serio. i5 u mnie nie wyrabiał i wszystko się ścinało.

0
mr_jaro napisał(a):

@vpiotr: nie powiedział bym, wszystko zależy co jest robione, mogę powiedzieć, że jak ktoś robi na dużych aplikacjach angularowych to lepiej więcej rdzeni. Serio. i5 u mnie nie wyrabiał i wszystko się ścinało.

Mógł mieć małą częstotliwość bazową. Jakoś mi trudno uwierzyć że Angular chodzi wielowątkowo.

0

Angular miał swego czasu błędy, które powodowały cpu 100% taki urok niestety.

0
czysteskarpety napisał(a):

Angular miał swego czasu błędy, które powodowały cpu 100% taki urok niestety.

mógłbym przyznać ci racje gdyby to samo nie działa się na projektach z angulara 1 angulara 2 i angulara 5 :) Robiłem ctr+s w tym momencie się watch przemielał a po watch od razu przeglądarka bo chce mieć widok od razu na drugim monitorze no i te ~30-60s nie szło nic pisać ani robić. Teraz nie mam żadnego problemu a widać jak kilka rdzeni sobie w tym czasie pracuje.

0

Czy dla deva ma to takie duże znaczenie czy kod będzię się kompilował 10 sekund czy 12 ?

To nie sarkazm, pytam serio. Szybkość dysku rozumiem, ale moc procesora w dzisiejszych czasach?

0

To nie sarkazm, pytam serio. Szybkość dysku rozumiem, ale moc procesora w dzisiejszych czasach?

Co jeśli na lokalnym komputerze chce zainstalować cale środowisko developerskie, i pracuje nad system składającym się z kilkudziesięciu mikroserwisów? Do tego SQL Server, dodatkowy serwer danych (np. Event Store) oraz kilka instancji Visual Studio bo muszę coś zdebugować.

3
Berylo napisał(a):

Czy dla deva ma to takie duże znaczenie czy kod będzię się kompilował 10 sekund czy 12 ?

Nie, ale ma znaczenie czy się kompiluje 10 minut czy 12 ;-)

2
vpiotr napisał(a):

Mógł mieć małą częstotliwość bazową. Jakoś mi trudno uwierzyć że Angular chodzi wielowątkowo.

Nie wiem czy Angular sam w sobie używa wątków (workerów).
Ale aplikacje w JS mogą, czasem to robię (ale to raczej dość specyficzne przypadki (symulacje /grafika), nie typowy biznes).
Chrome V8 jak najbardziej może korzystać ze rdzenii (JIT, gc).
Do tego programując pod Angulara korzystasz z 30 ton narzędzi nodowcyh.
Do tego IDE i tak dalej. (Jeden rzdzeń obowiązkowo do animowanej tapety).

W skrócie, jak się nie przytknie na RAM/IO to masz szansę użyć wielu rdzeni przy pracy nad nawet prostą aplikacją Angular.

Berylo napisał(a):

Czy dla deva ma to takie duże znaczenie czy kod będzię się kompilował 10 sekund czy 12 ?

Jeśli ta kompilacja jest wykonywana co chwilę i używana do podpowiadania składni, To może się okazać, że całkiem zmienia Ci to sposób pracy.
10 i 12 sekund to i tak dużo, podstawowe przyrostowe kompilacje powinny trwać sekundy (2 -3). I jest różnica w komforcie między 2 a 3.
Niestety, zwykle ładując dużo pieniędzy w procka nie osiągnie się istotnej poprawy :-( Ja nie widzę dużej różnicy w kolejnych generacjach i7.
Ważne jest np. chłodzenie (dlatego zwykle dłuższa praca na 13 calowych lapkach to dramat, mimo że mają takie ultra super procki).

Ja ładuję kasę w SSD, RAM, MB (markę powiedzmy), potem dopiero procek.
Ale oczywiście najwięcej inwestuję w kolorowe ledy wszędzie. Każdy led na RAMie, obudowie itp. to +5% do szybkości.

0

Mówicie o takich kompilacjach po parę minut czy godzin ale przecież rzadko się to robi lokalnie i zazwyczaj się buduje na jakimś CI. Z przyrostowym auto-buildem się zgadzam tylko pytanie czy to faktycznie procesor jest najważniejszy, a nie na przykład dysk.

1

@Berylo: przy froncie "kompilacja" zawsze jest lokalnie :p

0

Spring Boot + angular + 2x Intellij i na Q6600 4 GB RAM nie da sie pracowac.
Na i5 3 generacji i5-3320 da sie juz komfortowo pracowac (8GB RAM + SSD).

Ale np. jak postawilem Ubuntu na Virtual Boxie to sie slimaczy. A tego sie nie da uzywac: https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/

0

Ja kompiluję głównie lokalnie. I nawet odpalam lokalnie (przeważnie ) najważniejsze weryfikacje z CI (czyli wszystko poza jakimiś cięzkimi e2e testami). Przecież nie będę czekał na CI z przy każdym pushu. CI ma tylko stać na straży i raz na jakiś czas pogrozić mailem. Normalnie tam nawet nie zaglądam :-)
Lokalnie przy podpowiadaniu składni, przyrostowych kompilacjach procek się liczy (jego Cache głównie), ale faktycznie są komponenty w które bardziej się opłaca wrzucić pieniądze : dysk SSD i dużo szybkiego RAM.

1
Azarien napisał(a):

Nie, ale ma znaczenie czy się kompiluje 10 minut czy 12 ;-)

Minut? Pfff... jazdy to są jak coś się kompiluje 8h ;) ale wtedy lepiej wrzucić na serwer i kompilować na 80 CPU niż męczyć to na 1-6 lokalnie, choćby nie wiem jak mocne były

1
superdurszlak napisał(a):

Minut? Pfff... jazdy to są jak coś się kompiluje 8h ;) ale wtedy lepiej wrzucić na serwer i kompilować na 80 CPU niż męczyć to na 1-6 lokalnie, choćby nie wiem jak mocne były

Takie rzeczy to głównie w Scali i C++.
Znajomy ma nawet firmę, która robi biznes na zrównoleglaniu kompilacji Scalowych (triplequote hydra).
Podobno w niektórych projektach to jest ratunek i całkowita zmiana sposobu pracy (widziałem kompilacje 40 minutowe w scali, więc wierzę).

1
Azarien napisał(a):
Berylo napisał(a):

Czy dla deva ma to takie duże znaczenie czy kod będzię się kompilował 10 sekund czy 12 ?

Nie, ale ma znaczenie czy się kompiluje 10 minut czy 12 ;-)

To są 2 minuty mniej na 4p i koty w internecie. Więc chyba jasne, że lepiej 12 albo nawet 120 minut.
No chyba, że ktoś ma pecha, i płacą mu od wykonanych zadań. Ale w takim przypadku taki ktoś ma znacznie większe problemy życiowe niż zbyt słaby procesor.

0
somekind napisał(a):

No chyba, że ktoś ma pecha, i płacą mu od wykonanych zadań. Ale w takim przypadku taki ktoś ma znacznie większe problemy życiowe niż zbyt słaby procesor.

Prawie wszystkie firmy płacą od wykonanych zadań. Nie zawsze bezpośrednio i nie zawsze efekty finansowe są od razu.

Są oczywiście wyjątki. Typowo to firmy państwowe (co dziwne, nie tylko). Tylko, że o ile wydaje się to momentami fajne, to dość szybko człowiek odkrywa, że coraz więcej ludzi z otoczenia to tacy, którzy generalnie żyja z wykonywania niczego i świetnie odnajdują się w takim miejscu. Dla wielu programistów jest to trudne do zniesienia.

(btw. byłem pewny, że twój tekst jest ironiczny, ale końcówka jakby temu przeczy).

0

Po tym co napisaliście w odpowiedziach postanowiłem ,że biorę ryzen 2700X, dodatkowe rdzenie są lepsze niż nie wiele lepsza wydajność pojedynczych intela.
Zwłaszcza ,że w gry grać nie będę, a tak jak kilka osób wspomniało, microserwisy, bazy danych, ide, dockery i pewnie coś tam jeszcze.

0

Jak ktoś sobie rozwija silnik szachowy (oparty o alpha beta prunning), to wtedy te dodatkowe rdzenie będą mieć znaczenie, zwłaszcza w rozwiązywaniu skomplikowanych zadań szachowym (analizie pozycji). To, jak dla mnie przynajmniej, jedna z nielicznych dziedzin, gdzie lepiej brać tyle rdzeni, ile się da, choć nie skaluje się to liniowo i ciężko natrafić na testy czegoś mocniejszego niż 128 rdzeni (trwa polemika na ile większa ilość od 128 przyczynia się do poprawy czegokolwiek w obecnych silnikach).

3
jarekr000000 napisał(a):

Prawie wszystkie firmy płacą od wykonanych zadań. Nie zawsze bezpośrednio i nie zawsze efekty finansowe są od razu.

Są oczywiście wyjątki. Typowo to firmy państwowe (co dziwne, nie tylko).
Tylko, że o ile wydaje się to momentami fajne, to dość szybko człowiek odkrywa, że coraz więcej ludzi z otoczenia to tacy, którzy generalnie żyja z wykonywania niczego i świetnie odnajdują się w takim miejscu. Dla wielu programistów jest to trudne do zniesienia.

Tak na poważnie - jeśli pracodawca płaci za efekty, to w jego interesie jest zapewnienie sprzętu, który te efekty daje, nie w moim. Podobnie jeśli chodzi o zatrudnianie bezsensownych ludzi - to jemu przynoszą straty. Mnie co najwyżej irytuje, że muszę się z takimi zadawać.

(btw. byłem pewny, że twój tekst jest ironiczny, ale końcówka jakby temu przeczy).

Ja lubię ciężko pracować, jeśli widzę sens i efekty tego, co robię. Czasami nawet spędzam wieczór wykonując pracę, jeśli mam ciekawe zadanie.
Ale nie chciałbym musieć ciągle pracować ciężko, bo zadania trzeba skończyć na czas. Jeśli ktoś pracuje w warunkach ciągłego zapieprzu, to prawdopodobnie ma duże problemy: z czasem dla siebie, ze stresującym życie, no i ze znajdowaniem sensownych pracodawców.

0

Tyle tego wszystkiego tutaj jest, że nie udało mi się wysnuć żadnego wniosku. W moim przypadku dużo Visual Studio + Visual Studio Code. Teraz projekt w Angular i będzie więcej.
To w końcu Ryzen czy i7? :D

0

@AdamWox: bierz ryzena będziesz zadowolony, jak zabraknie ci rdzeni/mocy to w połowie roku wyjdzie nowa generacja której najsilniejsza jednostka będzie miała 16 rdzeni 32 wątki, poza tym będzie przyrost wydajności na cykl zegara 13% i większe częstotliwości (schodzą na 7nm), a procka zmienisz bez wymiany płyty.

0

Tylko procesory IBM Power9.

0

Pojawił się spoko artykuł porównujący wydajność dwóch popularnych procesorów dla graczy poniżej 1000 zł: https://pclab.pl/art79716.html
Testowane są Ryzen 5 2600 (kosztujący ok 700 zł) oraz Core i5-8400 (kosztujący ok 900 zł). Intel jest tylko ok 5% szybszy, a kosztuje 30% więcej. Po podkręceniu Ryzena zostaje jeszcze mniej różnicy, a Core bez K w nazwie nie da się podkręcić. Jak widać, w tej kategorii cenowej AMD radzi sobie bardzo dobrze także w grach.

0

Czyli że względu na cenę lepiej jest wziąć AMD bo wydajność ta sama. Tutaj testy były w grach, czy taki test można brać pod uwagę w programowaniu?

1 użytkowników online, w tym zalogowanych: 0, gości: 1