Механизм когерентности обобщенного кольцевого гиперкуба

Страница: 2/6

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

• создание приложений в привычных программных средах;

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

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

Явное размещение данных с указанием разделяемых модулями страниц; неявное указание доступа к данным посредством команд load, store.

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

После установления во всех компьютерах отображения страниц па­мяти, доступ к удаленным памятям выполняется посредством обычных команд чтения (load) и записи (store) как к обычным страницам вирту­альной памяти без обращений к операционной системе или библиоте­кам времени исполнения.

1.2. Механизмы неявной реализации когерентности

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

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

1.2.1. Однопроцессорный подход

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

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

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

Реферат опубликован: 9/03/2006