13. 5. 1999 | ![]() ![]() ![]() ![]() ![]() |
...by mohl být běh všech programů, pokud používáte některý z procesorů Pentium, případně K6. To vše díky kompilátoru PentiumGCC, který by měl produkovat kód optimalizovaný právě pro zmiňované procesory. Slibované zrychlení je 2 až 30%. A jak to vypadá v praxi?
Kompilátor PentiumGCC (pgcc) vychází z gcc a egcs a zaměřuje se na podporu x86 procesorů.
Na počátku byla snaha Intelu dokázat, že lze kompilátor gcc optimalizovat pro procesory Pentium
tak, že dojde až ke 30% nárůstu výkonu aplikací. Poté, co se jim to povedlo, ukončili vývoj
a uvolnili zdrojové kódy, jejichž přímým následníkem pgcc je.
Pgcc lze získat jak v podobě zdrojových kódů, tak i
jako binárky pro různé platformy. Já jsem použil binární distribuci a musím zkonstatovat, že
navzdory tomu, co se píše ve FAQ, jsem měl s instalací celkem problémy. Podle autorů stačí rozpakovat
archív na správné místo a tím by mělo být vše hotovo. V mém případě však ještě bylo nutné nastavit
korektně proměnnou prostředí COMPILER_PATH.
Po instalaci jsem se už mohl vrhnout na testování. Jako ideální testovací subjekt se mi jevil
linuxový port benchmarku BYTEmark verze 2.
Vytvořil jsem si testovací binárky pomocí gcc, egcs a pgcc a ty jsem pak jednu po druhé za
více méně stejných podmínek spustil. Tyto testy probíhali na počítači s procesorem AMD K6 200MHz.
Počítač s originál Pentiem jsem bohužel neměl k dispozici. Výsledky vidíte v následující tabulce:
test | gcc 2.7.2.3 | egcs 1.0.2 | pgcc 1.1.3 |
---|---|---|---|
NUMERIC SORT | 107.600 | 107.920 | 110.96 |
STRING SORT | 12.044 | 11.741 | 11.287 |
BITFIELD | 1.6504e+07 | 2.2624e+07 | 2.3688e+07 |
FP EMULATION | 5.9952 | 5.9761 | 6.2647 |
FOURIER | 1393.2 | 1865.4 | 1871.1 |
ASSIGNMENT | 0.99682 | 1.01900 | 0.8259 |
IDEA | 186.43 | 186.15 | 151.63 |
HUFFMAN | 89.734 | 81.619 | 100.840 |
NEURAL NET | 1.0523 | 1.1219 | 1.1062 |
LU DECOMPOSITION | 22.037 | 24.771 | *) |
Autor: Michal Krause (jiné články tohoto autora)
Sekce: Praxe
13. 5. 1999 15:38:16 - Peknej clanek, ale doporucuji ... (Karel Zak)
Peknej clanek, ale doporucuji podivat se treba
i na http://www.gnu.cz/gcc.html. Tam se autor pokusil
udelat test o Pentiu na Pentiu :-)))
Ostatne bylo by zajimave udelat stejny test na Pentiu
a srovnat to s vysledky na AMD. Coz?
14. 5. 1999 13:58:53 - Pokud pgcc krachne na jednom z... (Mikulas Patocka)
Pokud pgcc krachne na jednom z deseti testu,
tak musi byt uplne nepouzitelne, ne? Uz se vidim,
jak ve svem programu hystericky hledam chybu,
ktera je v kompilatoru...
![]() ![]() ![]() ![]() ![]() |