OSDev

для всех
Текущее время: 28 мар 2024, 12:58

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Виртуальные адресса
СообщениеДобавлено: 22 апр 2014, 21:43 
Аватара пользователя

Зарегистрирован: 16 май 2007, 23:46
Сообщения: 1126
Тут подкинули интересную статейку.
http://research.cs.wisc.edu/multifacet/ ... egment.pdf
Так как в механизм кэширования современного процессора я не вникал, то прокомментировать их не могу. Надеюсь SII тут сможет что-то подсказать. Но заявление автора выглядит адекватными.
Суть в том что современный механизм кэширования попросту не адекватен. В кэше находится считанное число страниц и при случайном доступе процессору требуется прочитать таблицу страниц, а только после считать сами данные. Как вы понимаете это 2-4 раза потерь в скорости при промахе. А проблема как бы актуально для всяких там баз данных таких промахов 10-30%. Собственно автор также предлагает ряд решений этой проблемы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Виртуальные адресса
СообщениеДобавлено: 24 апр 2014, 12:37 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1088
Откуда: Балаково
Статью ещё не прочитал, на инглише тяжеловато вникать в сложные проблемы. По идее, не должно быть 2-4 раза потерь в скорости, ведь размер таблицы в 1000 раз меньше размера отображаемых данных. Если читать всего один байт, то да, может быть и в 10 раз меньше в скорости. Надо оптимизировать алгоритмы обработки данных, чтобы располагать данные кучнее.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Виртуальные адресса
СообщениеДобавлено: 24 апр 2014, 15:54 
Аватара пользователя

Зарегистрирован: 16 май 2007, 23:46
Сообщения: 1126
Суть в том что кэше от 1 до 128 дескрипторов страниц!!! Что очень малло и не эффективно. Так как нужен 1 миллион таких записей.
Таблица страниц это 4МБ для 4Гбайт. Что в кэш целиком не влазит.
Следовательно при кэш промахе нужно загрузить кореневой каталог страниц затем загрузить каталог страниц, а после уже сами данные отсюда требуется 3 обращения к памяти. Откуда я и пишу о 2-4 разах в скорости.

Проблема актуальная хотя для большинства задач таких промахов составляет от 1 до 50% Что не так много. Но проблема актуальна. И она будет только ухудшаться с ростом размера памяти и её потребления прикладным ПО.

ОС разработчика это касается так. Если хочешь что-бы твоя ОС была бы скажем для примера на 15% быстрее конкурентов, то надо использовать хитрые методы. Как то использовать больших страниц. Что в статье называется не эффективным способом. Так как 2-МБ страницы уже на 1ГБ уже требует до 2-х обращений к озу.

А вот идею автора я ещё не разобрал, но вроде как при помощи виртуализации он смог сделать более эффективный способ работы с виртуальными адресами.

Ещё как вариант подождать пока появятся новые более быстрые процессоры.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB