Просмотр полной версии : Что нибудь типа профайлера
Такая проблема. Есть процедура с неопределённым временем выполнения (до нескольких сотен тысяч тактов). Как можно приблизительно замерить время её выполнения (допустима погрешность +-тысячу тактов)?
captain cobalt
16.07.2005, 15:00
Это лучше всего пинать эмуляторописателей, чтобы дали недокументированную инструкцию, аналогичную RDTSC архитектуры x86. :)
acidrain
16.07.2005, 18:40
Есть процедура
если это всего лишь процедура - то тогда можно на прерывания повесить счетчик, а по окончанию - получается определенное число =)
в unreal проще всего - см. строчку под дизассемблером
в unreal проще всего - см. строчку под дизассемблером
А что она показывает, я что-то не пойму?
А что она показывает, я что-то не пойму?
то, что тебе нужно =)
то, что тебе нужно =)
Ага, вроде начал понимать:) Пока неясно только, как замерить время выполнения именно отдельно взятой подпрограммы - наверное, сделать точки останова перед CALL'ом и после него?
Shiru: просто пройти CALL по F8
Такая проблема. Есть процедура с неопределённым временем выполнения (до нескольких сотен тысяч тактов). Как можно приблизительно замерить время её выполнения (допустима погрешность +-тысячу тактов)?
Запустить сразу после прерывания. После завершения вычислить
число тактов до начала прерывания. AFAIK ещё STS 6.x такую функцию
имел, только глючил.
Такая проблема. Есть процедура с неопределённым временем выполнения (до нескольких сотен тысяч тактов). Как можно приблизительно замерить время её выполнения (допустима погрешность +-тысячу тактов)?
Я всегда просто считал.
Потом можно сделать
HALT
LD A,#07
OUT(#FE),A
CALL PROCEDURE
LD A,#0
OUT(#FE),A
и посмотреть где примерно луч. Одно время у меня на мониторе сбоку экрана была наклеена линейка на которой были написаны тысячи тактов.
Powered by vBulletin® Version 4.2.5 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot