LINUX.ORG.RU

Какой программой потестировать обмен данными CPU - RAM

 ,


0

3

Добавил в систему с двумя процами (у каждого проца 6 слотов) памяти 6 модулей по 16G к 6 ранее установленным 8G. Все модули DDR3 RDIMM. В синие слоты 16G, в черные 8G. всего 144Gb. Все модули увиделись, частота работы модулей 1333Мгц. Для процессора Xeon X5650 в трехканале скорость обмена с RAM должна быть 32 ГБ/с.

Но если потестить, то заявленной скорости не видно. Запущен только Linux.


# mbw -n 1 1024
Long uses 8 bytes. Allocating 2*134217728 elements = 2147483648 bytes of memory.
Using 262144 bytes as blocks for memcpy block copy test.
Getting down to business... Doing 1 runs per test.
0       Method: MEMCPY  Elapsed: 0.26653        MiB: 1024.00000 Copy: 3841.998 MiB/s
AVG     Method: MEMCPY  Elapsed: 0.26653        MiB: 1024.00000 Copy: 3841.998 MiB/s
0       Method: DUMB    Elapsed: 0.27940        MiB: 1024.00000 Copy: 3665.049 MiB/s
AVG     Method: DUMB    Elapsed: 0.27940        MiB: 1024.00000 Copy: 3665.049 MiB/s
0       Method: MCBLOCK Elapsed: 0.16093        MiB: 1024.00000 Copy: 6363.213 MiB/s
AVG     Method: MCBLOCK Elapsed: 0.16093        MiB: 1024.00000 Copy: 6363.213 MiB/s

чем тестируют ? memtest ?

★★★★

Последнее исправление: Vlad-76 (всего исправлений: 2)
Ответ на: комментарий от VIT

Во избежание непонимания нужно сказать, что L1 и L2 являются private для ядер, а LLC - разделяемый всеми ядрами. При этом доступ к локальному банку LLC дешевле. Чтобы конфигурировать эту байду придуманы всякие SNC-2, SNC-4 и прочие clustering modes. Обычным людям это всё не нужно, такими деталями занимаются специалисты по производительности.

VIT ★★
()

Поставил sysbench. Вроде как получилось 28070.05 MB/sec.

test-system#sysbench --test=memory --memory-block-size=1M --memory-total-size=50G --num-threads=12 run
sysbench 0.4.12:  multi-threaded system evaluation benchmark

Running the test with following options:
Number of threads: 12

Doing memory operations speed test
Memory block size: 1024K

Memory transfer size: 51200M

Memory operations type: write
Memory scope type: global
Threads started!
Done.

Operations performed: 51200 (28070.05 ops/sec)

51200.00 MB transferred (28070.05 MB/sec)


Test execution summary:
    total time:                          1.8240s
    total number of events:              51200
    total time taken by event execution: 21.8022
    per-request statistics:
         min:                                  0.18ms
         avg:                                  0.43ms
         max:                                 20.38ms
         approx.  95 percentile:               0.95ms

Threads fairness:
    events (avg/stddev):           4266.6667/294.61
    execution time (avg/stddev):   1.8168/0.00

Vlad-76 ★★★★
() автор топика
Последнее исправление: Vlad-76 (всего исправлений: 6)
Ответ на: комментарий от VIT

Он будет пропорционален количеству отпечатков ядер.

Будет, но не совсем.
Пример - 13400. 20Мб паспортных L3. 6+4 ядра. Кристаллы могут быть с Alder Lake и с раптором. Но в обоих случаях L3 наслайсан по 3Мб на p-ядро или e-кластер. А 13400 20 Мб L3, на 3 как-то не делится )
Почитал на эту тему. L3 слайс может работать даже при отключенном ядре/кластере, плюс может использоваться не весь его объём(вроде как через маппинг или изменение ассоциативности 12-16).
AMD же даже при порезке ядер L3 не режет.

GAMer ★★★★★
()
Ответ на: комментарий от router

Я вроде бы оттуда качал. Правда мастер версию пришлось собирать, чтобы протестировать.

anonymous
()
Ответ на: комментарий от GAMer

А 13400 20 Мб L3, на 3 как-то не делится

Всё правильно, только в Интел маркетологи деньги не просто так получают. Например,

Но в обоих случаях L3 наслайсан по 3Мб на p-ядро

не совсем правильно, поскольку реально на P-core 2.66(6)MB, а они просто «удачно» округлили. Легко посчитать, что в 13ом поколении ядер на P-die расположено 2.66MB, а на E-die - 1MB. Поэтому

13400E  6P+4E = 19.96MB 
13500E  6P+8E = 23.96MB
13600HE 4P+8E = 18.66MB

Остальное комментировать не буду. Специально менять прошивку, чтобы играть с ассоциативностью и конфигурацией L3 слайсов для домашних процессоров Интел не заморачивается. Вы читали то, что делается для серверных конфигураций, где счёт на десятки сдайсов и это имеет смысл. Про АМД вообще отдельная история, куда более сложная.

VIT ★★
()
Ответ на: комментарий от VIT

не совсем правильно, поскольку реально на P-core 2.66(6)MB, а они просто «удачно» округлили.

А где бы почитать, что там на самом деле? Везде инфа разная. 3Мб вроде по сканам кристалла насчитали...

GAMer ★★★★★
()

удивлен, что не упомянуто. если вопрос про канальность, то dmidecode и аналоги был упомянут.

hdparm -T

anonymous
()
Ответ на: комментарий от GAMer

А где бы почитать, что там на самом деле? Везде инфа разная.

Это правда, слухов в интернете больше чем правды. Таблоиды копируют информацию друг друга не понимая, не проверяя, и часто ещё и додумывают. А в этом обсуждении речь идёт вообще об очень мутной теме - как работает NOC - что даже во внутренних документах доступно не всем.

В общем доступе достаточно надёжно работает группа компаний semianalysis.com. Это не бесплатно.

VIT ★★
()
  • Markdown
Пустая строка (два раза Enter) начинает новый абзац. Знак '>' в начале абзаца выделяет абзац курсивом цитирования.
Внимание: прочитайте описание разметки Markdown.
Используйте Ctrl-Enter для размещения комментария