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)

Ждём скомпилированное ядро.

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

Дада, у фороникса появился билд с надписью GLPv3 в инсталляторе. Скоро выложат исходники.

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

The Linux kernel can even be built with this high-performance compiler after applying a trivial patch.

С фороникса

madgnu ★★★★★
() автор топика

> Поддержка Fortran 90/95 и 2003

Это радует. Интересно, как он супротив Intel Fortran.

Vadim_Z
()

> Исходный код доступен под лицензией GPLv3

Прямую ссылочку на сырец в новость можно?

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

>Интересно, что повлияло на из решение открыть исходники.

почитали лоровских аналитиков, поняли 0 другого выхода нет

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

Интересно, что повлияло на из решение открыть исходники.

отсутствие спроса/интереса?

Sith ★★★★★
()

Не пробовал, но на сайте Abinit, вроде, видел сравнение, где этот Abinit, собранный Patscale, на Athlon X2 обгонял Abinit, собнанный интеловским компилятором, на Core Duo.

question4 ★★★★★
()

Дайте угадаю! Не осилили C++0x, поэтому решили заимплементить за счет сообщества.

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

Читал. Про тарбол речи и не было. Просто чтобы было про github.com/path64 в теле новости, а не в комментариях.

Lumi ★★★★★
()

gcc это ж типичный красноглазый опенсурс, чего вы от него ждали., он сливает любой шароварной поделке..

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

> Интересно, что повлияло на из решение открыть исходники.

clang?

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

gcc это ж типичный красноглазый опенсурс, чего вы от него ждали., он сливает любой шароварной поделке..

Если «любые шароварные поделки» - это два с половиной крутых компилятора, заточенных под определённые процессоры, то да, сливает 8).

Deleted
()

Ну и чудно!

Кстати а почему такая анти gcc-я реклама? Писали бы уж прямо, что на 270% быстрее icc.

alpha2
()

> Генерирует значительно более быстрый код, чем GCC

Ждём патчей для.

geekless ★★
()
Ответ на: комментарий от Deleted
Generating ../../../lib/x8664/mfef95
Built target compiler-stage-C
Scanning dependencies of target pscrt_p-x86_32
Scanning dependencies of target pscrt-static-x86_32
[ 38%] [ 38%] Generating pscrt-static-x86_32/malloc_opt_c.o
[ 38%] Generating pscrt_p-x86_32/malloc_opt_c.o
Built target switch_fc
gcc: malloc_opt_c.o: Нет такого файла или каталога
gcc: неопознанный ключ '-PHASE:w:c'
gcc: malloc_opt_c.o: Нет такого файла или каталога
gcc: неопознанный ключ '-PHASE:w:c'
make[2]: *** [src/libpscrt/pscrt_p-x86_32/malloc_opt_c.o] Ошибка 1
make[1]: *** [src/libpscrt/CMakeFiles/pscrt_p-x86_32.dir/all] Ошибка 2
make[1]: *** Ожидание завершения заданий...
make[2]: *** [src/libpscrt/pscrt-static-x86_32/malloc_opt_c.o] Ошибка 1
Scanning dependencies of target compiler-stage-CXX
make[1]: *** [src/libpscrt/CMakeFiles/pscrt-static-x86_32.dir/all] Ошибка 2
[ 38%] Built target compiler-stage-CXX
make: *** [all] Ошибка 2
cmake -DPATH64_ENABLE_TARGETS=x86_32 -DPSC_CRT_PATH_x86_32=/usr/lib -DPSC_DYNAMIC_LINKER_x86_32=/lib/ld-linux.so.2 -DPSC_LIBSUPCPP_PATH_x86_32=/usr/lib/gcc/i686-pc-linux-gnu/4.5.2/ -DPSC_LIBSTDCPP_PATH_x86_32=/usr/lib/gcc/i686-pc-linux-gnu/4.5.2/ -DPSC_LIBGCC_PATH_x86_32=/usr/lib/gcc/i686-pc-linux-gnu/4.5.2/ -DPSC_LIBGCC_EH_PATH_x86_32=/usr/lib/gcc/i686-pc-linux-gnu/4.5.2/ -DPSC_LIBGCC_S_PATH_x86_32=/usr/lib/gcc/i686-pc-linux-gnu/4.5.2/ ..

таки дела

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

не соберёшь

[2011.06.15 14:22:59] ivan.mironov@ivan-laptop ~/downloads/path64-compiler-90c8c5d/build
$ ./bin/pathcc --version
Path64 Community Compiler: Version 4.0.10
Built on: 
Thread model: posix
GNU gcc version  (PathScale 4.0.10 driver)

Copyright PathScale Inc.  All Rights Reserved.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Собрать то собрал, но всех фич видимо пока нет, так как их ещё не открыли.

А вообще не плохо бы узнать: как вообще определить - тот самый это компилятор или пока еще не до конца тот самый? =)

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

Столлман - это типичный красноглазый опенсурс

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

давай ключики

В смысле ключики для cmake'а? Там в README есть:

   Example for x86_64 target:
   cmake -DCMAKE_BUILD_TYPE=Debug \
         -DPATH64_ENABLE_TARGETS="x86_64" \
         -DPATH64_ENABLE_MATHLIBS=ON \
         -DPATH64_ENABLE_FORTRAN=ON \
         -DPSC_CRT_PATH_x86_64=/usr/lib64 \
         -DPSC_DYNAMIC_LINKER_x86_64=/lib/ld-linux-x86-64.so.2 \
         -DPSC_LIBSUPCPP_PATH_x86_64=/usr/lib/gcc/x86_64-linux-gnu/4.4 \
         -DPSC_LIBSTDCPP_PATH_x86_64=/usr/lib/gcc/x86_64-linux-gnu/4.4 \
         -DPSC_LIBGCC_PATH_x86_64=/usr/lib/gcc/x86_64-linux-gnu/4.4 \
         -DPSC_LIBGCC_EH_PATH_x86_64=/usr/lib/gcc/x86_64-linux-gnu/4.4 \
         -DPSC_LIBGCC_S_PATH_x86_64=/usr/lib/gcc/x86_64-linux-gnu/4.4 \
         <path_to_sources>
Просто надо пути подправить под конкретную систему.

Deleted
()
Ответ на: комментарий от one_more_hokum
case $machine in
    mips64*)        targets='mips_32=-mabi=n32 mips_64=-mabi=64' ;;
    x86*64*|amd64*) targets='x86_64=-m64 x86_32=-m32'            ;;
    x86*|i?86*)     targets='x86_32=-m32'                        ;;
    *)              echo "Unsupported machine $machine"; exit 1  ;;
esac
megabaks ★★★★
()
Ответ на: комментарий от megabaks

У меня fedora 15 amd64. Пути сделал такие:

cmake -DCMAKE_BUILD_TYPE=Release \
         -DPATH64_ENABLE_TARGETS="x86_64" \
         -DPATH64_ENABLE_MATHLIBS=ON \
         -DPATH64_ENABLE_FORTRAN=ON \
         -DPSC_CRT_PATH_x86_64=/usr/lib64 \
         -DPSC_DYNAMIC_LINKER_x86_64=/lib/ld-linux-x86-64.so.2 \
         -DPSC_LIBSUPCPP_PATH_x86_64=/usr/lib/gcc/x86_64-redhat-linux/4.6.0 \
         -DPSC_LIBSTDCPP_PATH_x86_64=/usr/lib/gcc/x86_64-redhat-linux/4.6.0 \
         -DPSC_LIBGCC_PATH_x86_64=/usr/lib/gcc/x86_64-redhat-linux/4.6.0 \
         -DPSC_LIBGCC_EH_PATH_x86_64=/usr/lib/gcc/x86_64-redhat-linux/4.6.0 \
         -DPSC_LIBGCC_S_PATH_x86_64=/usr/lib/gcc/x86_64-redhat-linux/4.6.0 \
         ..

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