i386, amd64, crypto

Есть у меня очень удобный Eee PC 1015B. Маленький, живет 6 часов от батарейки, потерять не жалко… Ну точнее как не жалко, сама железка стоила 10 тысяч несколько лет назад или даже дешевле, а сегодня таких почему-то больше не делают, так что, если потерять, то не понятно будет чем заменить. Это с одной стороны. С другой стороны, там есть некоторое количество информации, приватность которой меня волнует. Понятно, что надо всё шифровать и т.п.

В тот момент, когда я эту железку купил, шифрование всего диска требовало каких-то телодвижений, а мне было то ли некогда, то ли лень, то ли всё сразу, поэтому я ограничился тем, что все, что очень надо, шифровал в юзерспейсе. Некоторое время назад, инсталлируя очередной ноутбук, использовал cryptsetup прямо из инсталлятора и обнаружил, что он вообще ничего не требует и нормально работает. Так что подумал о том, чтобы всё-таки зашифровать содержимое EeePC.

Решил не париться, проинсталлировать его с нуля, заодно перейти с i386 на amd64, который теперь уже совсем-совсем дозрел. Но так как в нетбуке стоит слабенький Brazos, были некоторые опасения, не станет ли он совсем тормозить из-за дополнительного шифрования. Поэтому померил его производительность старым добрым бенчмарком “Собери ядро 3.16”.

Тестируемая система:
ASUS EeePC 1015B
AMD Brazos C-50 (1ГГц, 2 ядра (на самом деле что-то вроде HyperThreading), 64bit)
RAM 4GB
SSD 256GB (какой-то A-Data)

Результаты:
i386 без шифрования

$ time make -j2 modules
real 241m20.022s
user 443m10.388s
sys 21m6.952s

i386 (chroot на amd64 хосте) с шифрованием

$ time make -j2 modules
real 244m18.927s
user 445m4.748s
sys 21m45.132s

Как видно, включение шифрования почти не дало падения производительности на задачах, где надо не очень интенсивно читать/писать много маленьких файлов.

После этого я решил заодно проверить, насколько сейчас оптимизирована компиляция под amd64 и собрал то же ядро с тем же конфигом, но на amd64 хосте. Результат получился не совсем ожиданный (для меня). Под amd64 всё собралось заметно быстрее:

amd64 с шифрованием

$ time make -j2 modules
real 222m59.369s
user 381m12.240s
sys 29m23.844s

Выигрыш – 10%.

График:
benchmark

xneur под amd64

Обновил свою систему сборки, так что она теперь умеет собирать не только под i386, но и при помощи qemubuilder под прочие архитектуры. В частности под amd64. В связи с чем наконец-то собрал xneur под amd64, о чем так долго твердили большевики просили убунту-полозователи. Ну и в свой репозиторий всё это выложил, добавив в него amd64 в список архитектур.

Если кому-то интересны подробности и/или обновленный скрипт сборки – пишите, расскажу.