Время работы меняется на Microblaze после модификации кода - PullRequest
0 голосов
/ 21 июля 2011

Когда я делаю некоторые модификации в моем коде, который работает на Microblaze, я иногда вижу большое расхождение во время выполнения для выполнения кода, который следует по тому же пути. Чтобы проиллюстрировать, что я на самом деле имею в виду под тем же путем, возьмем этот пример,

if ( condition )
 execute_this();
else
 execute_that(); // Modified this function

Так, скажем, если бы я изменил код для функции execute_that, я бы увидел изменения во время выполнения, даже если был установлен condition и функция execute_this не была изменена. Что может вызвать это? Выравнивание памяти по функциям? Cache? Любая подсказка?

1 Ответ

0 голосов
/ 21 июля 2011

Меняется ли время только при изменении другой функции, или оно в любом случае является переменным?

Работаете ли вы в ОС?Могут ли другие задачи помешать вам?

Работают ли прерывания?Прерывание во время вашей функции изменит время выполнения.

И, да, эффекты кэша могут вызвать это.

...