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

Title Comment
Обе - X540-T2, соединены

Обе - X540-T2, соединены напрямую кабелем (пока одним). На одной стороне CentOS VM под ESXi, порт проброшен в VM (pass-through). На другой стороне Win10. Обе карты в PCIe 3.0 x8 слотах (2.0 есть только x4).

>> geom stripe (freebsd)

>> geom stripe (freebsd) транслирует TRIM (delete) дальше на провайдеров?

Транслирует и FLUSH тоже.

Кстати, в zfs по умолчанию на основной пул (обычно hdd) шлются DELETE (TRIM). Вроде как не критично, но смотрел не на сильно заполненном пуле. Возможно на сильно заполненном - это как-то будет лишним :-). Поэтому vfs.zfs.trim.enabled=0. Зачем слать лишние команды :-).

А, ну то есть по разнице.

А, ну то есть по разнице. "все что не с дисков - то из ARC", разумно.

Заодно вот спрошу, вдруг вы знаете

geom stripe (freebsd) транслирует TRIM (delete) дальше на провайдеров?

>> А как вы "скорость ARC"

>> А как вы "скорость ARC" оцениваете?

Оценка была не скорости ARC, а объёма прочитанных данных. Объём файла 32768MB. Объём метаданных на данном датасете приблизительно 14MB. Recordsize на данном датасете 64kB. Размер в 64kB был выбран (насколько я правильно понял из исходников) исходя из размера блока в 64kB на L2ARC. Как я понял меньшие recordsize или группируются или пишутся с потерей пространства до 64kB. Объём прочитанных/записанных данных можно брать из iostat, но я использую свой geom c выдачей статистики по всем операциям (READ, WRITE, DELETE, FLUSH). Кстати, при добавлении L2ARC ssd (точнее выделенное пространство) полностью очищается (TRIM). Также он очищается при экспорте/импорте и я предполагаю при загрузке системы. Здесь разработчики молодцы - сделали как положено :-). Надеюсь и при замещении блоков в L2ARC тоже будут использовать TRIM. На счёт дополнительного объёма для обслуживания L2ARC в курсе, но не 12GB же :-). Вообще интересно наблюдать как в top менются MFU и MRU :-).

А как вы "скорость ARC"

А как вы "скорость ARC" оцениваете? по zfs-mon и hit ratio?

По дискам то понятно, есть iostat, все видно.

В ARC, помимо прочего, находится индекс от L2ARC. 200 (по другим данным - 400) байт на record.
Если recordsize стандартный (128k), то понятно что индекс получается небольшой, 200/400Mb.

>> Ну типа "если диски - не

>> Ну типа "если диски - не самое медленное место /а сеть - медленнее и читают не на полной скорости/ - давайте с них тоже почитаем"

Интересное предложение/предположение :-).

Сегодня заново прочитал вчерашние тестовые файлы. Все файлы размером 32GB. Первые два были записаны в пул до установки L2ARC и по ним производилось только чтение (многократное :-)). Третий файл был записан в пул после установки L2ARC и во время записи был в полном объёме помещен в L2ARC. Скорости и откуда читались данные:
1 - 169MB/s (43% hdd, 57% ssd, 0% ARC);
2 - 344MB/s (3% hdd, 97% ssd, 0% ARC);
3 - 420MB/s (0% hdd, 99,8% ssd, 0,2% ARC).
Самое интересное - первый файл читался намного чаще других :-). Ещё один интересный вывод - при чтении файла больше половины (57%) из ssd скорость чтения возросла незначительно (всего на 4%). L2ARC не заполнен (размер ssd - 120GB), поэтому вытеснений из него не было. Также возник вопрос, а что находится в ARC(12GB) :-) ? Последие 40-50 раз читались только эти три файла.

У меня обе карты "как из

У меня обе карты "как из китая". В сторону NAS было сразу быстро (с поправкой на буферы и т.е.), в сторону винды медленно. После отключения IM стало быстро и в сторону винды.

Непонятная история.

Непонятная история.

У меня же на двух портах 10G рабочей станции - два FreeBSD-ящика.

Вот на том линке, который "быстрый NAS" - убираю AIM и "начинает входить быстро", 1+GB/sec пока влезает в кэш на приемной стороне.

На другом - убираю AIM и становится медленнее.

Разница в том, что на "быстром NAS" стоит карточка с прошивкой "как из китая приехало" (я даже версию не смотрел), а остальные две карты - перешиты на последнюю фирмварь, без этого на них ругалось про checksum error.

Загадочная вещь этот ваш 10G

О блин!

О блин!

Да, с SSD (на самом деле из кэша) на страйп из SSD файл стал входить прямо вот душа радуется как.

Если я правильно помню, то

Если я правильно помню, то Intel X540 (как и у меня)

а что за сетевые? я сейчас

а что за сетевые? я сейчас как раз тестирую, latency у всех отличается.

Я знал, что винда виновата...

Я знал, что винда виновата... отключил на интерфейсе в винде "Interrupt Moderation Rate" (--> Off), сразу чтение зашкалило за гигабайт с рамдиска.

900Mb/s - это 7гигабит с

900Mb/s - это 7гигабит с хвостиком.
Но мне хватит, да.

Мне и 600 хватит, если с такой скоростью (т.е. малой латентностью) получится читать мелкие файлы (ну там мегабайта по 4).

Паритет?

Паритет?
10Gb - сеть и ~1Gb SSD-страйп?
;-)

тогда уж 600ТГц )

тогда уж 600ТГц )

Страйп есть (даже из трех, но

Страйп есть (даже из трех, но третий сильно медленнее), выдает 920Mb/sec
Это быстрее дисков даже по bw, не говоря про latency - потому и хочется его использовать.

а ТЗ простое - хочется счастья, даром, чтобы никто не ушел

Так ничем же (если мы PCIe

Так ничем же (если мы PCIe-вариант рассматриваем).

И в этом одновременно и беда, lanes будет дефицит.

Я не очень понимаю, в чём проблема.

С одной стороны, стенд лепим из "верёвок" и палок.
С другой, одиночный SSD не прокачивает имеющийся сетевой линк (страйпа 2*SSD нет ведь?).
И с третьей, ... Кажется владелец блога незаметно для самого себя вляпался в классическую западню скоростей:
тормозит сеть (1Gb/s, если кто забыл) - меняем сетевое железо;
тормозит дисковая подсистема, меняем и оптимизируем контроллеры и ФС (и её опции);
снова "узкое горлышко" - сеть -- обновляем подсистему сети;
ЁКЛМН! снова "диски тормозят"! ...
...
... особенно учитывая "апгрэйд почти даром". ;-)

Может, уже имеет смысл сформулировать ТЗ, ... или наплевать на затраты?

Моё дилетантское ИМХО.

>> как поместить для проверки

>> как поместить для проверки весь файл в L2ARC используя только чтение?

Вот у меня возникло вчера подозрение, что это какой-то более сложный процесс, чем просто ARC(-cache).
Ну типа "если диски - не самое медленное место /а сеть - медленнее и читают не на полной скорости/ - давайте с них тоже почитаем"

Боюсь, тут гамма-лазер нужен

Боюсь, тут гамма-лазер нужен будет

Надеюсь дожить :)

Надеюсь дожить :)

10G WiFi с добитием на 10км

Вы серьёзно??!
Это ж какие частоты нужны!!... И какая ширина канала!
Или Вы в далёком будущем живёте? ;-)

C flashcache разбирался

C flashcache разбирался довольно давно, но помнится мне что ассоциативность была по умолчанию 512.
(https://github.com/facebookarchive/flashcache/blob/master/src/flashcache.h).
Возможно имелся в ввиду gcache, но там по-моему брались 3 бита (всё равно получается ассоциативность 8).
Если мне не изменяет память, алгоритм замещения в flashcache по умолчанию fifo. lru по-моему нужно было включать. Но речь была совершенно не об этом :-).
Вопрос: как поместить для проверки весь файл в L2ARC используя только чтение?

а почему именно NVMe? чем оно

а почему именно NVMe? чем оно от pci-e отличается? )

Только не MRU а LFU, конечно.

Только не MRU а LFU, конечно.

Алгоритм кэширования по

Алгоритм кэширования по чтению совершенно не похож на применяемые в flashcache, bcache, dm-cache. Он не предсказуем, но похоже имеет свои плюсы :-).
Он называется ARC (Adaptive Cache Replacement), собственно, и хорошо описан в оригинальной статье. Это удачный гибрид LRU и MRU, самобаланчирующий сколько процентов места отдать LRU, а сколько MRU.

Не знаю что с bcache и dm-cache‚ но flashcache — всего лишь LRU, причём, что важно, не просто LRU, а всего 4-way associative (каждый блок может попасть всего в 4 места в кэше, а не куда угодно), а ARC в этих терминах полностью ассоциативный (как и кэши в памяти).

Вроде разобрался. Cкорость

Вроде разобрался. Cкорость последовательного чтения файла размером 32GB:
- с hdd пула(зеркало из двух дисков) - 162MB/s;
- c ssd(L2ARC) - 399MB/s.
Файл полностью(99,999%) читался с ssd. При чтении из ARC и L2ARC этого же файла скорость составила 560MB/s. Максимальная скорость чтения ssd (dd if=/dev/ada1 of=/dev/zero bs=1m count=32k) - 410MB/s. Так как при чтении с L2ARC читались данные и метаданные (около 16MB), то потеря 3% скорости ssd, учитывая все перемещения данных, это очень достойный результат. Не удалось пока определить скорость при чтении из L2ARC и одновременной записи в L2ARC. Также пока не удалось проверить какая скорость перезаписи блоков в L2ARC. Если будет время завтра проверю. Алгоритм кэширования по чтению совершенно не похож на применяемые в flashcache, bcache, dm-cache. Он не предсказуем, но похоже имеет свои плюсы :-).
При чтении файла закэшированного в L2ARC по самбе (1 гигабит) чтение производилось только с ssd.

Ну в общем, да, как-то так.

Ну в общем, да, как-то так.

Встраивать в лампочки

Встраивать в лампочки

Сеть доставлять туда по проводам 220в

Отличная ж штука!

Т.е. надо понимать, что эти

Т.е. надо понимать, что эти технологии вплотную приблизились к пределу Шеннона. И там каждый dBi SNR'а важен. Эфир общий, с SNR плохо, уход в друге частоты приводит к проблемам с экранированием. Потому и говорю — 60GHz, line of sight :)

Pages

Subscribe to comments_recent_new