LINUX.ORG.RU

Открыт код компилятора EKOPath 4

 ekopath, ,


0

3

Компания PathScale открыла исходный код собственного компилятора EKOPath 4. До этого компилятор выпускался под проприетарной лицензией, стоимость одной лицензии составляла порядка $2000.

Основные возможности EKOPath 4

  • Генерирует значительно более быстрый код, чем GCC
  • Оптимизации под x86_64 (Intel® 64/AMD64, поддержка Intel® MMX™, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AMD SSE4A и AVX)
  • Поддержка ISO C99/C++ 2003 и расширений GNU
  • Поддержка Fortran 90/95 и 2003
  • Поддержка DWARF4 и совместимость с GDB

В сравнении, произведенном Phoronix, преимущество EKOPath 4 перед GCC 4.5.2 составляет от 8% до 270%.

Исходный код доступен под лицензией GPLv3, поддержка коммерческих версий будет продолжена.

Также компания в скором времени планирует выпустить под свободной лицензией «убийцу CUDA», собственную реализацию GPGPU. Stay tuned.

Тесты от Phoronix: 1 2 3

>>> Подробности

★★★★★

Проверено: JB ()
Последнее исправление: madgnu (всего исправлений: 1)

Ответ на: комментарий от uzbl

кстати, если заявлена сборка под 32(внезапно - она дефолтная) то она должна работать!
кстати2 - хде у этого недокомпилятора багтрекер?

megabaks ★★★★
()
Ответ на: комментарий от megabaks

А разве для компилера не target==host по-дефолту?

uzbl
()
Ответ на: gcc vs pathcc vs icc от sqee

PATHCC 4.0.10 in tmp


notebook _test # time nice -n -20 /opt/bin/xz < linux-3.0-rc3.tar | pipebench > /dev/null 
Summary:
Piped   63.78 MB in 00h06m05.83s:  178.52 kB/second

real    6m5.850s
user    6m2.626s
sys     0m0.706s

GCC 4.5.2 in tmp


notebook _test # time nice -n -20 /usr/bin/xz < linux-3.0-rc3.tar | pipebench > /dev/null 
Summary:                                                                       
Piped   63.78 MB in 00h05m47.13s:  188.14 kB/second

real    5m47.148s
user    5m44.135s
sys     0m0.603s

bhfq ★★★★★
()
Ответ на: комментарий от ratatosk

у GCC вот такие

cflags = -mtune=generic -march=x86-64 -O2 -pipe -fomit-frame-pointer -fstack-protector -D_FORTIFY_SOURCE=2 -ggdb3 -funwind-tables -fasynchronous-unwind-tables

у path64 без опций, с опциями -O2 -pipe -s -fomit-frame-pointer дает на 2 секунды медленее.

bhfq ★★★★★
()
Ответ на: комментарий от anonymous

> Нет тут следствия. Код большего размера может выполняться быстрее кода меньшего размера.

Больше кода - не значит медленнее.


берём helloworld.cpp, собираем g++: бинарник 9кб, собираем pathCC: 20кб/15Кб strip (наверно, из-за выравнивания секций), собираем pathCC -O3 -IPA => 2Мб (??? static сборка libc?)

А в остальных программах, где девелоперы специально не оптимизировали вызовы, O3 дает выигрыш.


ещё бывает, что -O3 включает LTO и межпроцедурную оптимизацию (-IPA)

anonymous
()
Ответ на: комментарий от megabaks

> под 32-бита не собираецо ---->не нужно

под 32 бита есть OpenWatcom. Правда, у него древний iostream и почти никакой STL, + шаблоны уровня 98 года, так что им хрен что соберёшь.

anonymous
()
Ответ на: комментарий от anonymous

он тупо не собирается - падает на неком
/some/path/table < /some/path2/OPTIONS.что_то
т.е. в сорсах кривой бинарь то ли искаропки, то ли собирается криво

megabaks ★★★★
()
Ответ на: комментарий от anonymous

вот

cd /var/tmp/portage/dev-lang/path64-9999/work/path64-9999_build/src/driver && ../../bin/table < /var/tmp/portage/dev-lang/path64-9999/work/path64-9999_build/src/driver/OPTIONS.P
/bin/sh: line 1: 22289 Ошибка сегментирования                   ../../bin/table < /var/tmp/portage/dev-lang/path64-9999/work/path64-9999_build/src/driver/OPTIONS.P
make[2]: *** [src/driver/check_combos.c] Ошибка 139
make[2]: Выход из каталога `/var/tmp/portage/dev-lang/path64-9999/work/path64-9999_build'
make[1]: *** [src/driver/CMakeFiles/driver_gen_sources.dir/all] Ошибка 2
make[1]: /usr/bin/cmake -E cmake_progress_report /var/tmp/portage/dev-lang/path64-9999/work/path64-9999_build/CMakeFiles 
*** Ожидание завершения заданий...
воспроизводимость 100%

megabaks ★★★★
()

[ 23%] Generating OPTIONS.P
[ 23%] Generating check_combos.c, implicits.c
Segmentation fault
make[3]: *** [src/driver/check_combos.c] Error 139
----
Ubuntu 10.04.2 LTS, 32 bit

FENix
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.