Intel C/C++ Compiler 8.0

Címkék

Megjelent az Intel C/C++ fordítójának legfrissebb verziója. Annak a fordítónak, amely egy időben rávert a GNU CC-re fordítási sebességben. Hogy most hogy áll a ICC vs. GCC harc azt nem tudom, de a mostani kiadásban állítólag sokkal jobb gcc forrás és bináris kompatibilitást lehet találni, mint a korábbi verziókban.

Az ICC 8.0 linuxos verziójának honlapja itt. Evaluation verzió letöltése itt.

Hozzászólások

Az Evaluation verzio kifejezesbol arra kovetkeztetek a hogy fizetos a compiler. Nemmindegy mennyi ido alatt fordit le egy compiler kodot, ha ingyen van (es nem torekszik huzni a forditasi idot?:)

Gepido van, penzben meg kifizetodobb - nagy programok eseten meg ugyis meg kell tervezni az idoszakos teljes forditasokat.

abban is, es forditasi sebessegben is. es szerintem nem mindegy, hogy egy fordito mennyi ido alatt fordit le egy kodot (valaszolva az elso kerdesre).

most nem a Hello World-re kell gondolni, hanem mondjuk egy FreeBSD-s buildworld-re, egy gentoo-s rendszertelepitesre, egy KDE fullos leforditasara. Hogy lenne mindegy?

>Nemmindegy mennyi ido alatt fordit le egy compiler kodot, ha ingyen van (es nem torekszik huzni a forditasi idot?:)

Mint ahogy pozsy is irta, a generalt binarisok is sokkal gyorsabban futnak. Odalinkeltem egy gcc vs. icc osszehasonlitast, csak nem olvastad el. :-)

Sajat celra (non profit) eddig ingyenes volt a 7-es verzio. A 8-as nem tudom, utana kellene nezni.

http://www.hearne.co.nz/cgi-bin/news.cgi?news_id=166&cat_id=11

"The MySQL database is designed from the start to maximise speed," said David Axmark, co-founder and vice president of MySQL AB. "The new Intel C++ Compiler 8.0 amplified this native speed with proven performance gains of more than 20 percent** over using GCC3.3, extending MySQL's position as one of the fastest, most popular databases in the world."

** http://www.intel.com/performance/resources/limits.htm

Azért problémák is vannak vele. Igaz, 8.0-t még nem próbáltam, de pl a hetesnél, ha GNU libc-s regex.h-t includeolt az ember, akkor nem fordult le a kód. Teljesen úgy nézett ki, mintha a makrókat nem expandolná..

(Van az egy #define _RE_ARGS(x) x makró, fordításnál meg arra panaszkodik, hogy _RE_ARGS undefined. Ha icc -E -t hívok, akkor korrektul expandolja)

Ez enyhén szopás, finoman szólva.. Remélhetőleg javították a hibát, mert bár a fordítási sebesség és a kód sebessége nem érdekel (úgysem x86-ra fordítok :P), az ICC-nek NAGYON jó hibaüzenetei vannak. Jópár apróbb bugot megfogott már, amit gcc vagy forrás ellenőrzők nem mindig találtak meg.

>Remélhetőleg javították a hibát, mert bár a fordítási sebesség és a kód sebessége nem érdekel (úgysem x86-ra fordítok :P), az ICC-nek NAGYON jó hibaüzenetei vannak. Jópár apróbb bugot megfogott már, amit gcc vagy forrás ellenőrzők nem mindig találtak meg.

Ez jol hangzik. Miota konyorgok mar az MPlayer fejlesztoknek, hogy legyen vegre ICC support is (igaz, al3x?) :-) Egyszer tettunk is ra egy gyenge probalkozast, de valamiert megakadt.

Viszont a FreeBSD-sek egesz kernelt forditanak vele. A 2.6-os Linux kernelt meg nem probaltam meg leforditani, de a 2.4-es patchelve fordult a 7-essel. Ha igaz, hogy ebben javitott gcc kompatibilitas van, nekem az lenne az igazi merce erre, hogy a Linux kernel patcheles nelkul lefordulna.