Здравствуйте, Morpheus_, Вы писали:
M_>времена нынче другие, скорость работы программ никого не итересует, память сейчас не ресурс, но когда начинают "оптимизировать" с помощью добавления лишних тяжелых операций становится не посебе
Да, сейчас люди этим деньги зарабатывают, и когда оптимизируют — берутся для начала за разного рода профайлеры.
2. С древних времен известен такой метод оптимизации как раскрутка цикла, смысл его сводится к тому чтобы избавится от инструкций переходов, значительно повысив таким образом производительность (в ущерб размеру кода разумеется), например:
исходный код:
for(int i=0; i < 10; i++)
someWork();
оптимизированный код:
someWork();
someWork();
someWork();
someWork();
someWork();
someWork();
someWork();
someWork();
someWork();
someWork();
суть этого метода в избавлении от операции перехода на каждой итерации цикла
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
такая оптимизация доступна при двух условиях:
1. Количество итераций статично.
2. Количество статичных итераций не слишком велико.
данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
Morpheus_:
но в любом случае сама операция перехода довольно длительная (20-50 тактов, а у сложения 1
Давай будем объективными? код теста в студию.
данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение