В то время, когда я делал много бенчмаркинга, я наткнулся на что-то очень тревожное/интересное/новое для меня. После того, как некоторые исследования стали все больше и больше (что я не мог поверить), кажется, что Windows XP (и, вероятно, все остальные версии) запускает программы примерно в 3 раза медленнее, чем в безопасном режиме.
Возьмите эту небольшую программу в качестве примера:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char **argv)
{
long i,j,k;
printf ("Starting...\n");
k = 12;
for (i = 0; i < 20000; i++)
for (j = 100000; j > 0; j--)
k = k * 12;
printf ("Done... k =%d", k); // just using k here to prevent the whole block isn't optimized away.
return 0;
}
На моем компьютере 2,4 ГГц требуется 2,5 с для выполнения в безопасном режиме, а для нормального режима требуется ~ 8 секунд. (ThreadPriority = TIMECRITICAL, Processclass= REALTIME). EVEN, когда я компилирую и запускаю этот код в сеансе vmware-linux в этом обычном режиме Windows, он выполняется быстрее (около 5,5 секунд).
Я также сделал много циклов измерения цикла, и на самом деле результаты из безопасного режима кажутся больше похоже на то, что вы должны ожидать, учитывая количество обработанных инструкций.
Так что я пропустил? Может ли кто-нибудь меня загадить?
Все указатели и подсказки оценены, Thanx.
РЕШЕННО! Прошу прощения, ребята, эта проблема связана с моей дрянной alienware m15x, которая по какой-то причине дросселируется, по-видимому, на 1/3 ее мощности процессора - если вы не используете злые инструменты (ThrottleStop.exe), чтобы довести его до нормальной скорости. Поразительно жаль тратить ваше время.: (