The OpenNET Project / Index page

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



"Увеличение скорости ввода/вывода на 6% в Linux, благодаря кэшированию запросов времени"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Заметили полезную информацию ? Пожалуйста добавьте в FAQ на WIKI.
. "Увеличение скорости ввода/вывода на 6% в Linux, благодаря кэ..." +/
Сообщение от Aliechemail (ok), 17-Янв-24, 08:11 
> Нельзя ли поконкретнее - про что это? File:line в студию? Сорц ядра у меня есть, я проверю.

Да пожалуйста. Ядро 6.1.61, например, файл: drivers/clocksource/arm_arch_timer.c. Отличный образчик обилия костылей, смотрите массив ool_workarounds, начиная со строчки № 437.

Но память меня подвела, и всё не настолько критично, как я это запомнил. В рантайме для таймера выбор хуков из device tree методом обхода всего массива в цикле, на данный момент, делается один раз - при инициализации. А потом просто каждый раз дёргается хук, при каждой попытке получения времени.

Но некоторые хуки такие красивые... Хук для Allwinner A64, например) Нет, конечно это говорит об качестве чипа, в первую очередь. Но ещё это и образчик того, как и без того не дешёвую операцию обращения к таймеру превратить в нечто совсем ужасающее. Хорошо хоть только для одного чипа.

И таких мест, где хуки распиханы по ядру, меняющие поведение и/или увеличивающие расходы на исполнение, много. Что есть следствие централизации разработки ядра.

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

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

Оглавление
Увеличение скорости ввода/вывода на 6% в Linux, благодаря кэшированию запросов времени, opennews, 16-Янв-24, 23:42  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



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

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