Компания AMD выпустила (http://developer.amd.com/tools/open64/pages/default.aspx) релиз компилятора AMD Open64 4.5.2, основанного на наработках поддерживаемого сообществом проекта Open64 (http://www.open64.net/), недавно отпраздновавшего (http://www.opennet.me/opennews/art.shtml?num=32275) релиз 5.0, и расширяющего его в плане поддержки оптимизаций для новых процессоров AMD. Компилятор AMD Open64 поддерживает языки Fortran 77/95 и C/C++, доступен для архитектуры x86 и отличается высоким уровнем оптимизации кода, в некоторых областях, позволяющих опередить по производительности итоговых исполняемых файлов проекты GCC и Clang. Код компилятора распространяется под лицензией GPLv2, что подогревает интерес к проекту компаний, не согласных с условиями лицензии GPLv3, под которой поставляется GCC.Среди новшеств, добавленных в AMD Open64 4.5.2:
- Поддержка 15 семейства процессоров AMD Opteron на базе ядра "Piledriver";
- Формирование 64-разрядной сборки AMD Open64;
- Улучшения в реализации возможностей расширенной векторизации;
- Поддержка инструкций AVX, XOP, FMA3, FMA4, BMI, TBM, F16C;
- Увеличение производительности и возможностей оптимизации LNO;
- Общие улучшения в оптимизаторе и генераторе кода
- Синхронизация с trunk-веткой компилятора от сообщества Open64.net;
- Расширенная поддержка платформ, в том числе SLES 11 sp2 и RHEL 6.3;URL: http://www.phoronix.com/scan.php?page=news_item&px=MTE1OTU
Новость: http://www.opennet.me/opennews/art.shtml?num=34572
А как там с c++11? И со сборкой под intel?
А зачем на нем собирать под интел?
Хотите интел - пользуйтесь icc.
потому как интеловские процы поддерживают AMD64, только зовется EM64T
Ваня, перелогинься.
читать умеешь? буковки осилишь?
http://ru.wikipedia.org/wiki/EM64T
вот еще немножко неосиляторам
http://en.wikipedia.org/wiki/X86-64#Intel_64
Тупо - пользуйте GCC и вам будет пофиг на каком процессоре оно будет жить.
То что в рекламе пишут - ерунда, чтобы реально эти проценты выиграть надо код менять.
> Тупо - пользуйте GCC и вам будет пофиг на каком процессоре оно
> будет жить.
> То что в рекламе пишут - ерунда, чтобы реально эти проценты выиграть
> надо код менять.А как там с gccизмами? Уже можно собирать без костылей?
>> То что в рекламе пишут - ерунда, чтобы реально эти проценты выиграть надо код менять.
> А как там с gccизмами? Уже можно собирать без костылей?Так GCCизмы - это расширение фич компилера в добавок к стандарту. По поводу чего он собирает и писаный по стандартам код, и даже кой-что сверх того. И да, учитывая как "часто" апдейтят стандарты - вкусные плюшки можно и устать ждать и принять их не обязаны с ножом к горлу. Откуда и GCCизмы.
> Так GCCизмы - это расширение фич компилера в добавок к стандарту.Будешь ручками в ядре все это исправлять?
__int128
unsigned __int128#pragma push
#pragma optimize
#pragma pop
#pragma pack(push[,n])
#pragma pack(pop)
#pragma weak
#pragma GCC visibility push(visibility)
#pragma push_macro()
#pragma pop_macro()__attribute__ ((always_inline))
__attribute__ ((pack(1,2)))
__attribute__ ((noreturn))
__attribute__ ((format(printf, 1, 2)))
__attribute__ ((aligned(8)))
__attribute__ ((__transparent_union__))
__attribute__ ((weak))
__attribute__ ((deprecated))
__attribute__ ((unused))__attribute__((section ("shared")
__attribute__((section ("initdata")
__attribute__((section ("stack")typeof() не все ещё вкуривают нормально.
#define alloca(size) __builtin_alloca (size)
>> Так GCCизмы - это расширение фич компилера в добавок к стандарту.
> Будешь ручками в ядре все это исправлять?В ядре это по другому "исправляется".
Вот тебе начальник поставил задачу, мол вышел Open64, хачу чтоб в пятницу
были результаты сравнений производительности ядра 3.5.1 c GCC 4.7 и Open64
Не успеешь, будет думать о необходимости дальнейшего сотрудничества. Время пошло!
> Вот тебе начальник поставил задачу, мол вышел Open64, хачу чтоб в пятницу
> были результаты сравнений производительности ядра 3.5.1 c GCC 4.7 и Open64
> Не успеешь, будет думать о необходимости дальнейшего сотрудничества. Время пошло!Начальник дурак?
Ну вообще-то это вы лохи, парсер пишется 2-3 часа.
ой. а костыли полезут какие в коде, или ошибки компилятора внезапные, приводящие к кернел паниковичу... много мелких неизвестных в твоей задаче, которые могут привести к определенной математической фигне, результат которой стремится к бесконечности.
да и вообще, программист сидит, типа, и в носу ковыряет, ожидая в натуре настоящих задач от шефа. \m/
Не теряй время, ищи нормальную работу.
> Вот тебе начальник поставил задачу, мол вышел Open64, хачу чтоб в пятницу
> были результаты сравнений производительности ядра 3.5.1 c GCC 4.7 и Open64
> Не успеешь, будет думать о необходимости дальнейшего сотрудничества. Время пошло!Ну и? Я делал это. Не с указанными версиями, потому как не вчера это было.
И open64 не вчера появился. И не AMD его придумал. AMD всего лишь дотачивает открытый проект (изначально - SGI'ный) под свой процессор, так же, как это делают NVIDIA и HP.
хе. с таками раскладами я бы тоже подумал о дальнейшем сотрудничестве.
> Вот тебе начальник поставил задачу, мол вышел Open64, хачу чтоб в пятницу
> были результаты сравнений производительности ядра 3.5.1 c GCC 4.7 и Open64
> Не успеешь, будет думать о необходимости дальнейшего сотрудничества. Время пошло!заявление на увольнение пишется намного быстрее, и в данной ситуации это будет намного разумней. надо очень сильно себя ненавидеть, чтобы работать с подобными идиотами.
> Будешь ручками в ядре все это исправлять?Не буду. Reason: меня gcc вполне устраивает. Пусть кому надо - тот и исправляет. Trollface.jpg
p.s. да, а еще подобные атрибуты очень удобно юзать в всяких фирмваринах, когда надо специально форсануть явным образом что в какую секцию попадет, понимать сколько это будет весить в граммах и потом надо самому скомпоновать кастомный бинарь из этого, который сам же потом и запускать будешь. Да, это - компилерозависимо. Потому что это вклинивание глубоко в анатомию работы тулчейна и его утилит, для ситуаций которые есть, но в стандарте никак не обрабатываются. И чего? Единственная альтернатива - ну разве что на асме писать. Вот ты ей и пользуйся наздоровье. Будет еще менее портабельно и куда геморройнее.
>И со сборкой под intel?работать будет
> Open64 4.5.2 does not fully support all intrinsics in SSE4.1, SSE4.2, SSSE3,
> ,pclmul, AES, given that Open64 uses GCC 4.2 front end. Open64 cannot package
> the newer header files from GCC 4.5.x or greater since these releases are under
> GPLv3 license.Мне кажется, о C++11 там можно даже и не мечтать. Может они в будующем переползут к llvm?
> Может они в будующем переползут к llvm?Не надо путать AMD с Apple.
вот и тут GNU GPL v3 не дает использовать код gcc в открытых проектах.
кто что кому не даёт???вот эталонная (рекомендованная FSF) форма лицензионного требования для файла исходного кода, программы под GNU GPL v2:
[quote]
This file is part of Foobar.Foobar is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.Foobar is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.You should have received a copy of the GNU General Public License
along with Foobar. If not, see <http://www.gnu.org/licenses/>.
[/quote]...
прочитайте и подумайте внимательно...
...либо AMD Open64 могут быть донароми для GCC, либо (если нет) это подлянка со стороны AMD Open64, а не со стороны GNU GPL
Распечатайте и сходите с этим в туалет.
это не форма GNU GPL v2, это v2 or later.
нормальные люди выбирают форму v2 only - ибо маразм GNU может завести далеко.
Примеры с запретом авторам менять лицензию - уже были.
>> Примеры с запретом авторам менять лицензию - уже были.Например? Тоже поддерживаю V2 против V3.
> это не форма GNU GPL v2, это v2 or later.
> нормальные люди выбирают форму v2 only - ибо маразм GNU может завести
> далеко.
> Примеры с запретом авторам менять лицензию - уже были.проектов v2 only -- во много раз меньше чем v2+ ..
обычно люди вообще пишут в README что это v2 (а формально предоставляют v2+)
> нормальные люди выбирают форму v2 onlyну, вот выбрали. сами, заметим. без давления. что выбрали — то и имеют. не нравится? какая досада! (ц) FSF разрабатывает свой софт так, как считает нужным.
> вот и тут GNU GPL v3 не дает использовать код gcc в открытых проектах. <GNU GPL v3 самый что ни на есть открытый проект. Никто не сможет его закрыть.
> Никто не сможет его закрыть.Так это и вызывает лютый батхерт у всяких там эпплов, которые любят делать себя первым сортом, а остальные - так, какая-то вонючая коричневая масса под ногами. Не понравилось - пнул - полетело прочь, дескать.
Открытый на столько - что позволяет себе указывать какую лицензию выбирать всему что с ним касается.
Собирал компилятором под MIT лициензией - а оооопа и код стал уже GNU GPL v3. А как же воля авторов?
использовал промежуточные файлы от компиляции - опа, обязан уже быть GNU GPL v3. Ох.. и тут авторов не спросили, просто выкрутили руки им и все.
Захотел взять несколько хидеров - опа, делай проект только под одной рассово верной лицензией.
А тут мы просто не даем делиться...
Вот такая она "свободная" лицензия - которая на проверку оказывается капканом и несвободной.
Компиляция с помощью gcc не заставляет вас распространять свою программу под GPL. Если же вы тесно линкуетесь с библиотекой, распространяемой под GPL, то у вас есть как минимум один вариант - проявите волю и напишите нужный вам функционал сами. Кроме того, можно попросить правообладателей предоставить эту библиотеку вам под другой, возможно, написанной лично под вас лицензией. Возможно, они уже предоставляют такой вариант. Пример - Qt4. Не устраивают GPL и даже LGPL? Пожалуйста, приобретай коммерческую лицензию."и тут авторов не спросили, просто выкрутили руки им и все."
Если авторы не потрудились вникнуть в лицензию ДО начала использования, то ССЗБ. О каком выкручивании рук речь?
>оказывается капканомкапканом для барыг, разве что, которые шибко любят под себя грести и продавать чужой труд, не особо оповещая
> Вот такая она "свободная" лицензия - которая на проверку оказывается капканом и несвободной.Скажите, вам за постинг бреда о GCC доплачивают, или вы сами такой махровый дурак?
Подсказываю: компилятор сам по себе никаких прав на мой код не получает. Как и его авторы. вот если я залинкуюсь с чем-то из какого-то кода под какой-то лицензией - я должен сие учесть. Однако это потому что я использую чужой код в своей программе, а не из-за компилятора.
> ...рассово вернойничего, первое сентября уже скоро!
Да и не нужно под Intel. Достаточно, что бы был хорошо оптимизированный компилятор C (C++ уже как бонус, не обязательно) под платформу от производителя. Что бы в проекте все узкие места, требуемые оптимизации, вынести в библиотеку, собрать соответствующими компиляторами и на target-платформах использовать её бинарники.
... и ловить эпические грабли!
Нет, уж лучше не снимая лыжи, в противогазе, стоя на руках, в гамаке ... :)
> И со сборкой под intel?С Intel работает нормально. Не знаю, как там точно с оптимизацией, но на простых тестах не уступает GCC. Хотя icc на Intel, конечно, получше будет :)
> поддерживает языки Fortran 77/95Гениально, когда уже давно придумали Fortran 2008 с параллелизацией...
Это Вас так волнует? У вас гора наработанных десятилетиями библиотек на фортране и lock на процессоры AMD?
да. где твой бог теперь?
> да. где твой бог теперь?Вы к чему тут о боге? У фортрана весьма специфичное место в настоящее время. Так что либо уговаривать разарботчиков (а раз у вас фортрановские библиотеки, смею предположить, что написание компиляторов не то на на чём вы специализируетесь и на что предпочли бы расходовать своё время), либо смириться с тем что есть.
Он используется, чтобы распараллелить на существующих процах вычислительные задачи. libatlas тому яркий пример
>что подогревает интерес к проекту компаний, не согласных с условиями лицензии GPLv3нафиг маргиналов!
>>что подогревает интерес к проекту компаний, не согласных с условиями лицензии GPLv3
> нафиг маргиналов!Правильно, кто не согласен - тому и флаг в руки поддерживать и развивать. Если развивалка не отвалится.
>>>что подогревает интерес к проекту компаний, не согласных с условиями лицензии GPLv3
>> нафиг маргиналов!
> Правильно, кто не согласен - тому и флаг в руки поддерживать и
> развивать. Если развивалка не отвалится.кто не согласен уже развивают, вон и дебиан посматривает в сторону llvm - а gcc чем дальше тем более становится уделом маргиналов и красноглазиков.. Ну чтож - желаю спокойной смерти.
>кто не согласен уже развиваютага, эппловцы и бсдшники? Эппловцы судятся за патенты, а бсдшники позади цивилизации.
>дебиан посматривает в сторону llvm
и правильно делает. LLVM - интересно. Но к компилятору C/C++ это имеет другое отношение.
>а gcc чем дальше тем более становится уделом маргиналов и красноглазиков
альтернативная реальность?)) шлангу не догнать GCC, смирись.
> кто не согласен уже развивают, вон и дебиан посматривает в сторону llvmОни и в сторону kfreebsdm посматривают. Правда он во всех бенчах сливает даже без всяких llvm, а если еще и им собрать все это до кучи - тогда даже маргиналы оттуда удрапают, потоум что слив в 3-4 раза по скорости ради расово верной лицензии - мало кому по вкусу.
а что под виндус компилятора нет?
> а что под виндус компилятора нет?Виднуз сдох!
> Виднуз сдох!Виндус капут! :)
Fortran? Кошерно!
Ура! Пыледрайвер! жду не дождусь :)