The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

В OpenBSD портирован драйвер ath11k для беспроводных чипов Qualcomm, opennews (??), 30-Дек-23, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


41. "В OpenBSD портирован драйвер ath11k для беспроводных чипов Q..."  +/
Сообщение от Kuromi (ok), 31-Дек-23, 17:46 
По идее для TRIM нужен ioctl для отправки сообщения накопителю и поддержка со стороны ФС. В Линуксе fstrim устроен так, что он (например для ext*) посылает накопителю на очистку все "свободное" место раздела\файловой системы (хотя между перезагрузками там все чуть сложнее).
Иные ФС работают иначе, BTRFS и F2FS как известно в фоне мониторят удаления файлов, собирают "кандидатов" на очистку и делают TRIM вот именно удаленного.

Сложно ли это? Гуглеж показывает что попытки добавить TRIM в FFS были, но они столкнулись с большими "performance penalties". Что там конкретно было неясно, но судя по отсылкам к забагованными фирмварям думаю они там устроили continuous TRIM, а это так себе решение даже сейчас (Самсунг до сих пор спотыкается на асинхронном).

Ответить | Правка | Наверх | Cообщить модератору

44. "В OpenBSD портирован драйвер ath11k для беспроводных чипов Q..."  –1 +/
Сообщение от Аноним (-), 31-Дек-23, 18:10 
> Иные ФС работают иначе, BTRFS и F2FS как известно в фоне мониторят
> удаления файлов, собирают "кандидатов" на очистку и делают TRIM вот именно удаленного.

Ну дык, если у ФС есть поддержка trim - она сама и пуляет команды по мере деаллокации места. А кто так не умеет - приходится, вот, костыль сканирующий место пулять мануально, закатывая солнце вручную.

> Сложно ли это? Гуглеж показывает что попытки добавить TRIM в FFS были,
> но они столкнулись с большими "performance penalties".

Видимо инноваторы не умеют в асинхронные операции. Это вам не линукскернел где фоновые воркеры могут дать мастеркласс каким-нить жабаскриптерам и игогошникам на тему дефернутых операций и тредов.

> (Самсунг до сих пор спотыкается на асинхронном).

Надеюсь самсунь кто-нибудь однажды все же засудит, желательно коллективным иском, можно по недавнему закону о ответственности за факапы в ПО. Самсунь стопудово это заслужил.

Ответить | Правка | Наверх | Cообщить модератору

50. "В OpenBSD портирован драйвер ath11k для беспроводных чипов Q..."  +/
Сообщение от Kuromi (ok), 31-Дек-23, 19:44 
Ну дык, если у ФС есть поддержка trim - она сама и пуляет команды по мере деаллокации места. А кто так не умеет - приходится, вот, костыль сканирующий место пулять мануально, закатывая солнце вручную.

Тот же ext4 (там сейчас все равно 1 драйвер на 2\3\4 версию) умеет в TRIM, но он умеет сам только continuous, т.е. дергает накопитель после каждого удаления сразу. Как показала практика накопители не любят вал мелких TRIM запросов. С внедрением асинхронного TRIM проблема должна была порешаться (накопитель делает очистку в фоне, параллельно с обычной работой, многие (не все) так делали и раньше, но это было "неофициально"), но увы и ах, никто кроме Linux continuous официально не поддерживает, асинхронный выходит тоже, поэтому производители не заморачиваются.
Windows делает периодический TRIM и хочешь не хочешь вендоры ориентируются именно на это.

Ответить | Правка | Наверх | Cообщить модератору

52. "В OpenBSD портирован драйвер ath11k для беспроводных чипов Q..."  +/
Сообщение от Аноним (52), 31-Дек-23, 19:57 
> Тот же ext4 (там сейчас все равно 1 драйвер на 2\3\4 версию)
> умеет в TRIM, но он умеет сам только continuous, т.е. дергает
> накопитель после каждого удаления сразу.

Да ладно, даже фришный UFS (который, как известно всем на опеннете - давно окаменел на технологиях из 70х) уже лет 5 как умеет в TRIM consolidation (по умолчанию включено начиная с фри 12).
https://freebsd-current.freebsd.narkive.com/Y9SjVLu4/cft-tri...
Кстати, что мешает опенку позаимствовать фряшную реализацию?

Ответить | Правка | Наверх | Cообщить модератору

55. "В OpenBSD портирован драйвер ath11k для беспроводных чипов Q..."  +/
Сообщение от Kuromi (ok), 31-Дек-23, 20:15 
>> Тот же ext4 (там сейчас все равно 1 драйвер на 2\3\4 версию)
>> умеет в TRIM, но он умеет сам только continuous, т.е. дергает
>> накопитель после каждого удаления сразу.
> Да ладно, даже фришный UFS (который, как известно всем на опеннете -
> давно окаменел на технологиях из 70х) уже лет 5 как умеет
> в TRIM consolidation (по умолчанию включено начиная с фри 12).
> https://freebsd-current.freebsd.narkive.com/Y9SjVLu4/cft-tri...
> Кстати, что мешает опенку позаимствовать фряшную реализацию?

Ну логично что нужно оптимизировать. Более 3000 TRIM комманд на гигабайт удаленного файла!
Правда там в тесте у него вышло почти 1000 на 30мб (и всего 3 запроса после оптимизации, лучше чем было, но как тут получатся обещанные 1-2 запроса на гигабайт не ясно)).

Sponsored by: Netflix - ну логично.

Вот почему они не могут взять - я лично не понимаю.

Ответить | Правка | Наверх | Cообщить модератору

64. "В OpenBSD портирован драйвер ath11k для беспроводных чипов Q..."  +/
Сообщение от Аноним (52), 31-Дек-23, 21:28 
> Ну логично что нужно оптимизировать. Более 3000 TRIM комманд на гигабайт удаленного файла!

Я так понимаю, у режима "continuous" это: "works as intended", т.е. "перегруз" очереди комманд прилагается.

А "периодический" в винде - это точно или может у них там тоже "обобщение" запросов?

> Правда там в тесте у него вышло почти 1000 на 30мб (и всего 3 запроса после оптимизации, лучше чем было, но как тут

Ну хз, может в идеальном случае и т.д. - там примером, как я понимаю, мелкий тестовый сетап (md0 - это memory disk).
Я сейчас как раз сортирую новую музыку, как раз на отдельной ссдшке - удалил 3MB файл, посмотрел в статы, удивился отсутствию изменений, удалил трек из плейлиста в плеере -  получил +1 TRIM.

На 100МБ файл
dd if=/dev/urandom bs=1M count=100 > testfile

kern.cam.ada.1.trim_count: 10956
...
kern.cam.ada.1.trim_count: 10961
т.е. + 5  (и да, спуста пару минут - все еще 10961, т.е. действительно 5 тримов, диск не системный и больше сюда никто не пишет)


dumpfs /cachefs
magic   19540119 (UFS2)
last mounted time       Tue Mar  7 23:34:55 2023
last modified time      Sun Dec 31 19:05:52 2023
...
bsize   32768   shift   15      mask    0xffff8000
fsize   4096    shift   12      mask    0xfffff000
frag    8       shift   3       fsbtodb 3
minfree 8%      optim   time    symlinklen 120
...
flags   soft-updates trim
check hashes    cylinder-groups
fsmnt   /cachefs
volname cachefs swuid   0       providersize    23379968

Ответить | Правка | Наверх | Cообщить модератору

72. "В OpenBSD портирован драйвер ath11k для беспроводных чипов Q..."  +/
Сообщение от Аноним (52), 01-Янв-24, 15:02 
ЗЫ:
оно (TRIM) таки пуляется еще и отдельным тредом, в фоне:

/usr/src/sys/ufs/ffs/ffs_vfsops.c
1159                 if (((ump->um_flags) & UM_CANDELETE) != 0) {
   1160                         ump->um_trim_tq = taskqueue_create("trim", M_WAITOK,
   1161                             taskqueue_thread_enqueue, &ump->um_trim_tq);
   1162                         taskqueue_start_threads(&ump->um_trim_tq, 1, PVFS,
   1163                             "%s trim", mp->mnt_stat.f_mntonname);
   1164                         ump->um_trimhash = hashinit(MAXTRIMIO, M_TRIM,
   1165                             &ump->um_trimlisthashsize);


# ps xH|grep trim
    0  -  DLs       0:00,03 [kernel// trim]
    0  -  DLs       0:15,91 [kernel//usr trim]
    0  -  DLs       0:00,45 [kernel//usr/obj trim]
    0  -  DLs       0:00,83 [kernel//cachefs trim]

Ответить | Правка | Наверх | Cообщить модератору

57. "В OpenBSD портирован драйвер ath11k для беспроводных чипов Q..."  +/
Сообщение от Аноним (12), 31-Дек-23, 20:22 
> Кстати, что мешает опенку позаимствовать фряшную реализацию?

Религиозные убеждения адептов. У них сидеть на коре дуба с механическими HDD - норма.

Ответить | Правка | К родителю #52 | Наверх | Cообщить модератору

84. "В OpenBSD портирован драйвер ath11k для беспроводных чипов Q..."  +/
Сообщение от Свидетель Коры Дуба (?), 05-Янв-24, 17:29 
Неправда ваша! У меня на ноуте с Корой Дуба накопитель SSD.
Ответить | Правка | Наверх | Cообщить модератору

67. "В OpenBSD портирован драйвер ath11k для беспроводных чипов Q..."  +/
Сообщение от Аноним (-), 01-Янв-24, 04:57 
> Ну дык, если у ФС есть поддержка trim - она сама и
> пуляет команды по мере деаллокации места.

Продвинутый вариант - в очередь фоновому воркеру вместо этого скидывать, так реакции накопителя ждать не надо.

> А кто так не умеет - приходится, вот, костыль сканирующий место пулять
> мануально, закатывая солнце вручную.

Этот костыль намекает что на дизайн в общем то уже забили.

> накопитель после каждого удаления сразу. Как показала практика накопители не любят
> вал мелких TRIM запросов.

Это может испортить перфоманс, т.к. ожидание много мелких операций не есть гуд.

> увы и ах, никто кроме Linux continuous официально не поддерживает, асинхронный
> выходит тоже, поэтому производители не заморачиваются.

В результате продвинутые, типа btrfs и наверное сейчас и bcachefs - делают фоновый воркер которому можно сабмитить запросы сами. И даже если он ждет накопитель - всем пофигу.

> Windows делает периодический TRIM и хочешь не хочешь вендоры ориентируются именно на это.

Это имхо смотря где. В какихнить eMMC винды вообще мало. Да и энтерпрайзные SSD врядли на винду так уж сильно ориентируются, кто виндой всерьез сервит или что там еще?

Ответить | Правка | К родителю #50 | Наверх | Cообщить модератору

71. "В OpenBSD портирован драйвер ath11k для беспроводных чипов Q..."  +/
Сообщение от Kuromi (ok), 01-Янв-24, 05:19 
> В результате продвинутые, типа btrfs и наверное сейчас и bcachefs - делают
> фоновый воркер которому можно сабмитить запросы сами. И даже если он
> ждет накопитель - всем пофигу.

Ну так я об этом и писал, даже f2fs так делает. Это вообще похоже стандартное поведение для более новых ФС.

Ответить | Правка | Наверх | Cообщить модератору

73. "В OpenBSD портирован драйвер ath11k для беспроводных чипов Q..."  +/
Сообщение от Аноним (-), 01-Янв-24, 15:37 
> Ну так я об этом и писал, даже f2fs так делает. Это
> вообще похоже стандартное поведение для более новых ФС.

Ну а кто так еще не делает - в общем то показатель что на код забили за неперспективностью общей структуры антика. Или за отсутствием программистов, как вариант.

Скажем я не понимаю бсд в гальванизации UFSа. Это еще бредовее чем гальванизация XFS. У того хоть какие-то интересные свойства были, и то - вон, майнтайнер забодался.

Ответить | Правка | Наверх | Cообщить модератору

83. "В OpenBSD портирован драйвер ath11k для беспроводных чипов Q..."  +/
Сообщение от Аноним (83), 03-Янв-24, 04:14 
> Это может испортить перфоманс, т.к. ожидание много мелких операций не есть гуд.

Зато отсутствие TRIM как повышает перфоманс.

Ответить | Правка | К родителю #67 | Наверх | Cообщить модератору

85. "В OpenBSD портирован драйвер ath11k для беспроводных чипов Q..."  +/
Сообщение от Аноним (-), 06-Янв-24, 05:59 
>> Это может испортить перфоманс, т.к. ожидание много мелких операций не есть гуд.
> Зато отсутствие TRIM как повышает перфоманс.

При глупом подходе это так: вы ждете ERASE блока или при записи, или в TRIM. А разница в чем, если таки - ждете? Идея то в том чтобы заранее, в фоне pre-erase сделать, и тогда запись туда - рррраз и готово! А если не в фоне - тогда IO застопорится что так что сяк. В этом плане асинхронный сабмит команд на TRIM, или для антиков мануальный пинок внешнего fstrim - куда как лучше.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру