Мне нужно измерить время выполнения программы Hanoi Towers, написанную на ассемблере. Существует ли какая-либо функция или конкретное значение регистра, используемое для выполнения этой задачи.?Измерьте время выполнения, используя SPIM
ответ
Я не знаю конкретно о SPIM, но любой процессор mips имеет регистр Count, который увеличивается на половину тактового сигнала CPU. Если SPIM эмулирует этот регистр, вы можете легко измерить время выполнения программы. Просто прочитайте его содержимое до и после выполнения программы.
Если SPIM не копирует эти регистры или не принимает инструкций, MARS mips emulator делает это. В общем время измерения в эмуляторе бессмысленно, поскольку в зависимости от времени аппаратного обеспечения хоста будет отличаться для той же программы. Счетчик команд является лучшим показателем производительности, поскольку он будет таким же независимо от хоста эмулятора.
У MARS есть счетчик команд, и я думаю, что это запустит программу SPIM.
После недолгих поисков я нашел это: http://www.cs.colostate.edu/~mstrout/spim/keepstats.html
Modified спит, который подсчитывает инструкцию.