Как стать автором
Обновить

Комментарии 53

Внезапно люди на хабре новичку за неплохую статью уже насрали в карму из-за встретившегося слова Gentoo? Тьфу, бля, даже противно. Автор, не обращай внимания на таких мудаков и пиши дальше, статья отличная, спасибо.
И мне статья понравилась.
Статья — тупой копипаст с вики и причем неполный
Вы не правы. Да, я читал вики до этого (иначе бы не было и этой статьи), однако статью писал, не используя никаких других ресурсов. Сейчас посмотрел — действительно, очень похоже на перевод, но это не так.
Читайте комменты ниже, на авторство скриптов я и не претендую
убогий копипаст.
Да всё с вики, для того она и придумана. А автору спасибо потому, что я бы и не узнал не о каких альтернативных компиляторах и соответственно не стал бы копать в этом направлении. Тут его задача донести до читателей о такой возможности. Так как это хабр всё же, то необходимо писать не тупо — «Ребята есть альтернативный способ, вот ссылка». А рассказать о плюсах, минусах, что да как.
ты еще скажи, что гента один в один как с сайта gentoo.org. понятно человек пишет статью, собирая информацию с интернета(газет/новостей)
Я тоже на генту, буду пробовать!

Но один вопрос только — много ли встретилось не собравшихся пакетов при сборе системы (скажем, до уровня иксов + кде/гном)?
Я не стал рисковать и пересобирать всю систему, ограничился аудио- и видео-кодерами и архиватором.
А вот Qt (4.6.1) им точно не собирается
Надо не всю систему, а только выборочные пакеты, в вики есть небольшой список. Собрал gimp но он у меня файлы отказывался открывать. Ещё говорят можно python собрать, но я не рискнул, ибо вся система портежей на нём закручена.
не понимаю, за что недолюбливают генту, очень хороший, добротный дистр
За ее пользователей ;-}
хорошая gentoo статья, продолжай в таком духе

от себя добавлю что пользователям AMD процессоров на icc лучше не смотреть-прироста производительности не будет, даже наоборот
www.opennet.ru/opennews/art.shtml?num=24891
Тут есть над чем порассуждать. Впрочем, для укрощения ICC на AMD и вправду нужно извернуться так, что проще забить и заюзать GCC.
ну не скажите, патчи на ICC вроде есть даже где то в недрах генту-вики, это не сложно
а «использовать технологию виртуализации» это уже попахивает бредом :)
Она вообще то из gentoo-wiki, вообще я с icc баловался, но овчинка выделки не стоит
Скрипт — да, из вики, немножко изменен. А статью сам писал
НЛО прилетело и опубликовало эту надпись здесь
У меня в кроне стоит синк и обновление в три часа ночи. Итого я просыпаюсь, а софт уже свежий. Ну а если иногда что-то новое надо поставить — ну не больше часа-двух, если нечем больше заняться.
НЛО прилетело и опубликовало эту надпись здесь
Я так дообновлялся %)
зря думаете что gentoo — это сплошная компиляция ;)
Gentoo — это не только свежий софт, но и 2-3 ценных диетическиих компилятора =))
последний раз когда я его пробовал он (icc) страдал сильнейшим когнитивным диссонансом при виде c++
Конечно, ведь С++ компилятор Интел зовется icpc, а не icc. Это как gcc и g++.

А если серьезно — фронтенд действительно парсит C++ up to the spec, так как и пишется людьми из C++ commitee. Не знаю, плюс это или минус. Но проблемы бывают.
тогда с с++ были сплошные проблемы, чуть более менее сложная зависимость между шаблонами, ицц становится слепым и беспомощным: «ничего не вижу, ничего не знаю, ваших параметров шаблона вывести не могу, не понимаю, не умею»
en.gentoo-wiki.com/wiki/Intel_C%2B%2B_Compiler Оф. мануал, цифры в таблице сравнения производительности заинтересовали, как-то не очень верится что разница настолько существенна
В общем погуглил на тему производительности, есть даже проект www.linuxdna.com/ — свежие ядра оптимизиролванные для сборки icc.
В среднем разница, судя по отзывам, 8-9%, но сильно страдает стабильность, так что для себя пока не вижу смысла
Спасибо! Прирост скорости улыбнул, но, пожалуй, подожду, пока они допилят совместимость с gcc
Без озвучки флагов (CFLAGS, CXXFLAGS) данные по приросту скорости, мягко говоря, не интересны.
CFLAGS="-O2 -pipe -mtune=native -march=native -mmmx -mcx16 -msse -msse2 -mssse3"
CXXFLAGS="${CFLAGS}"
ICCCFLAGS="-O2 -xT -gcc"
ICCCXXFLAGS="${ICCCFLAGS}"
> CFLAGS="-O2 -pipe -mtune=native -march=native -mmmx -mcx16 -msse -msse2 -mssse3"

-march=native должно само включать "-mtune=native -mmmx -mcx16 -msse -msse2 -mssse3"

Кроме того, учитывая надежность icc, корректней было бы сравнивать с -O3.
Да еще бы и с graphite…
тока хотел спросить про флаги и про архитектуру (64 или 32). сам месяяца 3-4 назад перешел на 64(не было надобности, ибо почти не пользуюсь программами, которые требуют проц на полную) и как раз в новом гсс (тогда он был еще замаскирован) появился флаг native (с какой версии там кстати?). так прирост был большой, компиляция в несколько раз быстрее и кодирование видео в пару раз быстрее. так что надо таблицу с архитектурами и флагами разными.
а вы не пробовали с флагами ковыряться?
Меня вот всегда мучала мысль, что если в gcc правильно понавтыкать флаги, то код получится ничуть не хуже чем у icc.
Например, тот же -03, -ftree-vectorize и т.д.
Было бы интереснее clang присобачить, он хотя бы свободный
Ну что ж. Будем ковырять :)

Спасибо автору за статью.
Спасибо! Было интересно читать.
Я раньше использовал icc в генту, но отказался. Действие сопостовимо с наркотиком. Сначала все собирается, потом привязывается к либам icc. А потом, ВНЕЗАПНО, что-то не собирается. А gcc не собирает, потому что тоже что-то неподходит. И привет revdep-rebuild. А еще хуже, когда в новой версии цомпилятора выкидывают какую то либу, с которой все скомпилено было раньше. И получаются клещи. Воющем я отказался. Стабильность лучше
Любопытно, прирост очевиден. А для Debian/CentOS есть пакеты (либо сами системы в виде сборок), перекомпилированные таким-же макаром с расчётом на Intel-процессоры?
Не знаю, могу предложить собрать самостоятельно в чруте. Наверное, есть более более юзер-френдли способ
НЛО прилетело и опубликовало эту надпись здесь
собираю миднайт комадер tcc-ой, по сравнению с gcc компилит быстрее раза в 2-3…
то что компилит быстро, это еще не показатель того что собранное приложение будет быстрее
мне не нужно чтобы быстро работало, мне нужно чтобы быстро компилило, разные задачи у нас. Я просто очень много и нудно пишу своего и тестирую чужого… собирать приходится много и нудно…
а если GCC собрать с помощью ICC, он будет круче?:)
Ну вообще-то при сборке gcc bootstrap'ится, т. е. сначала собирается внешним компилятором, а потом сам себя пересобирает два раза, т. е. если на первом шаге что-то изменится, то на втором все изменения будут потеряны. И вообще icc не соберет gcc AFAIK
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации