Свежие комментарии

Title Comment
Кстати я соврал — aesni

Кстати я соврал — aesni поддерживает SHA: SHA1,SHA256
Но до aesni можно достучаться только через Open Crypto Framework, а не через прямой доступ. А ZFS так не делает. Всё сложно, блин. С криптой в ядре полный бардак, я уже второй раз в это влетаю.

Смысл, почти очевидно, есть

Смысл, почти очевидно, есть (потому что 600MB/sec - это в 6 ядер, а на SHA-ext - 300 на одном).
Правда fletcher4 меня вполне устраивает.

Чтобы два раза не вставать: AES (ssh) между новым и старым ящиком - ~300Mb/sec т.е. (минимум) раза в три медленнее чем между двумя i3.

Осваиваю -o NoneSwitch у openssh-portable.

Ну, я бы начал именно с этого

Ну, я бы начал именно с этого что бы убедиться, что смысл есть.

Куда копировать я показал :-)

Хотя стоп. Нельзя ПРОСТО скопировать. Будут проблемы с FPU context который в общем случае при переключении userland-kernel не сохраняется и не восстанавливается, потому что в общем случае в ядре FPU нет.

Надо смотреть как именно это сделано в aesni.

Ну насколько я понимаю,

Ну насколько я понимаю, "лично для себя" можно SHA256* скопипастить из OpenSLL под конкретный процессор и будет ЩАСТЬЕ.

>> В общем, я ставлю на то,

>> В общем, я ставлю на то, что никто никогда не делал оптимизированного SHA для ZFS.
Поаккуратнее с кванторами то: https://github.com/kernelOfTruth/zfs/commit/089ad082f8d500e948239397746c...

Другой вопрос, что это ZOL, а я бы хотел бы понятно хде.

Читаю исходники. Там идёт

Читаю исходники. Там идёт редирект в общеядерную реализацию

#include
#include

/sys/crypto/sha2

Там нету никаких спец-реализаций. В принципе, я могу попробовать сделать, даже интересно, но тестировать не на чем. И работать будет только на 13+ и после релиза бэкпорт в 12 но не в 11.

И более того, я ставлю на то,

И более того, я ставлю на то, что сделать это будет непросто, потому что в ZFS нет инфраструктуры ветвлений по cpuid.

Хотя теперь у нас есть ifunc'и (но не в 11!) и можно сделать на них — это механизм ровно для таких дел с поддержкой со стороны компилятора и линкера.

Ты обнаружил не OpenSSL, есго

Ты обнаружил не OpenSSL, есго в ядре нет, а похожее на него API. Когда это API апдейтили и апдйтили ли вообще — бог весть. Я ставлю на то, что никто не делал в ядре имплементации на новых инструкциях. В ядре вообще не используют SSE и выше НИГДЕ кроме ОТДЕЛЬНОГО МОДУЛЯ aesni,
aesni не умеет SHA и экспортирует себя в Open Crypto Framework, которым ZFS не пользуется потому что переносимое.

В общем, я ставлю на то, что никто никогда не делал оптимизированного SHA для ZFS.

кстати, вот ещё из свежего

"ODROID-H2 Gemini Lake single-board PC launches for $111
It’s priced at $111 and features a 10 watt, quad-core Intel Celeron J4105 processor and a 4.3″ x 4.3″ x 1.7″ with a bunch of ports, two slots for DDR4 memory, and support for several types of storage including a PCIe NVMe solid state drive." - https://liliputing.com/2018/11/odroid-h2-gemini-lake-single-board-pc-lau...

Вот мой:

Вот мой:
9 Power_On_Hours_and_Msec 0x0032 044 044 000 Old_age Always - 49725h+59m+50.030s

Если он сдохнет вот прям щас - я не обижусь, немолод он уже.

Vertex2 славны этим, с -3

Vertex2 славны этим, с -3 вроде бы не так типично?

А у меня неделю назад Vertex

А у меня неделю назад Vertex 3 Max IOPS молча потерял всё содержимое. С таблицей разделов и вообще всем. Попытки что-то найти какими-то стандартными средствами успеха не возымели

Я думаю что разница не в make

Я думаю что разница не в make, а в media. Между SSD и ramdrive значимой разницы я не вижу:  https://blog.lexa.ru/2018/11/21/o_sravnenii_processorov_metodom_perekompilyacii_freebsd.html

Вот что кажет iostat на двух md-шках (tmp, obj):

                        extended device statistics
device       r/s     w/s     kr/s     kw/s  ms/r  ms/w  ms/o  ms/t qlen  %b
md0            0      80      0.0      0.0     0     0     0     0    0   0
md1            0      83      0.0      0.0     0     0     0     0    0   0

(это чуть заниженные цифры т.к. я не сразу запустил make, можно процентов 5 добавить)

Для md и для SSD - это смешные iopsы, а вот на железномагнитных дисках - разница с md может быть большой

(почему-то ни iostat, ни gstat ничего не показывают в колонке read, возможно все что на md - автоматически оказывается в кэше)

Возможно, мои данные и

Возможно, мои данные и устарели - когда я мерял, в качестве make у нас использовался fmake, а нынче bmake.

Впрочем, текущий боевой ящик

Впрочем, текущий боевой ящик (i3) все едино перегружать скоро, экономить L2ARC смысла нет.
Уменьшил там ARC, перебутился, вот компилирую на md (сделал два отдельных, один под TMPDIR, один под obj) - часа через полтора будет результат.

Пока (но только началось) активного IO на TMPDIR не вижу, если честно.

Ну и если видели предыдущий

Ну и если видели предыдущий комментарий (в другом треде): от переноса всего с USB-флешки (теоретически - медленной) на SSD/SATA - ничего не изменилось.

Я делаю вывод, что IO не так и важен.

(но, конечно, когда в новом ящике будет вся запланированная память, а именно 32G, сделаю и на md, чисто из интересу).

"существенно ненулевой" - это

"существенно ненулевой" - это 5% от user.

Эта точность меня устраивает :)

И всё-таки, чтобы сравнивать

И всё-таки, чтобы сравнивать именно корость CPU, надо выносить на RAM-диск и obj, и TMPDIR, потому как параллельный make очень сильно насилует TMPDIR (если пустая, то /tmp) - это хорошо видно в gstat, если положить TMPDIR на совсем отдельный md-диск. Потому как существенно ненулевой system time это в том числе disk i/o.

На 5000 они "тоже очень тихие

На 5000 они "тоже очень тихие".

Померять мне нечем.

Эти штуки заведутся только

Эти штуки заведутся только там, где есть PCIe bifurcation, x99 матери.
А ещё есть вот примерно такие
http://amfeltec.com/squid-pci-express-carrier-boards-for-m-2-ssd-modules/
http://www.aplicata.com/quattro-400/
но там цена очень негуманная, потому что PCIe switch на борту. Затейлив мир PCI express.

А они бесшумные когда на 5к

А они бесшумные когда на 5к крутятся, или когда приторможены?

Наверняка AES-NI они ляпнули

Наверняка AES-NI они ляпнули внутрь FPU прямо IP-блоком от Core. Я уверен, что это такой кубик Lego, и он во всех процессорах один. Но он — не важен. Важна вот эта схема:

https://en.wikichip.org/w/images/thumb/b/ba/bonnell_block_diagram.svg/10...

Нет, не кажется. Потому что

Нет, не кажется. Потому что определяющим является не AES-NI а архитектура конвейра и количество и возможности ALU.

Ну да, так как-то и выходит,

Ну да, так как-то и выходит, 2 ядра (*HT) * 3.3GHz равны (ну прям очень точно) этим восьми ядрам на 2.2

Что меня, в общем, должно устраивать везде, кроме (возможно) AES-NI, но это место я еще пощупаю на днях.

Слушай, ну вот вся эта

Слушай, ну вот вся эта генеалогия - она не кажется маленько того, притянутой за уши?
Ну вот к примеру AES-NI (как пример)- думаешь заново изобретали в параллельной линейке, или взяли таки готовое?

Я абсолютно уверен, что там у них есть кросс-опыление и как тогда считать, от какого папы больше транзисторов что ли?

И только по архитектуре и

И только по архитектуре и количеству ALU чистый IPC будет меньше чем у любого самого захудалого «честного» Core-i3/5/7.

И это я не вспомнил про размер кэшей, про меньший размер регистрового файла, про менее эффективный бранч-предиктор…

И, как выясняется, Atom — не такое и маркетинговое слово. Вот Pentium и Celeron — да, полный бардак, там есть и Atom'ные ядра и Core'вые. В зависимости от модели. А с Atom всё консистентно.

Т.е. линейка такая:

Т.е. линейка такая:

Bonnel — новая, с нуля, архитектура, 2008 год, подозрительно похожа на P5 + FPU, 2xINT ALU + 2xFPU ALU (и они не равноправны а специализирвоаны, так что чистой 4x суперскалярности не получить и даже 2x не получить). Платформы/ядра назывались Diamondville/Silverthorne/Lincroft. Чипы — старые Z/N атомы с трёхзначными нормерами.

Saltwell — шринкнули Bonnel и добавили перефирию на тот же die. Архитектура не поменялась. Платформы/ядра Penwell/Cedarview/Cloverview/Centerton/Briarwood/Berryville, чипов я не нашёл.

Silvermont — что-то подточили в Saltwell, уменьшили конверй на 2 стадии, ALU столько же. Это, в частности, платформа SoFIA, чипы — x3-C3xxx. [Вот тут твой 2wt.]

Airmont — чистый шринк Slivermont, Braswell/Cherry Trail, Atom x5-E8xxxx, x5-Z8xxxx, x7-Z8xxx, Pentium/Celeron N31xx/J31xxx.

Goldmont — добавили третий декодер (3 issue), подточили latency частых инструкций, шринк. Apollo Lake/Denverton, Atom C3xxx [вот тут твой 25wt] и попроще Celeron/Pentium N/J33xx, N/J34xx и N/J42xx. И это 2016 год.

Уф. Вот такое наследие. Как видно, все Atom'ы на уровне ядра — одна и та же линейка, а вот сколько ядер шлёрнуть и чем обвязать — очень сильно отличается.

А уже есть Goldmont Plus, но там только Celeron/Pentium.

Ну и вот тот, что на 25 —

Ну и вот тот, что на 25 — Denverton — это архитектура Goldmont — (а это так же и ядра Apollo Lake, если не для серверов) — и это наследник Airmont, который отличался от Silvermont только GPU, который наследник Bonnel'а, в общем, там чётка линия прослеживается и только Bonnel был новым, а это было в 2008 году (и только про него что-то известно). И глядя на схему Bonnel'а я вижу очень простой конвейр и всего лишь 2x суперскалярность. Ну да, похож на P5, только FPU отдельно, а интеджер-часть — очень похожа.

У того что 2wt — ядра Silvermont, формально старее на два поколения (а реально на одно, Airmont который был между ними имел ту же микроахитектуру), но архитектурно те же. Обвязка совсем другая, а ядра на архитектуре Silvermont.

Так что по вычилительной мощности их корректно сравнивать.

Очень Intel всё запутал. Есть отдельно архитектура (один codename), отдельно ядро на этой архитектуре (другой codename) и отдельно название конкретного процессора с такими ядрами и какой-то обвязкой, зависящей от назначения.

Но в любом случае у Atom'ов не core-ядра.

Не, Атом - маркетинговое

Не, Атом - маркетинговое слово теперь.

Потому что есть атомы для ноутбуков, атомы для серверов и атомы для iot.

Вот атом на 2wt: https://ark.intel.com/ru/products/97133/Intel-Atom-x3-C3265RK-Processor-...
А вот на 25: https://ark.intel.com/ru/products/97940/Intel-Atom-Processor-C3950-16M-C...

Я перезагружался, свои 20+Gb

Я перезагружался, свои 20+Gb оно не так и скоро наберет, если торрентов не качать.

Pages

Subscribe to comments_recent_new