Быстродействия только процессора еще недостаточно для достижения высокой скорости вычислений в компьютере. Ведь подавляющее большинство команд процессора обращается за операндами непосредственно к запоминающему устройству, куда помещает и результаты выполненных операций. Для эффективной работы компьютера необходимо, чтобы операции с данными в оперативной памяти выполнялись со скоростью, сравнимой со скоростью работы центрального процессора. Если в среднем для одноадресных машинных команд будет одно обращение к памяти на одну исполненную команду, то это означает, что цикл обращения к оперативному запоминающему устройству должен быть меньше среднего числа тактов, приходящихся на исполнение одной команды. Время обращения к оперативному запоминающему устройству существенно зависит от объема ОЗУ (десятки слов, тысячи слов, сотни тысяч слов, сотни мегабайт), его организации (побайтной, пословной) и количества портов (один, два или более). Несколько иное отношение к дисковой, внешней памяти, у которой произвольного доступа к конкретной записи нет. Здесь речь может идти лишь о средней скорости подкачки данных в ОЗУ, которая зависит от суммы времени записи-чтения заданного объема данных и времени выхода считывающих головок на начальную позицию расположения данных. Таким образом, вся память вычислительной машины представляется в виде многоуровневой запоминающей структуры с участками увеличивающегося быстродействия и уменьшающегося объема по мере перемещения данных к арифметико-логическому узлу:
· регистровая память – включает набор регистров общего назначения в количестве 64-256 обычно 32-битовых слов, доступ к которым происходит в течение одного такта, составляющего в современных процессорах величину порядка одной наносекунды;
· сверхоперативная память (cash-memory – кэш-память) – удерживает данные наиболее близкие по времени использования и близкие по адресному расстоянию к данным, используемым очередной командой, и все чаще представляется кэшами уровня-1 и уровня-2 с объемами равными соответственно 8к слов при доступе за 1-2 такта и 256к слов со временем доступа 3-5 тактов;
· оперативная память (ОЗУ) – основная память, расширяемая в настоящее время до 4 Гигаслов и имеющая время доступа, зависящего от общего объема, в пределах от 12 до 55 тактов, то есть несколько десятков наносекунд;
· дисковая память – память длительного хранения большого объема данных (в настоящее время свыше 180 Гигабайт на одном диске) с последовательной формой записи (чтения) во множество секторов одной дорожки (трека) на протяжении одного оборота диска (4 – 7 мс/об.) и с произвольным доступом к заданной дорожке за 1-2 миллисекунды.
· внешняя память – память удаленных компьютеров, связанных посредством локальных и глобальных сетей с процессором, выполняющим конкретные вычисления, доступ к которым определяется не столько временем доступа к памяти удаленного компьютера, сколько временем пересылки данных по каналам связи, особенно выходящим на спутники.
Если узлами системы служат персональные компьютеры, то такую параллельную вычислительную систему следует рассматривать как совокупность процессоров, подсоединенных к многоуровневой иерархической памяти. Для каждого вычислительного элемента должна быть обеспечена одинаковость его копий, которые обрабатываются разными процессорами и размещены в разных блоках иерархической памяти, то есть в любой момент времени должна обеспечиваться когерентность памяти.
Способ размещения данных и доступа к ним в иерархической памяти может служить основой классификации архитектур параллельных вычислительных систем [6]:
· явное размещение данных с явным указанием доступа к данным командами send (послать) и receive (принять), при котором размещение и расстановка полностью реализуется программистом;
· неявное размещение данных с неявным указанием доступа к данным, когда существует единое физическое или виртуальное адресное пространство, в котором программист использует только команды load (чтение) и store (запись);
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.