Разница между Visual C ++ 2008 и 2005 - PullRequest
2 голосов
/ 23 сентября 2008

Я не смог найти никакой полезной информации на сайте Microsoft, поэтому возникает вопрос: значительно ли улучшился компилятор в Visual C ++ 2008 по сравнению с версией 2005 года? Я особенно ищу лучшую оптимизацию.

Ответы [ 5 ]

6 голосов
/ 23 сентября 2008

Прямо изо рта лошади ...

http://msdn.microsoft.com/en-us/library/bb384632.aspx

2 голосов
/ 23 сентября 2008
0 голосов
/ 23 сентября 2008

Вы смотрели здесь , здесь или здесь ?

Если да, и никакой информации там не было, вы можете сначала проверить версию компилятора (cl.exe), версию компоновщика (link.exe), а затем выполнить некоторые тесты производительности (оптимизационные тесты) и посмотреть, кто победит.

Обычно более новая версия cl.exe будет лучше. Не то же самое можно сказать о UserInterface Visual Studio (по крайней мере, из моего опыта).

0 голосов
/ 23 сентября 2008

По моему опыту, оптимизация компилятора редко улучшается более чем на несколько процентов между версиями; если вам действительно нужно больше производительности, то эти несколько процентов просто не снизят ее - вам придётся разбираться в коде, если вам нужно больше.

Помните, что компиляторы чрезвычайно глупы и обычно могут быть обмануты умным программистом; Единственный вопрос - стоит ли ваше время и усилия для этого? Если у вас есть одноядерная функция, которая занимает 90% вашего процессорного времени, это определенно может быть так. Если время выполнения распределено по десяти тысячам строк кода, вероятно, нет.

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

0 голосов
/ 23 сентября 2008

По словам одного из наших старших разработчиков, в VS2008 реализована расширенная поддержка многоядерной компиляции (как мне сказали, для файлов, а не для проектов), поэтому для вашего проекта может быть разумная оптимизация производительности.

...