Попов И.И., Матвеев А.А., Максимов Н.В. Архитектура электронно-вычислительных машин и систем (2004) (1186255), страница 37
Текст из файла (страница 37)
При промахе записитранзакция записи помещается в буфер и посылается в основную памятьпри предоставлении шины.При несостоятельной строке в состоянии I команда чтения данногоиз этой строки вызывает чтение строки из основной памяти, размещениеее в кэш-памяти и изменение состояния этой строки в кэш-памяти на Еили S. Состояние Е будет, если установлен режим сквозной записи, прикотором запись производится и в строку кэш-памяти и в строкуосновной памяти. Состояние S устанавливается при режиме обратнойзаписи, что позволяет модифицировать данные строки кэш-памяти безнемедленной модификации строки основной памяти, что, в своюочередь, увеличивает производительность.
До тех пор, пока к даннымстроки не будет доступа других ВМ или внешних устройств, не будетобратной записи, и ВМ не будет использовать шину.При состоянии I строки команда записи в эту строку изменяеттолько содержимое строки основной памяти (сквозная запись), но неизменяет содержимое кэш-памяти и сохраняет состояние строки I.В состоянии S строки чтение данного из этой строки не меняет еесостояние. Если установлен режим сквозной записи, то послезавершения записи состояние строки меняется на Е, при режимеобратной записи выполняется сквозная запись, но состояние строкиостается прежним S.Если состояние строки Е, то чтение сохраняет это состояние, азапись переводит строку в состояние М.Наконец, если состояние строки М, то как команды чтения, так икоманды записи не меняют этого состояния.Для поддержки когерентности строк кэш-памяти при операцияхввода/вывода и обращениях в основную память других процессоров нашине генерируются специальные циклы опроса состояния кэш-памятей.Эти циклы опрашивают кэш-памяти на предмет хранения в них строки,которойпринадлежитадрес,используемыйвоперации,инициировавшей циклы опроса состояния.
Возможен режимпринудительного перевода строки в состояние I, который задаетсясигналом INV. При этом состояние строк определяется табл. 4.Таблица 4Принудительный перевод строки в состояние IИсходное состояниеISЕМINV=0ISSS; обратная запись строки204INV=1IIII; обратная запись строкиКоммуникационные средыПринципы построения коммуникационных средВ самом общем смысле архитектуру компьютера можноопределить как способ соединения компьютеров между собой, спамятью и с внешними устройствами.
Реализация этого соединенияможет идти различными путями. Конкретная реализация соединенийтакого рода называется коммуникационной средой компьютера. Одинаиз самых простых реализаций – это использование общей шины, ккоторой подключаются как процессоры, так и память. Сама шинасостоит из определенного числа линий связи, необходимых дляпередачи адресов, данных и управляющих сигналов между процессороми памятью. Этот способ реализован в SMP системах. Основнымнедостатком таких систем, как было указано выше, является плохаямасштабируемость.
Увеличение, даже незначительное числа устройствна шине вызывает заметные задержки при обмене с памятью икатастрофическое падение производительности системы в целом.Необходимы другие подходы для построения коммуникационной среды,и одним из них является разделение памяти на независимые модули иобеспечение возможности доступа разных процессоров к различныммодулям одновременно посредством использования различного родакоммутаторов.При этом возможны различные конфигурации получающихсясистем связи.
Так, в компьютерах семейства Cray T3D/T3E всепроцессоры были объединены специальными высокоскоростнымиканалами в трехмерный тор, в котором каждый вычислительный узелимел непосредственные связи с шестью соседями. В компьютерах IBMSP/2 взаимодействие процессоров происходит через иерархическуюсистемукоммутаторов,такжеобеспечивающуювозможностьсоединения каждого процессора с любым другим. Эти оригинальныеуникальные решения значительно увеличивают цену компьютеров.Существенно более простым и более дешевым оказалосьиспользование связей на базе сетей Ethernet, разработанная фирмойXerox.
Первоначально использовалась обычная 10-мегабитная сеть,затем стали применять Fast Ethernet, а в последнее время иногда иGigabit Ethernet. Но для Fast Ethernet характерна большая латентность(задержка в передаче данных), оцениваемая в 160-180 микросекунд, аGigabit Ethernet отличается высокой стоимостью. Поэтому при созданиимногопроцессорных вычислительных систем часто предпочтениеотдается технологиям SCI, Myrinet или Raceway.205Примеры построения коммуникационных сред на основемасштабируемого когерентного интерфейса SCISCI (Scalable Coherent Interface) принят как стандарт в 1992(ANSI/IEEE Std 1596-1992).
Предназначен для достижения высокихскоростей передачи с малым временем задержки, при этом обеспечиваямасштабируемую архитектуру, позволяющую строить системы,состоящие из множества блоков. Представляет собой комбинацию шиныи локальной сети, обеспечивает реализацию когерентности кэш-памяти,размещаемой в узле SCI, посредством механизма распределенныхдиректорий, который улучшает производительность, скрывая затраты надоступ к удаленным данным в модели с распределенной разделяемойпамятью. Производительность передачи данных обычно находится впределах от 200 Мбайт/с до 1000 Мбайт/с на расстояниях десятковметров с использованием электрических кабелей и километров сиспользованием оптоволокна.
SCI уменьшает время межузловыхкоммуникаций по сравнению с традиционными схемами передачиданных в сетях путем устранения обращений к программным уровням –операционной системе и библиотекам времени выполнения;коммуникации представляются как часть простой операции загрузкиданных процессором (командами load или store). Обычно обращение кданным, физически расположенным в памяти другого вычислительногоузла и не находящимся в кэше, приводит к формированию запроса наудаленный узел для получения необходимых данных, которые в течениенескольких микросекунд доставляются в локальный кэш, и выполнениепрограммы продолжается. Старый подход требовал формированияпакетов на программном уровне с последующей передачей ихаппаратному обеспечению.
Точно также происходил и прием, врезультате чего задержки были в сотни раз больше, чем у SCI. Однако,для совместимости SCI имеет возможность переносить пакеты другихпротоколов. Другое преимущество SCI – использование простыхпротоколов типа RISC, которые обеспечивают большую пропускнуюспособность.
Узлы с адаптерами SCI могут использовать для соединениякоммутаторы или же соединяться в кольцо. Обычно каждый узелоказывается включенным в два кольца (рис. 25).Рис. 25. Матрица узлов кластера на основе сети SCI206В отличие от HIPPI, данная технология оптимизирована дляработы с динамическим трафиком, однако может быть менееэффективна при работе с большими блоками данных. Протоколпередачи данных обеспечивает гарантированную доставку и отсутствиедедлоков. Протокол SCI достаточно сложен, он содержит большиевозможности по управлению трафиком, но использование этихвозможностей предполагает наличие развитого программногообеспечения. На коммуникационной технологии SCI основана системасвязи гиперузлов CTI (Convex Torroidal Interconnect) в системахHP/Convex Exemplar X-class, кроме того на ней построены кластерныесистемы SCALI Computer, системы семейства hpcLine компанииSiemens, а также cc-NUMA сервера Data General и Sequent.Традиционная область применения SCI – это коммуникационныесреды многопроцессорных систем.
На основе этой технологиипостроены, в частности, компьютеры серии hpcLine от Siemens илимодульные серверы NUMA-Q от IBM, ранее известные как Sequent.Модульные SCI коммутаторы Dolphin позволяют потребителямстроить масштабируемые, кластерные решения класса предприятия наплатформах Windows NT/2000/XP, Linux, Solaris, VxWorks, LynuxWorksи NetWare с использованием стандартизованного оборудования ипрограммного обеспечения.SCI (Scalable Coherent Interface)ПроизводителиDolphin Interconnect Solutions и др.оборудованияПоказателиДля продуктов Dolphin: пиковая пропускнаяпроизводительности способность - 667 MB/sec,. Аппаратнаялатентность - 1.46 мксек.ПрограммнаяДрайверы для Linux, Windows NT, Solaris.поддержкаScaMPI - реализация MPI компании ScaliComputer для систем на базе SCI. SISCI API интерфейс программирования нижнего уровня.КомментарииSCI(ANSI/IEEEl596-1992)хорошостандартизированнаятехнология.Кроместандартной сетевой среды, SCI поддерживаетпостроение систем с разделяемой памятью и скогерентностью кэшей.
На коммуникационнойтехнологии SCI основаны кластерные системыкомпании SCALI Computer, системы семействаhpcLine компании Siemens, а также cc-NUMAсервера Data General и Sequent. Технология SCIиспользовалась для связи гиперузлов в системахHP/Convex Exemplar X-class.207Коммуникационная среда MYRINETСетевую технологию Myrinet представляет компания Myricom,которая впервые предложила свою коммуникационную технологию в1994 году, а на сегодня имеет уже более 1000 инсталляций по всемумиру.