Оптимизация кэширования информации: задачи и аналитическое решение | Статья в журнале «Молодой ученый»

Библиографическое описание:

Джиоева С. А. Оптимизация кэширования информации: задачи и аналитическое решение // Молодой ученый. — 2012. — №2. — С. 54-56. — URL https://moluch.ru/archive/37/4250/ (дата обращения: 18.08.2018).

Обработка больших объёмов информации становится главной во всех областях информационных технологий. От обработки операций чтения-записи зависит работа системы в целом.

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

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

Главными задачами оптимизации компьютерных систем являются:

  • оптимизация использования кэша - определение оптимального соотношения частоты процессора, объёмов кэш L1, L2, L3;

  • оптимизация размеров кэш.

Этап оптимизации использования кэш - памяти

Этап оптимизации использования кэша предоставляет возможность определить оптимальные размеры кэш - памяти. Нужно определить, при каких соотношениях частоты процессора, объёмов кэша система работает наиболее быстро и продолжает быть экономически оправданной.

С выпуском ядра с объёмом кэша L2 1 Мбайт, этот процессор стал основой линейки настольных процессоров. Впрочем, более быстрые тактовые частоты и больший объём кэша даже тогда не значили очень много. Сегодня ситуация изменилась: лучшая производительность и меньшее энергопотребление немало обязаны размеру кэша.

Кэши процессора играют вполне определённую роль: они уменьшают количество обращений к памяти.

Есть разные способы организации иерархии кэша. Кэш L1 всегда был в составе процессора, но поначалу кэш L2 устанавливался на материнские платы, как было в случае многих компьютеров. Для кэш-памяти первого уровня использовались простые чипы статической памяти.

Встроенный кэш L2 дал существенный прирост производительности практически в любых приложениях. Увеличение производительности оказалось столь существенным, что появление кэша L2 можно назвать самым важным фактором производительности. Отключение кэша L2 снизит производительность сильнее, чем отключение второго ядра у двуядерного процессора.

Однако кэш-память влияет не только на производительность. Она стала мощным инструментом, позволяющим создавать разные модели процессоров.

Вопрос заключается в следующем: насколько различие в объёме кэша влияет на производительность?

Как показали различные тесты, на определённом этапе объём кэша перестаёт влиять на производительность систем и быть экономически оправданным. С этого уровня рассматривается этап оптимизации размеров КЭШа[5].

Этап оптимизации размеров кэш-блоков

Здесь рассмотрим сравнительный анализ различных стратегий кэширования данных.

Одним из аспектов проектирования оптимальных программных продуктов является размещение данных в памяти ЭВМ и определение оптимальных размеров кэш-блоков[2]. Если все файлы пользователя первоначально размещены на внешнем носителе, а в оперативной памяти созданы блоки кэширования, то формальная постановка задачи, предназначенная для комплексной оптимизации размещения информационных файлов на внешних накопителях и определения оптимального размера блока кэширования при одинаковом размере файлов и разной вероятности обращений, имеет следующий вид[1]:


(1)


где

- объём оперативной памяти,

U - размер кэш-блока,

V - размер внешних файлов,

q - объём файлов в оперативной памяти,

n - количество файлов,

c, a - коэффициенты.

Найдем решение, отвечающее экстремальному значению целевой функцииметодом множителей Лагранжа[5].

Функция Лагранжа будет иметь вид:


(2)


Отсюда следует возможность получить решение (2) , приравнивая к нулю производные, , :


(3)

Отсюда следует решение, отвечающее экстремальному значению целевой функции (3):


(4)


После этого необходимо проверить, действительно ли система (4) отвечает оптимальному решению (3).


При подстановке:


Можем определить объём файлов в оперативной памяти:





(5)



Теперь выясним, является ли это решение оптимальным.


Классическая модель кэширования

Если все файлы пользователя первоначально размещены на внешнем носителе, а в оперативной памяти созданы блоки кэширования, каждый из которых предназначен для сканирования «своего» файла, то формальная постановка задачи минимизации числа обращений к внешним носителям имеет следующий вид[3],[4]:



(6)


где

U - размер кэш-блока,

V - размер внешних файлов,

n - количество файлов,

– число обращений к каждому файлу.


Сравнение математических моделей кэширования данных

Сравнительный анализ осуществляется за счёт определения разницы между классической математической моделью, когда каждый из кэш-блоков предназначен для сканирования «своего» файла и разработанной системой, предназначенной для комплексной оптимизации размещения информационных файлов на внешних накопителях и определения оптимального размера блока кэширования(4).

Т.к. правая часть положительная, можно убедиться, что полученный результат является обобщением решения (1) [1].

Математическое определение размеров кэш-блоков может занимать значительные вычислительные объёмы. При этом для определённых задач и расчётов самостоятельное определение размеров кэш-блоков значительно превосходит решения, полученные с помощью классического файлового распределения.


Литература:

  1. Гроппен В.О., В.В. Мазин. Эффективная реализация одной стратегии взаимодействия внешней и оперативной памяти ЭВМ Тезисы докладов Х1 всесоюзного совещания по проблемам управления, Ташкент, 1989 г. с. 202.

  2. Гроппен В.О. Принципы решения многокритериальных задач с помощью эталонов. Труды XII Всероссийской научно- методической конференции Телематика, Санкт Петербург, 6 – 9 июня 2005, том 1, стр. 125  - 128.

  3. Гроппен В.О. «Модели и алгоритмы комбинаторного программирования.» - Изд. РГУ, 1983г.

  4. Н.Н. Маисеев, Ю.П. Иванилов, Е. М. Столярова. «Методы оптимизации.» - . 1978г.

  5. Воробьёв П.Е., Внешние накопители данных: конструкция и эффективная эксплуатация, X международная конференция «ИТ - технологии: Развитие и приложения», 2009 г., стр. 9-18.

  6. Мухачёва Э.А., Рубинштейн Г.Ш. Математическое программирование. – Новосибирск, Наука, 1977, 320 с.

Основные термины (генерируются автоматически): оперативная память, файл, объем кэша, Сравнительный анализ, внешний носитель, иерархическая память, экстремальное значение, комплексная оптимизация размещения, оптимальный размер блока кэширования, кэш - памяти.


Похожие статьи

Характеризация статических ячеек памяти | Статья в журнале...

Из этого следует, что в основном из статических ячеек памяти организуют кеши, а при помощи динамической памяти — ОЗУ. SRAM (static random access memory) — статическая память с произвольным доступом (Рисунок 1). Это полупроводниковая оперативная память...

Проблемы организации СУБД при параллельной архитектуре...

архитектуры с разделяемой памятью и дисками

Их сменяют принципиально новые системы с иерархической архитектурой, которые включают в себя на два порядка больше CPU и HDD или SSD.

Сравнительный анализ программного обеспечения систем мониторинга кластерных...

Оптимизация алгоритма выравнивания биологических...

Однако чем больше блок тем больше накладные расходы связанные с барьерной синхронизацией, и тем больший объем разделяемой памяти необходим блоку, из-за чего разделяемая память может не поместиться в кэш полностью.

Основы параллельной работы программ | Статья в журнале...

Оперативная память, устройство чтения и записи информации, процессор

Оптимизация работы с памятью. Эффективная работа с памятью является проблемой всех программ, но для параллельных она приобретает особое значение.

– Обеспечение однозначности кэш-памяти.

MapReduce и метод доступа к хранилищу MRIJ on RCFile

По позициям последней промежуточной таблицы fkvnчитаются значения столбцов фактов (они хранятся в том же блоке, что столбцы внешних ключей).

Похожие статьи. Оптимизационный метод проведения сравнительного анализа средств защиты информации от...

Применение метода анализа иерархий для оценки типа...

Шаги метода анализа иерархий: Представление исходной проблемы в виде иерархической структуры (Рисунок 1).

— 360 с. Саати Т. Л. Целочисленные методы оптимизации и связанные с ними экстремальные проблемы.

Конфигурирование и тестирование производительности...

где — процент использования памяти, — объем памяти, — количество вычислительных узлов.

- ANSYS — универсальная программная система конечно-элементного (МКЭ) анализа [14]; - FlowVision — комплексное многоцелевое решение для моделирования трехмерных...

Оптимизация размещения данных по узлам...

Оптимальный выбор количества файлов и их размещение в узлах сети может значительно увеличить эффективность сети.

Введем обозначения: - множество узлов информационной сети. - множество файлов. - файл . - узел . - объем памяти узла . - объем файла...

Сравнительный анализ алгоритмов сортировки данных в массивах

Статья посвящена проблеме выбора оптимального алгоритма сортировки данных в массивах, что предполагает сравнительный анализ алгоритмов.

При увеличении массива требует значительных объемов дополнительной памяти.

Обсуждение

Социальные комментарии Cackle

Похожие статьи

Характеризация статических ячеек памяти | Статья в журнале...

Из этого следует, что в основном из статических ячеек памяти организуют кеши, а при помощи динамической памяти — ОЗУ. SRAM (static random access memory) — статическая память с произвольным доступом (Рисунок 1). Это полупроводниковая оперативная память...

Проблемы организации СУБД при параллельной архитектуре...

архитектуры с разделяемой памятью и дисками

Их сменяют принципиально новые системы с иерархической архитектурой, которые включают в себя на два порядка больше CPU и HDD или SSD.

Сравнительный анализ программного обеспечения систем мониторинга кластерных...

Оптимизация алгоритма выравнивания биологических...

Однако чем больше блок тем больше накладные расходы связанные с барьерной синхронизацией, и тем больший объем разделяемой памяти необходим блоку, из-за чего разделяемая память может не поместиться в кэш полностью.

Основы параллельной работы программ | Статья в журнале...

Оперативная память, устройство чтения и записи информации, процессор

Оптимизация работы с памятью. Эффективная работа с памятью является проблемой всех программ, но для параллельных она приобретает особое значение.

– Обеспечение однозначности кэш-памяти.

MapReduce и метод доступа к хранилищу MRIJ on RCFile

По позициям последней промежуточной таблицы fkvnчитаются значения столбцов фактов (они хранятся в том же блоке, что столбцы внешних ключей).

Похожие статьи. Оптимизационный метод проведения сравнительного анализа средств защиты информации от...

Применение метода анализа иерархий для оценки типа...

Шаги метода анализа иерархий: Представление исходной проблемы в виде иерархической структуры (Рисунок 1).

— 360 с. Саати Т. Л. Целочисленные методы оптимизации и связанные с ними экстремальные проблемы.

Конфигурирование и тестирование производительности...

где — процент использования памяти, — объем памяти, — количество вычислительных узлов.

- ANSYS — универсальная программная система конечно-элементного (МКЭ) анализа [14]; - FlowVision — комплексное многоцелевое решение для моделирования трехмерных...

Оптимизация размещения данных по узлам...

Оптимальный выбор количества файлов и их размещение в узлах сети может значительно увеличить эффективность сети.

Введем обозначения: - множество узлов информационной сети. - множество файлов. - файл . - узел . - объем памяти узла . - объем файла...

Сравнительный анализ алгоритмов сортировки данных в массивах

Статья посвящена проблеме выбора оптимального алгоритма сортировки данных в массивах, что предполагает сравнительный анализ алгоритмов.

При увеличении массива требует значительных объемов дополнительной памяти.

Задать вопрос