--- aliases: - NUMA tags: - maturity/🌱 date: 2024-10-12 zero-link: parents: linked: --- **NUMA (Non-Uniform Memory Access)** — это архитектура памяти, используемая в многопроцессорных системах, где время доступа к оперативной памяти зависит от физического расположения [[Центральный процессор|процессора]] и модулей памяти. В традиционной архитектуре **UMA (Uniform Memory Access)**, время доступа ко всей памяти одинаково для всех процессоров, что ограничивает масштабируемость. В NUMA же каждый процессор имеет собственную локальную память, к которой он получает доступ быстрее, чем к памяти, расположенной у другого процессора. NUMA может существенно влиять на работу [[Кэш процессора|кэш-памяти]]. Поскольку кэш каждого процессора хранит данные, связанные с его локальной памятью, доступ к удаленной памяти требует дополнительной синхронизации и согласования данных. В многоядерных системах это приводит к более сложным задачам по управлению [[Cache coherence|кэш-кохерентностью]], чтобы предотвратить несогласованность данных между ядрами, особенно при частом доступе к удаленным данным. В системах с NUMA также важно правильно распределять задачи между ядрами, чтобы минимизировать обращения к удаленной памяти и максимально использовать локальную память и кэш. Программисты могут оптимизировать производительность таких систем с помощью NUMA-aware алгоритмов, распределяя данные и задачи таким образом, чтобы кэш эффективно использовался в пределах каждого процессора и минимизировался доступ к удаленной памяти. *** ## Мета информация **Область**:: [[../../meta/zero/00 Архитектура ЭВМ|00 Архитектура ЭВМ]] **Родитель**:: **Источник**:: **Создана**:: [[2024-10-12]] **Автор**:: ### Дополнительные материалы - ### Дочерние заметки