
Nie otworzymy Ameryki, jeśli powiemy, że maszyny wirtualne na nowych procesorach zawsze są wydajniejsze niż sprzęt na procesorach starszej generacji. Interesujące jest coś innego: podczas analizy możliwości systemów, które wydają się bardzo podobne pod względem specyfikacji technicznych, wyniki mogą być zupełnie różne. Przekonaliśmy się o tym, testując procesory Intel w naszej chmurze, aby sprawdzić, które z nich zapewniają najwyższą wydajność podczas pracy systemów na 1C.
Spoiler: jak wykazał nasz test, wszystko zależy od postawionego zadania. Udało nam się z całej gamy nowych procesorów Intel wybrać ten produkt, który zapewnił wielokrotny wzrost wydajności dzięki temu, że w Intel Xeon Gold 6244 jest mniejsza liczba rdzeni, na każdy rdzeń przypada większa ilość pamięci podręcznej L3, a także przypisana jest wyższa częstotliwość taktowania — zarówno bazowa, jak i w trybie Turbo Boost. Innymi słowy, to właśnie te procesory lepiej radzą sobie z zadaniami o dużym zapotrzebowaniu na zasoby przeliczone na jednostkę wydajności/złotówkę. Dla 1C jest to idealne dopasowanie: z nowymi procesorami aplikacje na 1C w naszej chmurze zaczęły dosłownie „oddychać”.
A teraz opowiemy, jak przeprowadziliśmy testy. Poniżej znajdują się wyniki syntetycznych testów Gilewa. Można się na nich opierać, ale w każdym przypadku należy sprawdzić rzeczywiste wykorzystanie na własnych zadaniach.
Warunki testu
Ważna uwaga: porównanie zostało przeprowadzone bez jakichkolwiek dodatkowych optymalizacji, a nie jako benchmark. Przy dodatkowej konfiguracji systemów w chmurze wyniki będą z pewnością lepsze.
Dane: dwie maszyny wirtualne z 8 vCPU i 64 GB RAM z dyskami FLASH 10.000 IOPS.
Pierwsza wirtualna maszyna — z Windows Server 2016 i zainstalowanym 1C 8.3.10.2580, natomiast drugi obraz maszyny wirtualnej z bazą danych (Centos + Postgresql) pobraliśmy z .
Baza danych Postgresql — nie jest przypadkowa, ponieważ jej użytkowanie jest najbardziej zbliżone do rzeczywistych warunków użytkowania 1C przez naszych klientów. Tak, wykonaliśmy syntetyczne testy, podobne do typowych instalacji, więc to nie jest uniwersalna odpowiedź na wszystkie pytania Wszechświata, lecz właśnie punkt odniesienia dla waszej własnej analizy.
Ważne jest, że w przypadku użycia architektury plikowej zamiast bazy danych wyniki testów są zazwyczaj lepsze. Jednak w rzeczywistości ten typ architektury jest używany tylko w bardzo małych instalacjach. Oto tu na architekturze plikowej. A oto, co na ten temat powiedział sam Wiaczesław Gilew:
Jeśli mówimy o wynajmie 1C w trybie plikowym, to tak, ale to, co widzę, działa wyłącznie w wariancie klient-serwer. Ma sens: 1) albo wprowadzić to jako wyjaśnienie do artykułu; 2) albo przetestować wariant klient-serwer, ponieważ różnica w architekturze jest znacząca, a wariant plikowy nie zapewnia pełnej funkcjonalności.
Nie przeprowadzono żadnych dodatkowych ustawień systemu operacyjnego ani produktu 1C.
Procesory
- W lewym rogu ringu — procesor Intel Xeon E5-2690 v2, 3,00 GHz.
- W prawym rogu ringu — Intel Xeon Gold 6254, 3,10 GHz.
- Na środku ringu — Intel Xeon Gold 6244, 3,60 GHz.
Niech walka się rozpocznie!
Wyniki
Intel Xeon E5-2690 v2, 3,00 GHz:

Dla nas 'dobry' to minimalny poziom, który gwarantuje komfortowy poziom pracy klienta z systemami 1C.
Wynik — 22,03.
Intel Xeon Gold 6254, 3,10 GHz:

Wynik — 27,62.
Procesor Intel Xeon Gold 6244, 3,60 GHz:

Wynik — 35,21.
Podsumowując: nawet jeśli wirtualna maszyna na Intel Xeon Gold 6244 przy 3,6 GHz kosztowałaby o 60% więcej niż E5-2690 v2 przy 3 GHz, warto wybrać właśnie ją. Przy mniejszej różnicy w cenie korzyści są jeszcze większe. Jednak my mamy znacznie mniejszą różnicę w cenie, dlatego takie VM są wyraźnie korzystniejsze.
Rdzenie procesorów Cascade Lake wykazują wzrost wydajności nie tylko dzięki zwiększonej częstotliwości, ale także nowocześniejszej architekturze. Równocześnie różne modele procesorów z tej linii dają różne wyniki, co należy koniecznie wziąć pod uwagę podczas rozwiązywania swoich zadań.
W chmurze planujemy używać tych procesorów w trybie Turbo Boost, w którym częstotliwość taktowania procesora osiąga 4,40 GHz, co zwiększy jego przewagę wydajnościową i uczyni wybór tego produktu jeszcze bardziej oczywistym.
Co to dla nas oznacza
Długo żyliśmy w starej paradygmacie, w którym jeden procesor miał niewiele rdzeni, dlatego na jednym serwerze mieściło się niewiele maszyn wirtualnych. Konieczne było wiele zabiegów, aby osiągnąć jakąkolwiek optymalność w gęstym rozmieszczeniu VM na tych serwerach. Teraz, kiedy na jeden socket mamy po 28 lub nawet 56 rdzeni, problem z gęstością rozmieszczenia rozwiązuje się niemal sam. Mamy zasoby, aby pomyśleć o innych dodatkach dla klientów naszego Chmury KROK. Na przykład, stworzyliśmy oddzielny pul z procesorami 6244 pod DBMS.
Dodatkowy bonus — okazało się, że jest to bardzo odpowiednia architektura dla 1C. Chodzi o to, że jeśli przechodzimy z procesora o częstotliwości 3 GHz na procesor 4 GHz, to prawie wszystkie testy dają ci nie +30 %, a +15–20 %… A to urządzenie daje ci +45 %. Oznacza to, że częstotliwość wzrasta o 30 %, a wzrost rośnie nieliniowo względem częstotliwości. A procesory są droższe o około 40 %. Ostatecznie nowe procesory są droższe, ale w końcu 1C zaczyna działać prawidłowo. Można przechodzić do chmury, nie martwiąc się, że tam nie ma tych procesorów. Dla wielu naszych klientów jest to teraz bardzo ważne.
Źródło: habr.com
