1) Как можно сравнить производительность используя разные версии STL?
2) Не указаны ключи компиляции для разных компилеров
3)
Кроме того, для Borland Builder была добавлена опция --fast-call — передача параметров через регистры (Intel Compiler, MSVC++ и gcc автоматически используют передачу параметров через регистры при использовании оптимизации по скорости
Повидимому, автор не совсем владеет предметом.
4) Анализ ассемблерного кода — это вообще шедевр .
5) Вывод тоже хорош: лучший компилер всех времен и народов — Borland Builder C++.
"For every complex problem, there is a solution that is simple, neat,
and wrong."
Здравствуйте, Аноним, Вы писали:
А>http://www.citforum.ru/programming/C_comp/
А>Есть анализы "посвежее" ?
Самый "свежий" анализ в бусте. Заходишь в "boost/config/compiler" и считаешь сколько
макросов с именем "BOOST_NO_????" определено для компилятора в интересующей версии.
В результате принимаешь решение является ли этот компилятор компилятором C++ или какого-то другого языка...
__________
16.There is no cause so right that one cannot find a fool following it.
Здравствуйте, Аноним, Вы писали:
А>http://www.citforum.ru/programming/C_comp/
А>Есть анализы "посвежее" ?
Однажды в какому-то номере журнала "Программист" была статья Криса Касперски про сравнение компиляторов. Где то она и в сети есть, а скорее всего и в архиве www.programme.ru.
Имхо, очень неплохая стаьтя. Сравнивал он там WatCom 10, VC6 и какой-то, сори не помню, бильдер.
Очень неплохой анализ, куча информации и статистики по свертке функций, переменных, циклов, оптимизации потока данных, ну в общем на полную катушку по теории компиляции. Он даже про единое промежуточное представление что-то написал там. В общем, имхо весьма грамотная статья.
В общем как раз про именно ту часть компилятора которая называется front-end (разбор и все прочее, и генерация промежуточного представления). А кодогенерация имхо очень сильно будет зависеть от целевой плаформы — пример связки VC+Inter C++ Compiler это по моему, неплохо демонстрирует
Carc wrote: > А>Есть анализы "посвежее" ? > Однажды в какому-то номере журнала "Программист" была статья Криса > Касперски про сравнение компиляторов. Где то она и в сети есть, а скорее > всего и в архиве www.programme.ru <http://www.programme.ru>.
"Программист" загнулся вместе с сайтом. Я поискал — не нашёл. Хотя на
полке оно у меня лежит. > Имхо, очень неплохая стаьтя. Сравнивал он там WatCom 10, VC6 и какой-то, > сори не помню, бильдер.
Потом в следующей статье других авторов эти же тесты были прогнаны на
gcc и watcom 11. Злыми поклонниками watcom/openWatcom. > Очень неплохой анализ, куча информации и статистики по свертке функций, > переменных, циклов, оптимизации потока данных, ну в общем на полную > катушку по теории компиляции. Он даже про единое промежуточное > представление что-то написал там. В общем, имхо весьма грамотная статья. > В общем как раз про именно ту часть компилятора которая называется > front-end (разбор и все прочее, и генерация промежуточного > представления). А кодогенерация имхо очень сильно будет зависеть от > целевой плаформы — пример связки VC+Inter C++ Compiler это по моему, > неплохо демонстрирует
Было дело. В исходном тесте всех (увы) обогнал VC, иногда обгоняемый ICC.
Здравствуйте, raskin, Вы писали:
R>Carc wrote: >> А>Есть анализы "посвежее" ? >> Однажды в какому-то номере журнала "Программист" была статья Криса >> Касперски про сравнение компиляторов. Где то она и в сети есть, а скорее >> всего и в архиве www.programme.ru <http://www.programme.ru>. R>"Программист" загнулся вместе с сайтом. Я поискал — не нашёл. Хотя на R>полке оно у меня лежит.
можна заглянуть на "клуб Весельчак У" (имхо, shelek.club.ru но точно не помню). Там бывают Икс человек из админов (Гром, Ack еще кто-то) старого сайта "Программиста" — и какие то части форумов и архивов у них есть.
Здравствуйте, Lepsik, Вы писали:
L>Здравствуйте, AndrewJD, Вы писали:
AJD>>5) Вывод тоже хорош: лучший компилер всех времен и народов — Borland Builder C++.
L>Если бы еще кто-то был не только писателем а читателем и увидел строчку :
L>---В забеге принимают участие компиляторы Microsoft Visual C++ 6.0, Intel C++ Compiler 4.5, Borland Builder 6.0, MinGW (портированный gcc) 3.2.
L>надеюсь ни у кого нет сомнений что компилятор VC6.0 был гораздо хуже BB 6.0 ?
BB 6.0 это компилятор языка C++?
Наверное какой-то урезанной версии языка..
... << А писал я этот бред на RSDN@Home 1.1.4 stable rev. 510, под звуки Led Zeppelin — The Battle of Evermore>>
> L>>надеюсь ни у кого нет сомнений что компилятор VC6.0 был гораздо хуже BB 6.0 ? > А>На моих задачах BB сливал вчистую и Intel 5.0 и VC6.0 > > ну тогда откомпилите такие строчки в vc6 > > >
> Здравствуйте, espider, Вы писали: > > > E>в VC7 откомпилил > > зачем мне VC2222 если сравнение идет про конкретные среды vc6 И bcb6 > > выйдет BCB.NET в ноябре тогда и сравнивать надо.
Ну если и VC6, возможно ли на bcb6 собрать exe (dll) размером не более 3 kb без CRTL. В VC6 возможно, для bcb6 нереально .
Попутно вопрос, почему bcb6 передает указатель this через стек, а не как vc6 через eax и что из них правельнее, то есть ближе к стандарту (ansi)? P.S.: Стоит отметить, что vc7 в этой части пошел по стопам bcb6
Здравствуйте, espider, Вы писали:
E>Ну если и VC6, возможно ли на bcb6 собрать exe (dll) размером не более 3 kb без CRTL. В VC6 возможно, для bcb6 нереально .
А зачем решать надуманные задачи?
E>Попутно вопрос, почему bcb6 передает указатель this через стек, а не как vc6 через eax и что из них правельнее, то есть ближе к стандарту (ansi)? P.S.: Стоит отметить, что vc7 в этой части пошел по стопам bcb6
Стандарт на этот счёт не распространяется, а VC6 и VC7.x и VC8, короче все VC, передают this в регистре ECX
Lepsik wrote:
> E>в VC7 откомпилил > зачем мне VC2222 если сравнение идет про конкретные среды vc6 И bcb6 > выйдет BCB.NET в ноябре тогда и сравнивать надо.
А можно что-нибудь посущественнее найти, чем поведение одного
_НЕСТАНДАРТНОГО_ макроса?