Překladač Intel C++

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání

Překladač Intel C++ (anglicky Intel C++ Compiler, známý též pod jmény icc nebo icl) popisuje skupinu překladačů jazyka C/C++ od společnosti Intel. Tyto překladače jsou k dispozici pro platformy Linux, Microsoft Windows a Mac OS X. Podporují kompilace pro architektury procesorů IA-32, Intel 64, Itanium 2 a XScale a to včetně nových sad instrukcí, které tyto procesory obsahují (včetně SSE, SSE2 a SSE3 SIMD a již starší instrukce MMX a MMX 2). Překladače Intel C++ také podporují jak OpenMP, tak i automatickou paralelizaci symetrického multiprocesoringu.

Tyto překladače patří do rodiny překladačů tzv. Edison Design Group, ve které jsou společnosti jako SGI MIPSpro, Comeau C++, Portland Group a další. Jsou používány při testování výkonu procesorů jako je SPEC CPU, benchmark pro architektury IA-32, x86-64 a Itanium 2.

Optimalizace[editovat | editovat zdroj]

Intel stále pracuje na optimalizaci kódu překladačů pro svůj hardware za účelem odladění chyb a kvůli co možná nejnižšímu vytížení procesoru. Intel C++ Compiler podporuje tři základní techniky pro optimalizaci kompilovaného programu. Jsou to: optimalizace mezi procedurami „Interprocedural optimization“ (IPO), optimalizace v závislosti na profilu „Profile-Guided Optimization“ (PGO) a vysokoúrovňové optimalizace „High Level Optimizations“ (HLO).

Jazyky[editovat | editovat zdroj]

Balíček překladačů společnosti Intel se zaměřuje hlavně na jazyky C, C++, a Fortran.

Podporované architektury[editovat | editovat zdroj]

Verze[editovat | editovat zdroj]

Některé důležité aktualizace do listopadu 2007:

Verze kompilátoru Datum vydání Významné změny
Intel C++ Compiler 10.1 7. listopad 2007 Nová knihovna OpenMP*: při použití této knihovny je možné používat knihovny vytvořené ve Visual C++. Pro použití těchto nových knihoven je nutné zavést příkaz "-Qopenmp /Qopenmp-lib:compat" ve Windows či "-openmp -openmp-lib:compat" v systému Linux
Intel C++ Compiler 10.0 5. červen 2007 Optimalizace překladačů pro vícejádrové procesory Intel.
Intel C++ Compiler 8.1  ? Podpora architektury AMD64 (pro Linux).
Intel C++ Compiler 7.1  ? Částečná podpora pro Intel Pentium 4 s (SSE3).

Experimentální a Alfa verze[editovat | editovat zdroj]

Pro doplnění – byly vydány i tyto Experimentální verze:

Verze kompilátoru Datum vydání Významné změny
Kompilátor Intel STM Prototype Edition 17. září 2007 Tato experimentální verze kompilátoru Intel přináší podporu pro "Software Transactional Memory" (STM). Tato verze STM kompilátoru je napsaná pro operační systémy Linux a Windows, produkuje 32 bitový kód pro procesory x86 (Intel a AMD). Intel zde přišel s myšlenkou ulehčení programování vícevláknových aplikací. STM kompilátor vyžaduje předchozí instalaci kompilátoru Intel.

Přepínače a parametry[editovat | editovat zdroj]

Windows Linux Komentář
/Od -O0 Bez optimalizace
/O1 -O1 Optimalizace velikosti
/O2 -O2 Optimalizace rychlosti
/O3 -O3 Nastaví stejné optimalizace jako O2, ale přidává optimalizaci „intensive loop“
/fast -fast Zkratka. Ve Windows má stejnou funkci jako "/O3 /Qipo /xT /no-prec-div" v Linuxu "-O3 -ipo -static -xT -no-prec-div". Parametr (-xT) se mění v závislosti na verzi kompilátoru. Tato zkratka je tedy užitečná při vydávání dalších verzí programu.

Ladění[editovat | editovat zdroj]

V kompilátoru Intel jsou ladící prvky ze standardních debuggerů (DWARF 2 pod Linuxem, podobný gdb a COFF ve Windows). Parametry pro kompilaci s ladícím režimem jsou /Zi ve Windows a -g v Linuxu.

Intel také dodává vlastní debugger nazvaný idb, který může běžet jak pod dbx tak i v příkazovém řádku kompatibilním s gdb.

Intel poskytuje profilovací program na úrovni jádra s názvem VTune. VTune má uživatelsky přívětivé GUI (integrováno ve Visual Studiu pro Windows a v Eclipse pro Linux) a také možnost ovládat ho z příkazového řádku.

Externí odkazy[editovat | editovat zdroj]

V tomto článku byl použit překlad textu z článku Intel C++ Compiler na anglické Wikipedii.