Відповіді:
У Opterons і Nelahem (55xx і пізніші версії) Xeons має архітектуру NUMA - у кожного сокета є своя шина пам'яті і є зв'язок між розетками. Це посилання називається Hypertransport на системах Opteron та Quickpath на Xeons. G5 передує Nelahem і досі використовує більш стару передню шину, яка не є архітектурою NUMA.
Opterons і 35xx / 55xx або новіші Xeons можуть використовувати чистий режим адресації NUMA, де пам'ять кожного сокета живе у суміжній частині фізичного адресного простору. Якщо ви хочете запустити програму, яка обізнана з NUMA (наприклад, підтримка спорідненості процесора), ви можете налаштувати систему на запуск у цьому режимі.
Системи такого типу також мають застарілий режим, коли окремі 4K сторінки чергуються через розетки, тому доступ до пам'яті тонко змішується між розетками. Це має невеликі результативні результати, оскільки половина всіх доступів до пам'яті повинна пройти через шину Hypertransport до іншої розетки (Quickpath у випадку Xeons). Однак більшість доступів буде кешована, тому накладні витрати відносно невеликі.
Цей режим дозволяє системам ефективно запускати додатки, які не знають NUMA, і це типово режим, за допомогою якого завантажується система. Зазвичай це можна налаштувати в BIOS.
Ваш G5 не працюватиме в режимі NUMA, оскільки він має архітектуру передньої шини. FSB - це єдина шина, що розділяється пам'яттю та всіма процесорними розетками, тому вона має однакові характеристики доступу до пам'яті, тобто не NUMA. Мені невідомі будь-які програми wintel або lintel, які залежать від архітектури NUMA; ймовірно, що програмі не потрібна NUMA, але вона буде підтримувати її, якщо вона є. Можливо, ви все ще можете запустити додаток у вашій старій системі G5. Чи буде це сприятливо, залежить від програми та того, що ви хочете досягти.
Підтримка NUMA в додатках
Деякі програми (наприклад, SQL Server) можуть реалізувати значні переваги від продуктивності, оптимізуючи використання пам'яті, використання вводу-виводу та планування, щоб мінімізувати штрафи за не локальний доступ. Реалізація підтримки NUMA у додатку вимагає наявності в операційній системі допоміжних засобів, таких як:
Спорідненість планувальника: Нитка може бути розміщена в пулі, який має перевагу планувати для одного або групи процесорів. Зауважте, що NUMA може мати більше одного процесора на одній шині пам’яті - у випадку багатоядерного Opteron або Xeon, ядра на одній штампі ділять одну і ту ж шину. Це дозволяє потоку запитувати локальну пам'ять або використовувати пули пам'яті, локальні до пулу процесора. Крім того, коли нитка зберігається в локальному процесорі, вона мінімізує обмоложення кешу в міру планування потоку - робочий набір - це лише робочий набір потоків, що використовує саме це ядро.
Спорідненість до пам’яті: Нитка може запитати пам'ять і вказати, що вона повинна або повинна бути доступною з локальної пам'яті до сокета. Зберігання пам’яті та використання процесора на одній шині мінімізує накладні витрати на нелокальний доступ до пам’яті. Накладні витрати не настільки великі в сучасних системах NUMA, але нелокальний доступ був набагато повільнішим у старих системах, таких як рання послідовна передача.
Спорідненість вводу / виводу: периферійні шини можна прив’язати до локального процесора, тому обробка вводу / виводу може бути запланована на процесорах, близьких до вводу / виводу. Більшість систем NUMA мають декілька шин вводу / виводу, тому планування обробників переривань та DMA в локальну пам'ять дає певну перевагу у виконанні вводу / виводу.
Першими NUMA Xeons були серії 55xx, які ваш G5 не може прийняти, так що це не так.