WikiDer > Раскраска кеша
В Информатика, раскраска кеша (также известный как раскраска страницы) - это процесс попытки выделить бесплатные страницы которые примыкают к Кеш процессорас точки зрения, чтобы максимально увеличить общее количество страниц, кэшируемых процессором. Раскраска кеша обычно используется низкоуровневыми распределение динамической памяти код в Операционная система, при отображении виртуальная память к физическая память. Подсистема виртуальной памяти, в которой отсутствует раскраска кэша, менее детерминирована в отношении производительности кеша, поскольку различия в распределении страниц от одного запуска программы к другому могут привести к большим различиям в производительности программы.
Подробности операций
Физически индексированный кэш ЦП разработан таким образом, что адреса в соседних блоках физической памяти занимают разные позиции («строки кэша») в кэше, но это не тот случай, когда дело доходит до виртуальной памяти; когда выделяются виртуально смежные, но не физически смежные блоки памяти, они потенциально могут занимать одинаковую позицию в кэше. Раскрашивание - это метод, реализованный в программном обеспечении для управления памятью, который решает эту проблему, выбирая страницы, которые не конкурируют с соседними страницами.
Страницы физической памяти «раскрашены», поэтому страницы с разными «цветами» занимают разные позиции в кэш-памяти ЦП. При выделении последовательных страниц в виртуальной памяти для процессов ядро собирает страницы с разными «цветами» и отображает их в виртуальную память. Таким образом, последовательные страницы в виртуальной памяти не конкурируют за одну и ту же строку кэша.
Реализации
Этот код значительно усложняет подсистему распределения виртуальной памяти, но результат стоит затраченных усилий.[1] Раскраска страниц делает виртуальную память такой же детерминированной, как и физическая память, в отношении производительности кеша. Раскраска страниц используется в операционные системы Такие как Солярис,[2] FreeBSD,[1] NetBSD,[3] и Windows NT.[4]
Рекомендации
- ^ а б Мэтью Диллон. «Раскраска страницы». Элементы дизайна системы FreeBSD VM. Фонд FreeBSD. Получено 2007-01-13.
- ^ "Что нового в операционной системе Solaris". Маркетинговые материалы Solaris. Sun Microsystems, Inc. Получено 2007-01-13.
- ^ Мэтт Томас. «Улучшение NetBSD / mips» (PDF). Управление цветами страницы. Фонд NetBSD. Получено 2012-09-24.
- ^ Эдуард Бюньон; Дженнифер М. Андерсон; Тодд С. Моури *; Мендель Розенблюм; Моника С. Лам. «Раскраска страниц, управляемая компилятором для мультипроцессоров». Стэндфордский Университет. Получено 2009-10-06.
внешняя ссылка
- "Алгоритмы размещения страниц для больших кешей с реальным индексированием, "Р. Э. Кесслер, Марк Д. Хилл, Университет Висконсина, 1992.
- "Цветная память," к Йохен Лидтке, Центр IBM Т. Дж. Ватсона, ноябрь 1996 г.
- "缓存 着色 技术, "Автор: Марай, Технологический блог CSDN, 2008 г.