Comments 79
Про Raspberry Pi писали, что в качестве веб сервера он плохо подходит, но тем не менее современные ARM системы мне кажется действительно не будут уступать атомам.
И как на счёт плат www.arndaleboard.org/wiki/index.php/Main_Page и www.hardkernel.com/renewal_2011/products/prdt_info.php?g_code=G132342040298?
И как на счёт плат www.arndaleboard.org/wiki/index.php/Main_Page и www.hardkernel.com/renewal_2011/products/prdt_info.php?g_code=G132342040298?
На ODROID-е 2х-ядерный Cortex-A9 и 100-мегабитный Ethernet (на Sabre 4х-ядерный и «почти» гигабит). Ну и ODROID дороже.
ARNDALE — очень интересная плата, к сожалению я её поздно заметил.
В пользу Freescale i.MX6Q я ещё упоминал свой опыт (довольно позитивный) с предыдущей серией i.MX51, а ещё забыл написать, что мне очень нравится открытость платформы — множество репозиториев с исходниками Linux-а и Android-а, огромное комьюнити, и даже тех. поддержка — бесплатная и относительно вменяемая.
ARNDALE — очень интересная плата, к сожалению я её поздно заметил.
В пользу Freescale i.MX6Q я ещё упоминал свой опыт (довольно позитивный) с предыдущей серией i.MX51, а ещё забыл написать, что мне очень нравится открытость платформы — множество репозиториев с исходниками Linux-а и Android-а, огромное комьюнити, и даже тех. поддержка — бесплатная и относительно вменяемая.
На odroid 4х ядерный процессор, да и частота повыше: 1.7GHz штатно, до 2GHz гонится.
По приведённой ссылке на ODROID-PC Full Package процессор 2х-ядерный на 1.2GHz, а на других вариантах нет SATA.
На моей плате SSD-винт выдаёт всего 128МБ/с — но этого уже достаточно для тестирования гигабитных скоростей, в отличие от SD-карт. Кроме того система гораздо отзывчивей, и позволила обойтись без кросс-компиляции — да, Gentoo собиралась из исходников на этой же плате!
На моей плате SSD-винт выдаёт всего 128МБ/с — но этого уже достаточно для тестирования гигабитных скоростей, в отличие от SD-карт. Кроме того система гораздо отзывчивей, и позволила обойтись без кросс-компиляции — да, Gentoo собиралась из исходников на этой же плате!
Я просто не понял, что это ответ на комментарий выше. odroid-pc уже не продается. На других действительно нет SATA, есть слот eMMC, куда цепляются довольно быстрые, но специфичные для odroid'ов флешки ёмкостью до 64 гигов.
Ну и сеть действительно только 100, т.к. у процессора нет интерфейсов, способных гнать данные на гигабитных скоростях.
Ну и сеть действительно только 100, т.к. у процессора нет интерфейсов, способных гнать данные на гигабитных скоростях.
ARNDALE — очень интересная плата, к сожалению я её поздно заметил.
А вообще можно взять Samsung Chromebook, отцепить дисплей и клавиатуру, если они не нужны, и заменить SSD, если надо больше места. Стоит Chromebook всего 250$ без пересылки.
В хромбуке нет SATA, там флэш-память распаяна на плате.
Там стоит mSATA модуль от SanDisk — SDSA4DH-016G. Подробный teardown.
Вы привели ссылку на Atom-ный хромбук. Нас же интересует ARM-овский, не так ли?
Спасибо, интересная статья. Несколько замечаний:
Под ARM нужно указывать -mfpu=neon, тогда есть шанс что gcc что-нибудь векторизует на -O3. Также есть мнение, что для ARM clang/llvm лучше, чем gcc.
Что касается высоких результатов ARM в шифровании по AES, думаю, что OpenSSL использует аппаратный блок шифрования где-то в чипсете. В OpenSSL AES тесте Arndale board (упомянутая выше) оказывается производительнее самого быстрого Haswell, что возможно только при аппаратной реализации в чипсете (в отличие от Haswell, никаких инструкций для ускорения AES в Cortex-A15 нет).
Под ARM нужно указывать -mfpu=neon, тогда есть шанс что gcc что-нибудь векторизует на -O3. Также есть мнение, что для ARM clang/llvm лучше, чем gcc.
Что касается высоких результатов ARM в шифровании по AES, думаю, что OpenSSL использует аппаратный блок шифрования где-то в чипсете. В OpenSSL AES тесте Arndale board (упомянутая выше) оказывается производительнее самого быстрого Haswell, что возможно только при аппаратной реализации в чипсете (в отличие от Haswell, никаких инструкций для ускорения AES в Cortex-A15 нет).
Кстати, -march=native часто неправильно работает на ARM. Лучше использовать -mcpu=cortex-a9, чтобы наверняка.
Да и вообще, generic-оптимизации бывают самыми быстрыми, как ни странно.
wiki.linaro.org/MichaelHope/Sandbox/CoreMark1
wiki.linaro.org/MichaelHope/Sandbox/CoreMark1
Дельное замечание. Действительно, с -march=native gcc определяет -march=armv7-a (что нормально) и -mcpu=[default]. Какое у него default мы не знаем, поэтому явно дописал -mcpu=cortex-a9 и пересобрал OpenSSL. Но разницы в скорости нет, ну точнее в пределах погрешности — где чуть больше, где чуть меньше.
Я так подозреваю, что в моих тестах floating point, если и используется, то только в статистике, там точно векторных вычисление не нужно.
А так она определяется правильно:
Clang — это интересный вопрос, обязательно проверю.
AES — нет, аппаратное точно не используется, потому что для активации во-первых, нужно в командной строке передавать ядру опцию «caam», и во-вторых, когда работает ускорение, то user time в openssl speed или ноль или около того.
Тесты Arndale board я не видел, хотелось бы глянуть. Но мысль такая, что даже если аппаратное ускорение фантастически быстрое, то только в один поток. Когда на сервере висит пару тысяч подключение, оно должно захлебнуться. На моём i.MX6Q есть аппаратное кодирование видео в VP8 (!!!), но опять же — в один поток. Если запустить несколько, то они скорее всего будут просто ждать пока освободится аппаратный кодировщик. Поэтому реализация Intel-ом набора инструкций AES-NI выглядит гораздо элегантней.
На Xeon E3-1220 в 4 потока, без ускорения у меня такие циферки
без ускорения: aes-256 cbc 354709.61k 375930.92k 380990.12k 383823.87k 384417.79k
с ускорением: 1748189.47k 1839156.80k 1856688.81k 1865963.52k 1867699.54k — почти в 5 раз быстрее.
А так она определяется правильно:
sabrelite ~ # gcc -march=native -Q --help=target | grep fpu
-mfpu= vfpv3-d16
Clang — это интересный вопрос, обязательно проверю.
AES — нет, аппаратное точно не используется, потому что для активации во-первых, нужно в командной строке передавать ядру опцию «caam», и во-вторых, когда работает ускорение, то user time в openssl speed или ноль или около того.
Тесты Arndale board я не видел, хотелось бы глянуть. Но мысль такая, что даже если аппаратное ускорение фантастически быстрое, то только в один поток. Когда на сервере висит пару тысяч подключение, оно должно захлебнуться. На моём i.MX6Q есть аппаратное кодирование видео в VP8 (!!!), но опять же — в один поток. Если запустить несколько, то они скорее всего будут просто ждать пока освободится аппаратный кодировщик. Поэтому реализация Intel-ом набора инструкций AES-NI выглядит гораздо элегантней.
На Xeon E3-1220 в 4 потока, без ускорения у меня такие циферки
без ускорения: aes-256 cbc 354709.61k 375930.92k 380990.12k 383823.87k 384417.79k
с ускорением: 1748189.47k 1839156.80k 1856688.81k 1865963.52k 1867699.54k — почти в 5 раз быстрее.
NEON — это не только floating-point, но и целочисленные операции, копирование структур, и их инициализация нулями. Определяется он неправильно: т.к. ваш i.MX6Q поддерживает NEON, то должно определяться как -mfpu=neon. Кроме того, правильное указание архитектуры важно не только для того, чтобы использовались все поддерживаемые инструкции, но и чтобы gcc (или llvm) использовал правильную модель процессора. На ARM неправильное указание архитектуры может замедлить код в несколько раз. Вообщем, советую попробовать перекомпилировать с
Хм, сейчас запустил
Наверное, я в прошлый раз перепутал результаты.
-O3 -mthumb -march=armv7-a -mcpu=cortex-a9 -mfpu=neon -mvectorize-with-neon-quad
Хм, сейчас запустил
openssl speed aes-256-cbc
, Haswell получился быстрее:type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes Core i7-4770K 102729.52k 109921.09k 111643.31k 112242.35k 112915.35k Exynos 5250 55623.94k 59642.82k 61086.38k 61444.44k 61625.69k
Наверное, я в прошлый раз перепутал результаты.
61625.69k — видать не обманули ARM-ы, обещая 40%-ый прирост по сравнению с A9, потому что если взять мой результат 26757.80k, да помножить на коэффициент по частоте (1700/996=1.71), а потом ещё на обещанные 40%, то мы получим 64058.17к, что очень близко к вашему результату!
вы явно что-то перепутали в настройках. Allwinner A10 ARM Cortex-A8 1.08GHz при использовании neon оптимизаций в OpenSSL выдает 33498.80k. linux-sunxi.org/Benchmarks#Results_3 A10 не может быть быстрее чем i.MX6Q.
Пересобирайте систему с нормальными флагами (выше уже сказали, плюс, можно глянуть выше по ссылочке, я там везде указывал как собирал).
Еще, если интересно, по той же ссылочке выше в самом конце есть тесты Allwinner A20 ARM Cortex-A7 1.08GHz, но они выполнены на очень глючном ядре на неоптимизованной системе (Linaro latest), так что ручаться за них я не могу. Будет время — прогоню все по-человечески.
Пересобирайте систему с нормальными флагами (выше уже сказали, плюс, можно глянуть выше по ссылочке, я там везде указывал как собирал).
Еще, если интересно, по той же ссылочке выше в самом конце есть тесты Allwinner A20 ARM Cortex-A7 1.08GHz, но они выполнены на очень глючном ядре на неоптимизованной системе (Linaro latest), так что ручаться за них я не могу. Будет время — прогоню все по-человечески.
вы явно что-то перепутали в настройках. Allwinner A10 ARM Cortex-A8 1.08GHz при использовании neon оптимизаций в OpenSSL выдает 33498.80k. linux-sunxi.org/Benchmarks#Results_3 A10 не может быть быстрее чем i.MX6Q.Для корректного сравнения нужно брать одинаковые версии OpenSSL и gcc — они у нас разные. Кроме того вы пишите, то у вас оптимизации под neon, и в тоже время используете такие же флаги, что и я
Пересобирайте систему с нормальными флагами (выше уже сказали, плюс, можно глянуть выше по ссылочке, я там везде указывал как собирал).
-mfpu=vfpv3-d16 и не указываете -mcpu
compiler: gcc -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -DOPENSSL_NO_TLS1_2_CLIENT -DTERMIO -O3 -Wall -DOPENSSL_BN_ASM_MONT
-DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DGHASH_ASM
-DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DGHASH_ASM
слегка неправильно выразился, дефайны -D*_ASM в OpenSSL включают neon оптимизации на ARM платформе. выбор -mfpu=vfpv3-d16 это для эмиттера обычного кода. его тоже стоит подобрать таким, с каким будет максимальная производительность, тестировать можно Linpack'ом, SciMark'ом и другими классическими бенчмарками. в моем случае vfpv3-d16 был унаследован от ArchLinuxARM.
сравните два OpenSSL бенчмарка по ссылке, первый выполнен без -D*_ASM, второй с ним. разница aes-256 cbc 15712.26k vs. 33498.80k
сравните два OpenSSL бенчмарка по ссылке, первый выполнен без -D*_ASM, второй с ним. разница aes-256 cbc 15712.26k vs. 33498.80k
Да я верю, что разница c ASM-ами будет. Но у меня они так же как и у вас, определены (унаследованы от Gentoo :)
А вот у этих товарищей, скорее всего нет:
Из интересного, если указывать -march=cortex-a9, то AES-256-CBC так и остаётся 26МБ/с, а вот RC4 падает с 73 до 69МБ/с, проверил несколько раз.
Clang-ом с наскоку не получилось собрать OpenSSL, а разбираться сейчас уже нет времени.
Но найденные бенчмарки однозначно говорят, что GCC быстрее (с учётом версий, конечно).
А вот у этих товарищей, скорее всего нет:
Из интересного, если указывать -march=cortex-a9, то AES-256-CBC так и остаётся 26МБ/с, а вот RC4 падает с 73 до 69МБ/с, проверил несколько раз.
Clang-ом с наскоку не получилось собрать OpenSSL, а разбираться сейчас уже нет времени.
Но найденные бенчмарки однозначно говорят, что GCC быстрее (с учётом версий, конечно).
За Армами определенно будущее там, где не требуется максимульная абсолютная производительность.
Выйдут скоро ARM Cortex-A57 — и x86 придется совсем туго в нижнем/среднем сегменте.
Выйдут скоро ARM Cortex-A57 — и x86 придется совсем туго в нижнем/среднем сегменте.
В этом сегменте у Intel-а тоже есть интересные решения, вроде Core™ i3-4010Y. TDP чуть больше Atom-ного. Цена, правда, кусучая.
Посмотрел спецификации Intel Bay Trail и предварительные бенчмарки. Впечатляюще — на 30% быстрее при в два раза меньшей тактовой частоте, плюс, наконец-то, нормальное графическое ядро, криптография, и прочие SoC-овские «плюшечки». ARM-рестлинг обещает быть очень зрелищным!
Думаю если результаты совместить с потреблением энергии, то выйдет вполне не плохо (попугаев на ватт). Судя по первой таблице Atom со всеми приблудами кушает в 3 раза больше и наверняка тепла выделяет больше, а значит будут тратится ресурсы еще и на кондиционирование.
Пока хостеры не особо заморачиваются с подсчётом энергии. Вот, например, УкрТелеКом: До 2-х юнитов, до 650Вт уже включено в тариф. Понятно, что при таких условиях никто не будет оптимизировать размеры и тепловыделение. Как только повесят на каждый сервер счётчик электроэнергии, процесс пойдёт гораздо быстрее. Мне недавно штатовский хостер предложил заменить арендованные сервера (очень старые) с P4-1.7GHz на атомные.
iMX — семейство оптимизированное под мультимедию, там аппаратно кодирование декодирование видео, можно крутить 2 * 1080p потока, есть аппаратные hdmi и 2lvds. Короче, на кристалле половина лишнего для ваших задач, поэтому сравнивать по цене/скорости для данной задачи некорректно.
Также у фрискейла есть отдельное направление телекоммуникационных процессоров, которые оно просто не будет резать, оптимизируя под эти задачи i.MX.
Также у фрискейла есть отдельное направление телекоммуникационных процессоров, которые оно просто не будет резать, оптимизируя под эти задачи i.MX.
Совершенно верно, что сравнение не корректно. Собственно я об этом сделал ремарку. Просто никакого более подходящего и доступного ARM-ядра я не нашёл. Да и задачи тестирования ставились другие — можно ли заменить в моих текущих применениях Atom-ные решения на ARM-омовские, если бы они были доступны. Чуть корректней было бы брать «серверный» Atom, например S1260, на нём хотя бы нет видеоядра на кристалле.
По поводу позиционирования i.MX6, помимо Automotive-Consumer-Industrial упоминается ещё и Networking.
К сожалению не оставил ссылку, но точно видел у них в документации, возможность создания процессора «под заказчика» и список блоков-«кирпичиков» из которых можно построить свою SoC. Главное большую партию заказать.
К сожалению не оставил ссылку, но точно видел у них в документации, возможность создания процессора «под заказчика» и список блоков-«кирпичиков» из которых можно построить свою SoC. Главное большую партию заказать.
Прочитав этот пост ощутил насколько много у меня пробелов с пониманием архитектуры процессоров (например, я всегда полагаю, что отличия 32х битных систем от 64-х битных по скорости не существенны, а память проигрывает сильно). Так же, опции компиляции тоже заставили меня задуматься, что имеет смысл почитать и эту область.
О x32 ABI я вообще не слышал…
Сейчас использую 32-х разрядную linux систему, исключительно из-за бинарной совместимости многих программ (своих программ, компиляторов и т.п.). Но после этого поста стал задумываться…
О x32 ABI я вообще не слышал…
Сейчас использую 32-х разрядную linux систему, исключительно из-за бинарной совместимости многих программ (своих программ, компиляторов и т.п.). Но после этого поста стал задумываться…
А как же китайские RK3188, A31 и прочие?
Это которые без документации и драйверов? =)
С документацией действительно есть проблемы, тем не менее это не останавливает энтузиастов работать над поддержкой этих процессоров, здесь самое главное преимущество — цена.
преимущество — цена.Ну, не знаю. Вот самый дешёвый четырёхъядерный стик с RK3188 на АлиЭкспрессе — с доставкой выходит US $69.17. При этом Zealz GK802 с i.MX6Q с бесплатной доставкой можно купить за $69.99 на GeekBuying.
А что там по производительности? Оба четырёхъядерные А9, нет? Разница только по базовой частоте (1.2ГГц против 1.8ГГц) и GPU.
Да, оба четырёхъядерные А9, вот только RK3188 выпущен через 2 года после i.MX6Q. Не знаю насколько объективно, но в AnTuTu i.MX6Q выдает 10-11к, RK3188 дает 15-16к. Кроме того, RK3188 можно разогнать до 1.92ГГц и тогда можно выжать почти 19к.
Жаль, что основное обсуждение свелось к «у кого больше». Статья, в общем-то, не об этом. Абстрактные цифры в синтетике совсем не интересны, интересно другое — можно ли на базе SoC-а сделать полноценную микро-серверную платформу, и как она будет себя вести по сравнению с конкурирующей архитектурой. Насчёт разогнать — в серверных платформах ценятся несколько другие качества.
А то, что RK3188 быстрее в бенчмарках совсем не удивительно, как я показал в статье, масштабирование по частоте линейное: умножьте количество «попугаев» i.MX6 на разницу в частоте с RK, и получите в точности его «попугаи».
Ещё раз напомню почему i.MX6 — SATA, Gigabit Ethernet, PCI-E, открытость платформы.
А то, что RK3188 быстрее в бенчмарках совсем не удивительно, как я показал в статье, масштабирование по частоте линейное: умножьте количество «попугаев» i.MX6 на разницу в частоте с RK, и получите в точности его «попугаи».
Ещё раз напомню почему i.MX6 — SATA, Gigabit Ethernet, PCI-E, открытость платформы.
А там SATA есть? Прелесть i.MX6Q в том, что на нём даже шина PCI-E x1! — т.е. при желании на базе него можно вполне соорудить что-то серьёзное.
Интересно, почему до сих пор никто не наладил выпуск микро-серверных платформ, те же китайцы?
Интересно, почему до сих пор никто не наладил выпуск микро-серверных платформ, те же китайцы?
sata уже давно есть в китайский процессорах, недавно начал появляться rgmii/gmii. pci-e пока не встраивают.
Если не затруднит, киньте, пожалуйста, ссылочку на плату (которую можно купить), где бы был SATA-порт, процессор на ядре Cortex-A9 или выше.
Во-первых, AllWinner A31 базируется на ядре Cortex-A7, и то, что оно появилось позже Cortex-A9, совсем не означает что оно быстрее — в нем нет внеочередного исполнения команд, небольшие частоты, зато максимально энергоэффективное.
Во-вторых, в блок схеме этого самого 31-го ПоБедителя,
А на сайте продавца в характеристиках (на картинке, конечно же) написано, что
Зная китайцев, я патчкорд даю на отсечение, что они сделали черезпопу USB-to-SATA мост.
Во-вторых, в блок схеме этого самого 31-го ПоБедителя,
А на сайте продавца в характеристиках (на картинке, конечно же) написано, что
эта фича опциональная

Зная китайцев, я патчкорд даю на отсечение, что они сделали через
Есть там SATA, это же фишка Allwinner, она там и в A10 была, и в A20 есть www.olimex.com/Products/OLinuXino/A20/A20-OLinuXino-MICRO-4GB/ и в A31 будет. Например, под A20, исходники IPL/SPL уже есть github.com/hno/allwinner-boot?source=cc, u-boot уже поднят github.com/hno/u-boot/tree/wip/a20 ядро есть официальное github.com/amery/linux-sunxi/commits/import/lichee-3.3/a20-dev и не очень официальное github.com/jwrdegoede/linux-sunxi/tree/sunxi-3.4-a20-wip
Поддержка A31 только вопрос времени и наличия девкитов, сейчас все работают на продуктах от Olimex.
Поддержка A31 только вопрос времени и наличия девкитов, сейчас все работают на продуктах от Olimex.
Тем не менее A31 производительнее чем i.MX6Q. В A31 действительно нет SATA, что очень странно.
победителем вышел бы Cortex-A15.
Cortex A15 это микроархитектура, точно так же, как и Haswell и другие. Вы здесь сравнили результаты конкретного процессора и микроархитектуру ядра, что, мягко говоря, не корректно. Процессоры на Cortex A15 ядрах могут иметь ниже производительность, могут иметь выше производительность, могут иметь разное кол-во ядер.
Cortex A15 это микроархитектура, точно так же, как и Haswell и другие. Вы здесь сравнили результаты конкретного процессора и микроархитектуру ядра, что, мягко говоря, не корректно. Процессоры на Cortex A15 ядрах могут иметь ниже производительность, могут иметь выше производительность, могут иметь разное кол-во ядер.
Вы, наверное, только вывод читали? Я же в начале уточнил:
Процессор Freescale i.MX6Q основан на ядре Cortex-A9, т.е. не самый свежий, но Calxeda основана на том же ядре, да и ничего другого я попросту не нашёл. Кроме того у меня был обширный опыт ковыряния с предыдущей серией i.MX51 на китайских планшетах. Изучив работу Cortex-A9 и приняв на веру то, что A15 на той же частоте будет на 40% быстрее, можно грубо экстраполировать результаты на гипотетическую систему с Cortex-A15 на большей частоте.
SamOwaR, попробуй CAAM с новыми патчами git.freescale.com/git/cgit.cgi/imx/linux-2.6-imx.git/commit/?h=imx_3.0.35_4.0.0&id=b30237c79003223c6e8035d5be183cd4f0b469f9 git.freescale.com/git/cgit.cgi/imx/linux-2.6-imx.git/commit/?h=imx_3.0.35_4.0.0&id=6068d7a77b2101c172fc2f003f90b1febbf99505, пожалуйста.
Спасибо, обязательно попробую, как только дойдут руки. Кстати, я использую ядра с репозитория Boundary Devices — они собираются без «танцев с бубном». Я посмотрел — эти коммиты уже есть.
Но, даже в софте, i.MX6Q отлично справляется со 100-мегабитным потоком. Т.е. аппаратное шифрование даст разве что меньшую загрузку процессора и как следствие — тепловыделения. Счётчики электричества пока ещё не ставят на каждый сервер, но блоки питания учитывают — мне недавно пришло письмо «счастья» от одного известного украинского хостера со словами «электричество подорожало, теперь ваш колокейшен стоит в полтора раза дороже»…
Но, даже в софте, i.MX6Q отлично справляется со 100-мегабитным потоком. Т.е. аппаратное шифрование даст разве что меньшую загрузку процессора и как следствие — тепловыделения. Счётчики электричества пока ещё не ставят на каждый сервер, но блоки питания учитывают — мне недавно пришло письмо «счастья» от одного известного украинского хостера со словами «электричество подорожало, теперь ваш колокейшен стоит в полтора раза дороже»…
Т.е. аппаратное шифрование даст разве что меньшую загрузку процессора и как следствие — тепловыделения. Счётчики электричества пока ещё не ставят на каждый серверА возможная разница в [не]обходимости активного охлаждения?
Дошли немного руки. Результаты странные — в OpenSSL разницы аппаратной версии с софтовой уже нет, что, в принципе, тоже хорошо — раньше аппаратная была сильно хуже. А вот в gnutls преимущества аппаратного шифрования проявились! На некоторых алгоритмах стало гораздо быстрее, правда тест с вероятностью 99% заканчивался kernel panic-ом. Раз тридцать перегружался, чтобы выполнить пару тестов.
Как видно, SHA1 быстрее в 1.38 раза, SHA256 в 3.34 раза, 3DES-CBC в 9.98 (!!!) и наш любимый AES-128-CBC в 3.17 раз.
С одной стороны — аппаратно всё равно медленней, чем в софте на 4-х ядрах, но с другой стороны — в реальных полевых условиях максимальная производительность не требуется, и мне за глаза хватит скорости 10МБ/с. Таким образом аппаратное шифрование позволит меньше грузить процессорные ядра, и как справедливо заметил Chamie, это улучшит энергетические, а значит и финансовые показатели.
sabrelite ~ # time gnutls-cli --benchmark-soft-ciphers
Checking ciphers, payload size: 16384
SALSA20-256-SHA1 25.28 MB/sec
AES-128-CBC-SHA1 13.39 MB/sec
AES-128-CBC-SHA256 10.19 MB/sec
AES-128-GCM 12.66 MB/sec
SHA1 63.44 MB/sec
SHA256 25.26 MB/sec
SHA512 7.94 MB/sec
3DES-CBC 5.32 MB/sec
AES-128-CBC 16.86 MB/sec
ARCFOUR-128 39.94 MB/sec
SALSA20-256 41.55 MB/sec
real 0m55.148s
user 0m54.970s
sys 0m0.020s
sabrelite ~ # time gnutls-cli --benchmark-ciphers
Checking ciphers, payload size: 16384
SALSA20-256-SHA1 24.95 MB/sec
AES-128-CBC-SHA1 13.22 MB/sec
AES-128-CBC-SHA256 7.32 MB/sec
AES-128-GCM 12.51 MB/sec
SHA1 87.39 MB/sec
SHA256 84.36 MB/sec
SHA512 7.81 MB/sec
3DES-CBC 53.12 MB/sec
AES-128-CBC 51.86 MB/sec
ARCFOUR-128 39.41 MB/sec
SALSA20-256 41.53 MB/sec
real 0m55.227s
user 0m29.010s
sys 0m3.850s
Как видно, SHA1 быстрее в 1.38 раза, SHA256 в 3.34 раза, 3DES-CBC в 9.98 (!!!) и наш любимый AES-128-CBC в 3.17 раз.
С одной стороны — аппаратно всё равно медленней, чем в софте на 4-х ядрах, но с другой стороны — в реальных полевых условиях максимальная производительность не требуется, и мне за глаза хватит скорости 10МБ/с. Таким образом аппаратное шифрование позволит меньше грузить процессорные ядра, и как справедливо заметил Chamie, это улучшит энергетические, а значит и финансовые показатели.
Очень странно, что OMAP5432-EVM не упомянут в статье. Тот самый Cortex-A15 и SATA разъем есть ;-)
Не странно — я заказал плату и начал делать тесты в конце апреля, а OMAP, судя по пресс-релизам, запустили только в 10-х числах мая. Новьё!
Супер! Действительно не учёл, а ведь была тут даже новость.
Но,
1 — цена этого модуля $999 — как то слишком много, только для того, чтобы удовлетворить свой нездоровый интерес и написать об этом на Хабре.
2 — к модулю нужно ещё шасси, наверное не в нагрузку даётся?
3 — за эти деньги можно взять 15 атомных плат.
Но в целом — платформа крайне интересная, особенно в свете того, что там не Cortex-Axx, а своё самопильное ARM v6/v7 — совместимое ядро.
Но,
1 — цена этого модуля $999 — как то слишком много, только для того, чтобы удовлетворить свой нездоровый интерес и написать об этом на Хабре.
2 — к модулю нужно ещё шасси, наверное не в нагрузку даётся?
3 — за эти деньги можно взять 15 атомных плат.
Но в целом — платформа крайне интересная, особенно в свете того, что там не Cortex-Axx, а своё самопильное ARM v6/v7 — совместимое ядро.
Девкит за $1,299. Нет, спасибо :)
Насчёт не сильно нагруженных задач — да. В моих тестах i.MX6 на 396Mhz легко забивал 100-мегабитный канал статикой с RC4 — т.е. тех задач, где я сейчас использую Atom-ы.
Очень заманчиво выглядит архитектура PowerQUICC от того же Freescale — джентльменский набор интерфейсов, и даже больше.
Ещё нужно покопать в сторону MIPS-ов. Всякие домашние NAS-ы, там тоже есть SATA и Ethernet.
Насчёт не сильно нагруженных задач — да. В моих тестах i.MX6 на 396Mhz легко забивал 100-мегабитный канал статикой с RC4 — т.е. тех задач, где я сейчас использую Atom-ы.
Очень заманчиво выглядит архитектура PowerQUICC от того же Freescale — джентльменский набор интерфейсов, и даже больше.
Ещё нужно покопать в сторону MIPS-ов. Всякие домашние NAS-ы, там тоже есть SATA и Ethernet.
Боги услышали мои молитвы! Вот ОН — идеальный сервер для раздачи статики.
Utiputilite от CompuLab.
Freescale i.MX6Q, два гигабитных ethernet, mSATA, маленький, аккуратный!


Uti
Freescale i.MX6Q, два гигабитных ethernet, mSATA, маленький, аккуратный!


Ну если и этого мало, то есть вот такой набор девайсов.
Отличные платы. На их базе можно собирать полноценные сервера. Жаль только цен ещё не видно.
И кстати интересно, вот этот самый Freescale i.MX6Q, появился относительно давно, а разные интересные устройства только начинают появляться. Распробовали и вошли во вкус?
И кстати интересно, вот этот самый Freescale i.MX6Q, появился относительно давно, а разные интересные устройства только начинают появляться. Распробовали и вошли во вкус?
Документацию ( www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX6Q&fpsp=1&tab=Documentation_Tab ) только дочитали ;-)
Смеялся до слёз… Кто не открывал тот талмуд на 5287 страниц, тому не понять :)
На самом деле я не думаю, что многие возьмутся проектировать систему с нуля. Freescale даёт несколько базовых шаблонов Sabre-(lite|sd|hdmidongle) на основе которых и допиливаются нужные дизайны.
На самом деле я не думаю, что многие возьмутся проектировать систему с нуля. Freescale даёт несколько базовых шаблонов Sabre-(lite|sd|hdmidongle) на основе которых и допиливаются нужные дизайны.
Почитал и полезную статью и интересные каменты. Решил что будет очень правильным добавить инфу про cubieboard 1/2/3 и особо интересную анонсированную восьмую версию.
cubieboard.org/2014/05/04/cubietech-will-promote-a80-high-performance-mini-pc
Коротко это арм платформа на процессе Allwiner A80 (8 cores, 2Ghz), 2Gb RAM DDR3, 1SATA-300, mSD 32Gb, audio tosslink/analog, VGA, HDMI 1920*1200, wifi/blutooth. Отдельные платы совместимые с основной — плата для поддержки 3,5 САТА винтов, звуковуха претендуящая на звание профессиональной, насколько понял поддерживает ардуину именно через i/o пины а не только через USB.
Радует наличие уже запиленой 14.04 убунты, кроме того есть Arch linux, Lubuntu и еще с пяток различных форков извесных систем типа Fedora, Debian.
В общем я пока только осваиваю 3 версию борды осваиваю и знаю не все.
cubieboard.org/2014/05/04/cubietech-will-promote-a80-high-performance-mini-pc
Коротко это арм платформа на процессе Allwiner A80 (8 cores, 2Ghz), 2Gb RAM DDR3, 1SATA-300, mSD 32Gb, audio tosslink/analog, VGA, HDMI 1920*1200, wifi/blutooth. Отдельные платы совместимые с основной — плата для поддержки 3,5 САТА винтов, звуковуха претендуящая на звание профессиональной, насколько понял поддерживает ардуину именно через i/o пины а не только через USB.
Радует наличие уже запиленой 14.04 убунты, кроме того есть Arch linux, Lubuntu и еще с пяток различных форков извесных систем типа Fedora, Debian.
В общем я пока только осваиваю 3 версию борды осваиваю и знаю не все.
Восемь ядер одновременно работать не могут, но самое главное на А80 нет SATA, во всяком случае их нет на Cubieboard 8 и это один из самых главных недостатков для построения «сервероподобных» систем.
Here are Cubieboard 8 specifications derived from the pictures (incomplete because we don’t have pictures of the back of the board)
Посколько плата еще не вышла а по вашей ссылке только домыслы то думаю о поддержке sata говорить преждевременно. А восемь ядер одновременно работать не будут да — никто и не обещал, но четыре ядра прогрессивной архитектуры всяко лучше чем cubietruck на двух ядрах…
Посколько плата еще не вышла а по вашей ссылке только домыслы то думаю о поддержке sata говорить преждевременно. А восемь ядер одновременно работать не будут да — никто и не обещал, но четыре ядра прогрессивной архитектуры всяко лучше чем cubietruck на двух ядрах…
Официально в А80 нет SATA, так что в лучшем случае это будет какой-нибудь преобразователь USB в SATA и скорее всего такое решение будет предложено на плате от Olimex (если такая плата вообще появится в свет).
Цена на оптимус печаль печаль. Видимо только как решение для разработчиков.
Куби8 вроде другим нежели оптимус будут. Семпл совсем другой был.
В любом случае я жду настоящуу куби по цене до двух сотен баксов иначе нет смысла в куби а лучше взять планшет с экраном на х'' в подарок))
Ну и если сата реализуют на борту через конвертер на усб третьей версии то меня вполне устроит. Третья версия универсального последовательного насколько я помню по скорости на уровне sata-1.
Куби8 вроде другим нежели оптимус будут. Семпл совсем другой был.
В любом случае я жду настоящуу куби по цене до двух сотен баксов иначе нет смысла в куби а лучше взять планшет с экраном на х'' в подарок))
Ну и если сата реализуют на борту через конвертер на усб третьей версии то меня вполне устроит. Третья версия универсального последовательного насколько я помню по скорости на уровне sata-1.
Sign up to leave a comment.
ARM-рестлинг