Измерьте время выполнения, используя SPIM - PullRequest
0 голосов
/ 23 января 2012

Мне нужно измерить время выполнения программы Hanoi Towers, написанной на ассемблере. Есть ли какая-либо функция или конкретное значение регистра, использованные для этой задачи ..?

1 Ответ

1 голос
/ 19 марта 2012

Я не знаю конкретно о SPIM, но у любого процессора mips есть регистр Count, который увеличивается на половину тактовой частоты процессора. Если SPIM эмулирует этот регистр, вы можете легко измерить время выполнения программы. Просто прочитайте его содержание до и после выполнения программы.

Если SPIM не эмулирует этот регистр или считает инструкции, это делает эмулятор MARS mips. В общем, измерение времени в эмуляторе не имеет смысла, поскольку в зависимости от аппаратного обеспечения время будет разным для одной и той же программы. Счетчик команд является лучшим показателем производительности, поскольку он не зависит от хоста эмулятора.

MARS имеет счетчик команд, и я думаю, что он запустит программу SPIM.

После короткого поиска я нашел это: http://www.cs.colostate.edu/~mstrout/spim/keepstats.html

Модифицированный SPIM, который считает инструкции.

...