Xakep #305. Многошаговые SQL-инъекции
Серверы на архитектуре ARM в последнее время вызывают много дискуссий. Людям нравится поговорить о технических новинках, тем более что ARM действительно обладает уникальными характеристиками: рекордно низкое энергопотребление и компактный размер. Недавно появились решения, которые вмещают до 1000 ARM-серверов в один серверный шкаф (по 48 штук на двойной юнит). Что более важно, весь шкаф с тысячей процессоров будет потреблять не больше 5000 Вт, то есть менее 5 ватт на каждый четырёхядерный ARM-процессор.
Специалисты с сайта AnandTech решили проверить на практике, действительно ли ARM-серверы настолько хороши — и провели большое сравнительное тестирование кластера производства Calxeda на процессорах ARM A9 под Ubuntu 12.10 — и серверов Supermicro SYS-6027TR-D71FRF Xeon E5 (два юнита).
Конфигурация:
1. Два процессора Intel Xeon E5-2660 (2,2ГГц, 8 ядер, 20 МБ L3, 95W)
2. Два процессора Intel Xeon E5-2650L (1,8ГГц, 8 ядер, 20 МБ L3, 70W)
В обеих конфигурациях — материнская плата X9DRT-HIBFF, чипсет Intel C600. Оперативная память 64/128 ГБ (8/16x8 ГБ) DDR3-1600 Samsung M393B1K70DH0-CK0. Блок питания PWS-1K28P-SQ 1280W 80 Plus Platinum на 1280 ватт.
3. Сервер Boston Viridis под Ubuntu 12.10: 24 процессора ECX-1000, ядра, Cortex-A9 1,4 ГГц, 24 модуля оперативной памяти Netlist 4 ГБ (96 ГБ) ECC PC3L-10600W-9-10-ZZ, шесть материнских плат с прошивкой ECX-1000-v2.1.5, блок питания SuperMicro PWS-704P-1R на 750 ватт.
Для хранения данных использовалась одинаковая система DataON DNS-1640 DAS. В некоторых тестах для сравнения тестировались системы на процессорах Atom.
Специалисты провели ряд «синтетических» тестов, в которых серверы x86 показали явное преимущество над ARM: это тесты на максимальную пропускную способность памяти (streaming) для проверки максимальной нагрузки при интенсивной обработке данных, тест на производительность CPU путём компрессии и декомпрессии 7z LZMA, тест на скорость компиляции.
Совершенно иная картина была в тестах на реальных задачах, где использовался фреймворк vApus для стресс-тестирования. Так, если использовать серверы для хостинга, поставить два десятка виртуальных машин с веб-серверами и подвергнуть их нагрузке в несколько тысяч запросов, то ARM-кластер показывает лучший результат за счёт бóльшего количества ядер и лучшей параллелизации простых запросов.
Полные результаты тестирования см. в большом обзоре AnandTech.
В целом можно сделать вывод, что кластер с 24 процессорами ARM гораздо дороже, чем такой же по размеру cервер на Xeon E5, но потребляет меньше энергии и показывает лучшую производительность в некоторых специфических задачах. Но, учитывая цену и энергопотребление, это похоже просто на перекладывание денег из кармана энергокомпании в карман производителя железа.