Название: Сравнение компиляторов по скорости выполнения программы Отправлено: Cyrax от Октябрь 26, 2006, 18:00 Хочу сравнить скорость выполнения простенькой программы, освобождающей память, написанной на C++ и на C#. В С++-коде освобождаю сам, в C#-коде - мусорщик...
Для начала скомпилил (g++ -O3) код: Код:
Получил 15451 байт. Далее скомпилил в VS2005 код: Код:
Получил 5632 байта. Это что, выходит в VS2005 компилятор втрое лучше оптимизирует код, чем g++ ? Название: Сравнение компиляторов по скорости выполнения программы Отправлено: Admin от Октябрь 26, 2006, 22:33 оптимизация и размер кода разные понятия!
после gcc к примеру используют программку strip а во время компиляции VC что то типа /ref команды оптимизация чаще оценивается на скорости! а не на выделении памяти! Название: Сравнение компиляторов по скорости выполнения программы Отправлено: Вудруф от Октябрь 27, 2006, 07:06 Во-первых, я поменял местами сравнение и инкремент.
strip --strip-unneeded В моём случае итоговый размер программы получился равен 44344 (21365 после strip). Но! -o3 - это агрессивная оптимизация, помимо всего прочего, она может раскручивать циклы, что естественно приведёт к увеличению размера программы (но сократит время выполнения). Впрочем, в данном случае размер программы получается одинаковым. И ещё - не надо гнаться за размером. Это не показатель. |