Что означают расстояния между узлами в numactl?
Я пытаюсь понять что node distances
в numactl --hardware
имею в виду?
На нашем кластере выводит следующее
numactl --hardware
available: 2 nodes (0-1)
node 0 cpus: 0 1 2 3 4 5 12 13 14 15 16 17
node 0 size: 32143 MB
node 0 free: 188 MB
node 1 cpus: 6 7 8 9 10 11 18 19 20 21 22 23
node 1 size: 32254 MB
node 1 free: 69 MB
node distances:
node 0 1
0: 10 21
1: 21 10
Это то, что я понял до сих пор:
- у нас есть 24 виртуальных процессора, и что каждый узел имеет 32 ГБ оперативной памяти.
- На
numa
кластера, нам придется сделать "прыжок" к следующему кластеру, чтобы получить доступ к памяти на другом узле, и это влечет за собой большую задержку. - В этом контексте сделать цифры
10
а также21
указать время ожидания для "хмеля"? Как мне найти задержку вns
? это указано где-то?
Это и это мне не сильно помогло.
РЕДАКТИРОВАТЬ: Эта ссылка говорит, что расстояния не в ns
, но относительные расстояния. Как я могу получить абсолютную задержку в нс?
Любая помощь будет оценена.
2 ответа
numactl --hardware
дает вам статистику об архитектуре вашего оборудования, а не о его производительности.
Если вы хотите получить характеристики производительности вашего оборудования, вам придется измерить его самостоятельно, либо найдя существующее в сети, либо написав собственный тест. /questions/35916148/opredelit-maket-numa-s-pomoschyu-izmerenij-zaderzhki-proizvoditelnosti/35916163#35916163 даст вам представление о том, как начать писать свой собственный стенд.
Чтобы получить абсолютные значения задержки, если вы работаете в системе Intel, вы можете использовать их инструмент проверки задержки памяти для любой конкретной системы. https://software.intel.com/en-us/articles/intel-memory-latency-checker
Он предпочитает использовать полномочия root / admin, чтобы отключить аппаратную предварительную выборку, которая иначе искажает числа, но если у вас этого нет, документы также указывают, что вы можете попросить его получить случайные элементы из других узлов, чтобы они были очень близки к истинным числам, например:
./mlc --latency_matrix -e -l128 -r
Intel(R) Memory Latency Checker - v3.5
Command line parameters: --latency_matrix -e -l128 -r
Using buffer size of 200.000MB
Measuring idle latencies (in ns)...
Numa node
Numa node 0 1
0 112.5 180.3
1 180.8 112.4