The OpenNET Project / Index page

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



"Релиз ядра Linux 6.7"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Релиз ядра Linux 6.7" +/
Сообщение от Аноним (22), 08-Янв-24, 12:09 
>спин-блокировки

Нехорошая калька. Либо "spin-lock" как в оригинале, либо идите выдумывайте, как благозвучнее слово spin перевести, особенно учитывая, что в оригинале оно ни к селу ни к городу употреблено, а лучше было бы loop-lock с полностью калькированным переводом как "цикл-блокировка", что также не благозвучно.

А теперь вопрос опеннетчикам. Неужели вендоры процессоров не могли придумать инструкцию, которая заменяет активное ожидание в спинлоке путём исполнения команд проверки адреса в памяти на изменения на делегирование оного специальному модулю в процессоре, который будет делать то же самое, но не загружая конвейер и предсказатель ветвлений хламом? То есть спец. инструкция "остаёмся на той же инструкции, ждём нуля по такому-то адресу в памяти, когда дождались - переходим к следующей инструкции". При попадании на неё ядро включает блок спинлоков, занося в него адрес ячейки, которую надо наблюдать. При переключении контекста блок спинлоков сбрасывается. Блок спинлоков соответствено следит за кешем 1 и 3 уровня, и при записи / чтении в кэш по нужным адресам делает прьверки и будит ядро. Таким образом с одной стороны ядро не потребляет энергии во время спинлоков, а с другой это не прерывание, требующее переключерия контекста, поэтому так же быстро, как и спинлок. Даже быстрее - спинлок выполняет инструкции, то есть латентность будет по латентности инструкций в цикле, а такой механизм даст латентность по срабатыванию блока слежения за спинлоками.

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

Оглавление
Релиз ядра Linux 6.7, opennews, 08-Янв-24, 10:27  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



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

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