Member 13814317 Ответов: 1

Напишите программу на языке Си, которая измеряет производительность кэша и иерархию памяти.


Мы хотим вывести следующие параметры нашего процессора
экспериментально:
• Количество кэшей
• Размеры всех кэшей
• Задержки доступа ко всем кэшам и основной памяти
• Размер строки кэша

Что я уже пробовал:

размеры = [1k, 4k, 256K, ...]
размер foreach в размерах
создать массив `размера`

таймер запуска
для i = 0 до n // просто продолжайте обращаться к массиву
arr[(i * 16) % arr.length]++ // i * 16 должен изменять каждую строку кэша ... см. ссылку
время записи/печати

Patrice T

В чем же вопрос ?

1 Ответов

Рейтинг:
2

Rick York

Это практически невозможно измерить экспериментально. Это происходит потому, что все эти вещи прозрачны для приложения, как и должно быть. Если это не так, то чип не был спроектирован должным образом.

Есть несколько приложений, которые будут отображать эту информацию для вас, например CPU-Z, но они не определяют информацию экспериментально. Они получают информацию, запрашивая чип и BIOS.