Упреждающее кэширование в подсистеме внешней памяти высокопроизводительных распределенных вычислительных систем тема диссертации и автореферата по ВАК РФ 05.13.18, кандидат технических наук Сахаров, Илья Евгеньевич

  • Сахаров, Илья Евгеньевич
  • кандидат технических науккандидат технических наук
  • 2009, Кострома
  • Специальность ВАК РФ05.13.18
  • Количество страниц 137
Сахаров, Илья Евгеньевич. Упреждающее кэширование в подсистеме внешней памяти высокопроизводительных распределенных вычислительных систем: дис. кандидат технических наук: 05.13.18 - Математическое моделирование, численные методы и комплексы программ. Кострома. 2009. 137 с.

Оглавление диссертации кандидат технических наук Сахаров, Илья Евгеньевич

ВВЕДЕНИЕ.

ГЛАВА 1. ОБЗОР СОВРЕМЕННЫХ ТЕХНОЛОГИЙ ПОВЫШЕНИЯ ПРОИЗВОДИТЕЛЬНОСТИ РАСПРЕДЕЛЕННЫХ ВЫЧИСЛЕНИЙ.

1.1. Введение.

1.2. Проблема задержек при дисковых операциях.

1.3. Предвыборка операций ввода/вывода.

1.3.1. Преимущества и недостатки использования упреждающего кэширования.

1.3.2. Особенности упреждающего кэширования.

1.3.3. Планирование и управление упреждающего кэширования.

1.3.4. Алгоритм предсказания данных.

Методы, основанные на примерах.

Методы, основанные на истории.

Методы статистического анализа.

1.4. Способ разделения потоков приложения.

1.5. Другие подходы к организации упреждающего кэширования.

1.6. Обзор параллельных файловых систем.

Сетевая файловая система NFS - Network File System.39'

Параллельная Виртуальная Файловая Система PVFS - Parallel Virtual

File System.

Глобальная файловая система GFS - Global File System.

Параллельная файловая система GPFS - General Parallel File System.

Параллельная файловая система SPFS- Scotch Parallel File System.

1.7. Выводы по первой главе.

ГЛАВА 2. РАЗРАБОТКА ИМИТАЦИОННОЙ МОДЕЛИ И ИССЛЕДОВАНИЕ ЭФФЕКТИВНОСТИ ПРИМЕНЕНИЯ УПРЕЖДАЮЩЕГО КЭШИРОВАНИЯ ДЛЯ ССРВ.

2.1. Введение.

2.2. Математическое представление упреждающего кэширования.

2.2.1. Системная модель обращения к данным для упреждающего кэширования.

2.2.2. Математическая оценка эффективности упреждающего кэширования.

2.3. Структура и принципы функционирования механизма упреждающего кэширования в имитационной модели.

2.3.1. Модель параллельной программы.

2.3.2. Описание функционирования имитационной модели.

2.3.3. Условия проведения экспериментов с имитационными моделями

2.3.4. Результаты экспериментирования с имитационными моделями.

2.4. Выводы по второй главе.

ГЛАВА 3. ПРОГРАММНАЯ РЕАЛИЗАЦИЯ МЕТОДА УПРЕЖДАЮЩЕГО КЭШИРОВАНИЯ.

3.1. Введение.

3.2. Метод упреждающего кэширования.

3.2.1. Потенциальные преимущества упреждающего кэширования.

3.2.2. Способ разделения приложения на два потока.

Архитектуру упреждающего кэширования.

Упреждающий поток.

Синхронизация.

Генерация упреждающего потока.

Ограничения.

Анализатор кода для многопотоковых приложений.

Архитектура исполняющей системы.

3.3. Выводы по третей главе.

ГЛАВА 4. ПРОВЕРКА СООТВЕТСТВИЯ РАЗРАБОТАННОЙ ИМИТАЦИОННОЙ МОДЕЛИ И ПРЕДЛАГАЕМОГО МЕТОДА УПРЕЖДАЮЩЕГО КЭШИРОВАНИЯ.

4.1. Введение.

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

4.2.1. Условия проведения экспериментов.

4.2.2. Результаты экспериментов и их анализ.

4.2.3 Пример решения задачи о тепловом взрыве.

4.3. Выводы по четвертой главе.

Рекомендованный список диссертаций по специальности «Математическое моделирование, численные методы и комплексы программ», 05.13.18 шифр ВАК

Введение диссертации (часть автореферата) на тему «Упреждающее кэширование в подсистеме внешней памяти высокопроизводительных распределенных вычислительных систем»

Одной из современных тенденций развития высокопроизводительных систем является интеграция различных ресурсов в единую сетевую среду распределенных вычислений (ССРВ) [2,4,18,62]. Данная среда позволяет использовать разнородные средства как единый вычислительный ресурс. ССРВ состоит из множества территориально размещенных вычислительных систем, соединенных различными каналами связи, характеристики которых могут динамически изменяться в широких пределах, и представляет собой GRID систему.

Приложения (задачи) пользователей выполняются на одной или нескольких вычислительных системах, входящих в состав ССРВ. Задачей -называется прикладная программа, предназначенная для выполнения на-нескольких вычислительных модулях ССРВ. При запуске задачи на выполнение могут возникнуть проблемы, связанные с тем, что • исходные ■ данные необходимые для счета располагаются в других компонентах ССРВ. Из большого территориального расположения компонент ССРВ возникает задержка передачи данных по каналам связи и задержка обращения к дисковым накопителям.

Разница между временем вычисления одной процессорной операции и временем доступа к единице дисковой памяти постоянно увеличивается. Эта тенденция служит причиной того, что приложения должны осуществлять дополнительную выборку данных из дисковой памяти, до момента обращение к этим данным. Осуществление предвыборки данных является хорошо известной техникой скрытия* дисковых задержек, и потенциально может увеличить производительность вычислений, особенно, когда требуемые данные для предвыборки распределены между множеством дисков, находящихся в разных компонентах ССРВ. Необходимость ускорения доступа к распределенным данным обуславливает актуальность диссертагщонного исследования. Основная преграда для получения выигрыша от этой техники на практике является сложность получения точных и своевременных предвыборок. В диссертации отражаются результаты проведенного комплексного исследования проблемы ускорения доступа к распределенным данным. Также предлагается новый подход автоматической генерации точных и своевременных предвыборок без участия программиста.

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

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

Существует большой класс фундаментальных научных и инженерных задач с широкой областью применения, эффективное решение которых возможно только с использованием мощных вычислительных ресурсов. Такие задачи получили название - Grand challenges. Для приложений, реализующих подобные задачи, требуются данные, значительно превышающие объем оперативной памяти или требуемые данные имеют огромный объем и могут быть расположены территориально удаленно от вычислителей. Вот лишь некоторые области, где возникают задачи подобного рода: предсказания погоды, климата и глобальных изменений в атмосфере, построение полупроводниковых приборов, структурная биология, генетика человека, квантовая хромодинамика, астрономия, транспортные задачи, гидро- и газодинамика, управляемый термоядерный синтез, распознавание изображений, распознавание и синтез речи, математика, поиск различных чисел.

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

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

Предыдущие исследования показали, что уменьшение времени ожидания передачи данных (включает в себя время1 доступа к дисковому накопителю и время передачи данных по коммуникационной среде) с помощью упреждающего кэширования может существенно увеличить производительность для широкого круга приложений с интенсивным вводом/выводом. На практике, оказалось, очень сложно сделать такие улучшения [3,5]. С одной стороны упреждающее кэширование может быть вообще не эффективно, если предвыборка произошла для небольшого количества данных или предвыборка занимала слишком много времени. С другой стороны, если были скопированы неправильные данные или данные были предвыбраны преждевременно (в этом случае может произойти вытеснение данных из кэш-памяти, до момента обращения к ним), то упреждающее кэширования ухудшает вместо того, чтобы улучшать производительность. В. частности, упреждающее кэширование занимает часть дисковой пропускной способности и часть пропускной способности каналов передачи данных. При этих условиях предвыборка данных может замедлять другие операции ввода/вывода или операции передачи данных. Так. же упреждающее кэширование использует память для буферизации подкаченных данных, и может вызвать преждевременное вытеснение других полезных данных из памяти, что порождает дополнительные операции-ввода/вывода для возвращения этих данных обратно в память. По этой причине, упреждающее1 кэширование должно быть точным, с точки зрения требуемых данных, и своевременным для данных к которым будет произведено обращение.

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

Для многих приложений обычное кэширование является не эффективным, поскольку рабочая область данных, с которыми работает приложение, значительно превышает размеры кэш-файлов, используемых операционными системами. Всеми известный подход осуществления предвыборки данных, до момента их реального использования, используется во множестве проектов под операционными системами типа UNIX и Linux[21]. В большинстве случаев предполагается, что требуемые данные располагаются последовательно друг за другом, когда программа обращается к i-ому блоку, осуществляется подкачка блоков от i+1 до i+n, где п -количество подкачиваемых блоков. Для большинства обычных приложений этот подход является эффективным, но для приложений с интенсивным обменом данным, подобный подход не работает. Как правило, подобные приложения обращаются одновременно к большому количеству файлов, которые в общем случае могут быть распределены произвольным образом. Различные приложения осуществляют различные схемы выборки данных из файлов, что еще более усложняет задачу предвыборки. Предлагается использовать механизм упреждающего кэширования, который учитывает реальную последовательность обращений к файлам. Команды предвыборки получают требуемую информацию в процессе дополнительного запуска кода оригинальной программы.

Упреждающее кэширование и просто кэширование достаточно давно и успешно используются в современных файловых системах и в различных приложениях [20,22,64]. Тем не менее, в большинстве подобных систем упреждающее кэширование является сильно зависимым от приложений и в основном базируются на политике LRU — least recently used. К сожалению, в приложениях использующих интенсивный обмен данными подобные методы не обеспечивают требуемую эффективность.

Все существующие методы упреждения данных делятся на три категории: методы, основанные на npHMepax(pattern-based), на HCTopHH(history-based) и методы статического анализа^айс). Метод, основанный на примерах, осуществляет предвыборку в соответствии с некоторым фиксированным заранее определенным множеством примеров доступа. Этот метод крайне эффективен, когда доступ к данным в приложение соответствует одному из элементов множества. И не может ничего изменить для приложений, не попадающих в это множество. Методы, основанные на истории; осуществляют предвыборку, основываясь на наблюдении предыдущих последовательностей обращений к данным. Этот подход эффективен для предвыборки последовательности обращений подобной предыдущей, но если последовательность обращений сильно изменилась по сравнению со всеми предыдущими, то эффективность резко1 падает. По этой и еще некоторым другим причинам, методы, основанные на истории, будут неэффективны для приложений, которые зависят от меняющихся входных данных. Наконец, методы, основанные на статическом анализе, используют компилятор (или какое либо другое средство) для внесения вызовов упреждающего кэширования в приложении на основе анализа кода программы до ее запуска. Этот метод ограничен возможностями компилятора для внесения изменений в код приложения, так чтобы доступ к данным, которые будут востребованы приложением в будущем, учитывал предвыборку. Возможности внесения подобных изменений в код приложения препятствует зависимость программы от значений данных, которые определяются только в результате ее выполнения. Сложность реализации этой возможности заключается в проведении статического анализа обращения для циклических участков кода.

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

Хорошо известно; что многие процессоры используют спекулятивное исполнение кода программы (например архитектура Intel IA-64) для большей эффективности определить следующую ветвь программы и тем самым уменьшить* время исполнения [25,26,32]. В диссертации доказывается, что использование упреждающего кэширования на основе разделения потоков* уменьшает время простоя при операциях ввода-вывода:

В частности, в диссертации предлагается осуществлять, для5 определения данных о предвыборке, дополнительный запуск кода приложения. Этот дополнительный запуск реализуется в виде потока, получившего название упреждающий поток.

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

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

Объектом исследования являются подсистема внешней памяти высокопроизводительных распределенных вычислительных систем.

Предметом исследования являются модели, методы и алгоритмы. упреждающего кэширования.

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

1. Разработать имитационную модель упреждающего кэширования.

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

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

4. Разработать организацию упреждающего кэширования для эффективной работы подсистемы ввода/вывода ССРВ.

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

В диссертации рассматриваются следующие основные вопросы:

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

• при каких условиях упреждающее кэширование является эффективным;

• какие требуются ресурсы для обеспечения правильного и быстрого предсказания для дальнейшего исполнения программы;

• каким образом упреждающее кэширование влияет на работу подсистемы внешней памяти и ССРВ в целом;

• действительно ли упреждающее кэширование дает преимущества для реальных приложений;

• какие существуют преимущества метода разделения потоков приложения, лежащего в основе упреждающего кэширования и какие недостатки.

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

Результаты диссертационного исследования внедрены:

1. В институте химической физики им. Семенова г. Москва.

2. Результаты исследования используются в учебном процессе ИКСИ

Академии ФСБ России.

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

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

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

Четвертая глава посвящена экспериментальным исследованиям разработанного модуля упреждающего кэширования. Описываются условия проведения экспериментов. Рассматривается несколько реальных тестовых приложений. Показывается преимущество использования упреждающего для. большого числа разнообразных приложений.

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

Похожие диссертационные работы по специальности «Математическое моделирование, численные методы и комплексы программ», 05.13.18 шифр ВАК

Заключение диссертации по теме «Математическое моделирование, численные методы и комплексы программ», Сахаров, Илья Евгеньевич

ОБЩИЕ ВЫВОДЫ ПО РАБОТЕ

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

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

Разработана имитационная модель функционирования * ССРВ с применением упреждающего кэширования на языке GPSS. Модель позволила оценить потенциальную' эффективность упреждающего кэширования> для приложений с интенсивным обменом данными* и дает возможность исследовать проектируемую или анализируемую систему упреждающего кэширования. Соответствие разработанной модели подтверждается практической реализацией метода упреждающего кэширования для приложений, исполняющихся в ССРВ.

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

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

• метод должен быть эффективным, реализованным с минимальными аппаратными затратами и надежным;

• метод не должен оказывать влияние на системные процессы;

• метод должен работать на уровне приложений и не затрагивать организацию структур памяти.

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

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

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

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

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

Список литературы диссертационного исследования кандидат технических наук Сахаров, Илья Евгеньевич, 2009 год

1. Корнеев В.В., Киселев А.В., Семенов Д.В., Сахаров И.Е. Организация упреждающего кэширования в сетевой среде распределенных вычислений. Вестник ИКСИ Серия «В» Выпуск 3 Том 2.

2. Киселев А.В., Корнеев В.В., Семенов Д.В., Сахаров И.Е. Управление метакомпьютерными системами. Открытые системы №02 февраль-март 2005 80с. стр. 11-16.

3. Сахаров И.Е. Организация упреждающего кэширования в сетевой среде распределенных вычислений. Труды Пятой Всероссийской научной конференции молодых ученых СПбГУ 2008. стр. 78-89.

4. Сахаров И.Е. Организация упреждающего кэширования для приложений, исполняющихся в ССРВ. Вестник Ивановского Государственного Энергетического Университета Выпуск 1/2009. С. 85-91.

5. Сахаров И.Е. Математическое представление метода упреждающего кэширования и оценка эффективности разработанного метода. Вестник Ивановского Государственного Энергетического Университета. Выпуск 1/2009. С. 114-118.

6. Сахаров И.Е. Метод упреждающего кэширования дляприложений, исполняющихся в ССРВ. Вестник Российских Железных Дорог. Выпуск Апрель 2009. С. 34-37.

7. Сахаров И.Е. Метод упреждающего кэширования на основе разделения- потоков в высокопроизводительных распределенных вычислительных система: монография. Издательство Костромского Государственного Технологического Университета, 2008. — 100 с.

8. И. Олифер Н.А., Олифер В.Г. Сетевые операционные системы СПб: Питер, 2001. 544 стр. С. 267-280:

9. Олифер Н.А., Олифер В.Г. Комьютерные сети. Принципы, технологии, протоколы: Учебник для вузов. 2-е изд. СПб: Питер, 2005. -544. стр. 243-265.

10. Кудрявцев Е.М. Основы имитационного моделирования различных систем М.: ДМК Пресс, 2004. 320 е.: ил. (Серия «Проектирование»).

11. Томашевский В.Н., Жданова Е.Г. Имитационной моделирование в среде GPSS М.:Бестселлер, 2003, с. 5-24.

12. Копылов В.Н., Онищенко Ю.А. Имитационное моделирование на-базе пакета GPSS/PS Учебно-методическое пособие. М.: Типография в.ч 33965, 1998.- 133 с.

13. Разработка макета распределенной файловой системы организации внешней памяти кластеров (Шифр — «ФСВП») Отчет научно-исследовательского Центра электронной вычислительной техники, 2002. — 75 с.

14. Рамакришман С. Эффективность сквозной кластеризации (Effective End-to-End Clustering). Oracle Magazine/Русской издание 2003 г. // http://www.oracIemagazine.ru.

15. Кузнецов С.Д. Операционная система UNIX. Информационно-аналитические материалы Центра Информационных технологий. Глава 2. Распределенные файловые системы. //http://www.dstu. edu. ru/povtas/sud/books/osunix/dir. html.

16. Федорчук А. Введение в POSIX'hbh3m. Сетевое издание LINUXCENTER. 2005. Глава 9. Физика файловых систем. // http://www.linuxcenter.ru.

17. Гордеев А.В. Операционные системы 2-е изд. Учебник для ВУЗов. ПИТЕР 2007. Глава 5.-736 с. стр. 561-592.

18. Орлов С. Оптика на рабочем месте. «Открытые системы», 2003 №10. стр. 27-30.

19. Корнеев В.В., Киселев А.В. Современные микропроцессоры. М.:

20. НОЛИДЖ, 1998.-240с. стр. 145-177.

21. Кузьминский М. Эволюция микроархитектуры х86-процессоров Intel. «Открытые системы», 2006 №10. // http://www. osp. ru/text/print/302/3584541. html

22. Процессоры Intel и AMD. КомпьютерПресс 2005, №12 стр. 42-45.

23. Bcuiuee М.К., Китаев Е.Л., Слепенков М.И., "Служба директорий LDAP как инструментальное средство для создания распределенных информационных систем", Препринт ИПМ, 2000.

24. М.К. McKusick. A Fast File System for UNIX. ACM Transaction on Computer System, 2(3); August 1994.

25. Официальный сайт компании Intel // hhtp://intel.com/.

26. Основы построения операционных систем промышленного назначения // hhtp: //www. ibm. com/developerworks/ru/edu/osarchitecturecoursel/section8. ht ml.

27. История процессоров Intel http://www.stfw.ru/.

28. Обзор дисковых подсистем хранения данных // http://www. itscope. ru/2007/01/22/obzordiskovychmassivov. html/.

29. Справочное руководство Mandrakelinux 10.1 Глава 8,9,10. I I http://lafox.net/docs/Command-Line-ru/index.html/,

30. Hennessy J.L. and Patterson D.A. Computer architecture: A quantitative approach. Morgan Kaufmann Publishers, San Francisco, CA, 1999.

31. Growchowski Ed. Ibm leadership in disk storage // http: //www. storage, ibm. com/technolo/growchows/grochoO l.htm/.

32. Patterson R.H. Informed Prefetching and Caching CMU-CS-97-204, -December 1997.

33. Patterson R.H., Gibson G.A., Satyanarayanan M. A Status Report on Research in Transparent Informed Prefetching. ACM Operating Systems Review, 1993.

34. Patterson R.H., Gibson G.A., Ginting E., Stodolsky D., Zelenka J. Informed prefetching and caching. In Proceedings of the 15th ACM Symposium on Operating System Principles (SOSP), December 1995.

35. Tomkins A., Patterson H., Gibson G.A. Informed multi-process prefetching and caching. In Proceedings of the 1997 ACM Sigmetrics International Conference on Measurement and Modeling of Computer Systems (SIGMETRICS), June 1997.

36. Chang F., Gibson G.A. Automatic I/O Hint Generation through Speculative Execution. Operating Systems Design and Implementation 2001.

37. Chang F. W. Using speculative execution to automatically hide I/O latency December 7, 2001 CMU-CS-01-172 p.21-23.

38. Trivedi. K.S. On the paging performance of array algorithms. IEEE Transactions on Computers, 26(10):938-947, 1977.

39. Brown A.D. and Mowry T.C. Taming the memory hogs: Using compiler inserted releases to manage physical memory intelligently. In Proceedings of the 4th USENIX Symposium on Operating Systems Design and Implementation (OSDI), October 2000.

40. Hammond L., Willey M., Olukotun K. Data speculation support for a chip multiprocessor. In Proceedings of the 8th ACM International Conference on Architectural Support for Programming Languages and Operating Systems1. ASPLOS), October 1998.

41. FranaszekP.A., Robinson J.T., Thomasian A. Concurrency control for high contention environments. ACM Transactions on Database Systems (TODS), 17(2):304-345, June 1992.

42. Salem K., Garcia-Molina H. Disk striping. In Proceedings of the 2nd IEEE International Conference on Data Engineering, 1986.

43. Curewitz K. Practical Prefetching via Data Compressing. In ACM Conference on Management of Data, May 1993.

44. Lei H., Duchamp D. An analytical approach to file prefetching. In Proceedings of the USENIX Winter 1997 Technical Conference, January 1997.

45. Harty K., Cheriton D.R. Application-controlled physical- memory using external page-cache management. Proceedings of the fifth international conference on Architectural- support for programming languages and operating systems, 1992.

46. Cao P., Felten E.W., Karlin A.R., Li K. Implementation and performance of integrated application-controlled file caching, prefetching and disk scheduling. ACM Transaction on Computer Systems (TOCS), 14(4):311-343, 1996.

47. Cao P. et al. A Study of Integrated Prefetching and Caching Strategies. In ACM Conference on Measurement and Modeling of Computer systems, May 1995.

48. Roshberg D. et al. Prefetching over a Network: Early Experience with CTIP. SIGMENTRIC Performance Evaluation Review, 25(3).

49. Tait C. D. et al. Intelligent File Hoarding for Mobile Computers. In Proceedings of the International Conference of Mobile Computing and

50. Networking, November 1995.

51. Mowry T.C., Demke A.K., Krieger O. Automatic Compiler-Inserted I/O Prefetching for Out-of-Core Applications. Proceedings of the 1996 Symposium on Operating Systems Design and Implementation.

52. LeroyX. The LinuxThreads Library. // http://pauillac. inria.fr/~xl eroy/l inuxthreads/.

53. Curewitz K. et al. Practical Prefetching via Data Compression. In ACM Conference on Management of Data, May 1997.

54. Kotz D. et al. Practical Prefetching Techniques for Parallel File Systems. In International Conference on Parallel and Distributed Information Systems, December 1999.

55. Foster /., Kesselman С., Tuecke S., The Anatomy of the Grid: Enabling Scalable Virtual Organizations. International Journal of High Performance Computing Applications, 15 (3). 200-222. 2001.

56. Официальный сайт Globus // http://www.globus.org.

57. Soltis S.R., Erickson G.M., Preslan K. W., O'Keefe M.T., Ruwart T.M. The Global File System: A File System for Shared Disk Storage IEEE Transactions on<Parallel and Distributed Systems.

58. Cams P.H., Ligon W.B. Ill, Ross R.B., Thakur R. PVFS: A Parallel File System For Linux Clusters Proceedings of the 4th Annual Linux Showcaseand Conference Atlanta, GA, October. 2000, c. 317-327.

59. Описание параллельной виртуальной файловой системы PVFS 2001 г. // http://www.parl. clemson. edu/pvfs/desc. html.

60. Описание файловой системы GPFS. //http://publib. boulder, ibm. com/infocenter/clresctr/topic/com. ibm. cluster.gpfs. doc/ gpfsJaqs/gpfsfaqs.html.

61. Wu S., Manber U. AGREP a fast approximate pattern-matching tool. In Proceedings of the USENIX Winter 1992 Technical Conference, 1992.

62. Официальный сайт файловой системы GFS // hhtp://sources, redhat. com/cluster/gfs/.

63. Red Hat Global File System. //http://www. linuxtopia. org/onlineJbooks/linuxsustemsadministartion/globalJil esystemGFS/index.html.

64. General Parallel File System. //hhtp://www-OS. ibm. com/systems/clusters/software/gpfs/index. html/.

65. Baker M., Hartman J.H., Kupfer M.D., ShiriffK. W. "Measurements of Distributed File System" Proc. 13th ACM Symp. Operating Systems Principles., pp. 198-211, Oct. 1991.

66. Freedman C.S., Burger J., DeWitt D.J. SPIFFI-A Scalable Parallel File System for the Intel Paragon. Parallel and Distributed Systems. November 1996 (vol. 7, № 11). Pp.1185-1200.

67. Silberschatz, Galvin, Gagne. Operating System Concepts with Java -7th Edition, 2007. Chapter 13: I/O Systems.

68. Cao P. et al. Application Controlled File Caching Policies. In Usenix summer 1994 technical conference, June 1994.

69. Официальный сайт СУБД PostreSQL // http://www.postgresql.com/.

70. Roschina N.A., Uvarov A.V., Osipov A.I. Natural convection in an annulus between coaxial horizontal cylinders with internal heat generation. Int. J. of Heat Mass Transfer. 2005, v. 48, p. 4518-4525

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