Interested Article - Non-Uniform Memory Access

Схема организации памяти в мультипроцессорных системах

NUMA ( англ. Non-Uniform Memory Access «неравномерный доступ к памяти» или Non-Uniform Memory Architecture «архитектура с неравномерной памятью») — архитектура организации компьютерной памяти , используемая в мультипроцессорных системах . Процессор имеет быстрый доступ к локальной памяти через свой контроллер, а также более медленный канал до памяти, подключенной к контроллерам (слотам) других процессоров, реализуемый через компьютерную шину обмена данными.

Имплементация

Межпроцессорное взаимодействие является частью архитектуры чипсетов, поэтому у каждого вендора своя реализация шины обмена данными. AMD использует технологию HyperTransport , разработанную в 2001 г. в рамках консорциума, среди участников которых можно выделить Cray, Cisco, NVidia. Intel же традиционно использует свои технологии. В 2008 году появился первый процессор реализующий шину QuickPath Interconnect (QPI), в 2017 году был сменён технологией (UPI).

NUMA с когерентностью кэш-памяти (ccNUMA)

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

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

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

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

Примером многопроцессорных машин с ccNUMA-архитектурой может служить серия машин от компании Silicon Graphics . Суперкомпьютер ASCI Blue Mountain — один из самых мощных суперкомпьютеров 1999 года — представлял собой массово-параллельный кластер из 48 машин SGI Origin 2000 по 128 процессоров в каждой [ источник не указан 3438 дней ] .

См. также

Примечания

  1. . Дата обращения: 2 сентября 2014. 21 сентября 2013 года.

Ссылки

Источник —

Same as Non-Uniform Memory Access