Использование кеша GPU - PullRequest
1 голос
/ 14 мая 2019

Для некоторых программ (не только для одной) я вижу, что для большинства ядер загрузка кэша (l2 и унифицированная) невелика (до 3 в масштабе от 1 до 10).Программы не игрушечные, а простые.Это нормально?Устройство M2000.

Хотелось бы узнать, как измеряется использование кэша?Я не нашел объяснения этому в документах.

1 Ответ

4 голосов
/ 14 мая 2019

Если ядро ​​ограничено какими-то другими факторами, такими как вычислительные возможности или объем памяти, то использование кэша обычно является низким. Единственный способ добиться действительно высокого уровня использования кэша (7 или выше) - многократное использование данных в этом кэше.

Использование кэша должно измеряться в процентах (от 0 до 10, 10 составляет 100%) от максимальной пропускной способности кэша (очевидно, с некоторой нормализацией ).

Зачастую (зависит от графического процессора и не публикуется четко) доступная пропускная способность кэша L2 составляет примерно 2-кратную или более доступную пропускную способность памяти (т. Е. GPU DRAM). Поэтому, чтобы получить показатель выше 5 для этого показателя, пропускная способность данных в вашем коде, как видно на L2, должна быть выше пропускной способности памяти. Обычно это подразумевает повторное использование данных.

Должна быть возможность написать тестовый микробенчмарк, чтобы исследовать это.

...