LINUX.ORG.RU

Какой компилятор даст самый быстрый код на x86 (i386)

 , , ,


1

3

Clang, gcc или icc? И я никак не могу понять, что такое gcc-llvm, и в чём его отличие от gcc, как им пользоваться блин в чужих проэктах с большим файлом сборки, а не моих? Зачем этот биткод вообще там нужен, и что с ним потом делать так и не разобрался.



Последнее исправление: gradle (всего исправлений: 4)
Ответ на: комментарий от menangen

И что за ссылки на мусорную пропаганду запартную ты мне даёшь? Собственное, как я и говорил - ты жертва пропаганды.

GCC8.3.1

Сразу на помойку. Это пропаганда.

SPEC CPU2017

Сразу на помойку - это не бенмарки. Это мусор. К тому же - где код? Нету кода - это пропаганда. Это ещё один критерий пропаганды.

Реальный бенчмарк - вот: https://benchmarksgame-team.pages.debian.net пробил очередное дно Я лучше тебе не буду говорить о том во сколько в нём сливает шланг. И по времени компиляции и по времени исполнения. У тебя совсем методичку пробьёт.

Я не перестаю удивлять тому - как же просто вас поиметь пропаганде. Ничего не писал, ничего об компиляторах и об оптимизациях не знает. Почитал пару агиток и побежал срывать покровы.

При этом агиткам он просто верит. Даже не возникает вопросов. Запомни, если ты не можешь воспроизвести результаты измерений - их не существует. Это аксиома. Нарушаю которую ты становишься жертвой пропаганды.

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

Да тс не на таком уровне щас находится. Ему нужен быстрый ответ. Типа: компилируй шлангом, он самый быстрый. А что, где, и почему, он разбираться не будет, так как голова у него другим занята 😀

К тому же, я сомневаюсь, что местные гуру хоть раз в жизни «2 дня» компилили, чтобы познать эту боль от сборки кучи C++

menangen ★★★★★
()
Последнее исправление: menangen (всего исправлений: 1)
Ответ на: комментарий от menangen

Что мне там читать? Я тебе уже всё сказал. Это мусорная пропаганда, основные тезисы я тебе дал. Гцц восьмой ветки протух тогда, когда писалась эта статья - признак пропаганды номе раз. Используется говнобенчмарк - это полное говно, которое целиком и полностью несостоятельно. Признак номер два.

Даже из этого мусорного набора берутся только пару тестов, хотя их там сотня. Почему? Третий признак пропаганды.

Кода нету - самый фундаментальный признак пропаганды. Всё, что не воспроизводи - то ложно. Это аксиома.

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

К тому же, я сомневаюсь, что местные гуру хоть раз в жизни «2 дня» компилили, чтобы познать эту боль от сборки кучи C++

Это да, здесь много тонкостей.
На habr имеются неплохие статьи.

Владимир

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

Молодец, быстро слился. К тому же, увидев соседнюю тему я вспомнил то, о чём забыл. Шланг говно ещё тем, что это багучее/падучее дерьмо. Оно падает у меня по 10 раз на дню. Что, собственно, произошло и в соседней теме. И что я уже десятки раз сюда постил.

Ты слаб. Не позволяй себе спорить со мною, когда я в любом случае выиграю. Потому как, в отличии от тебя и прочих пропагандистов, я знаю тему и живу с этими компиляторами. А так же я знаю эти язык, в отличии, опять же, от всяких пропагандистов десятого эшелона.

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

Я с тобой и не играю, а угораю над нелепостью твоих тезисов. Ты говоришь о коде, но сам ничего не привёл дельного, чисто бла-бла. Я тоже не лыком шит, и все эти GCC с Clang/LLVM собирал и распространял в билд фермах с 2010, и прекрасно знаю как они развиваются и все их тонкие места

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

Друже, GCC 4.8 в только вышедшем Suse Enterprise Linux 12SP5

И что, маня? Мне то что с этого? Шланга там вообще нет - дальше что? Ты обделался.

Они тоже пропаганде твоей помогают?

Я повторю - ты слишком слаб. Максимум что ты можешь - это опозориться. А теперь, собственно, умножаю на ноль:

Смотрим, когда высрали эту пропаганду:

Aug 29

Конец августа. Смотрим версии компиляторов:

Clang/LLVM 8.0 GCC8.3.1

Смотрим даты релиза:

20 Mar 2019 8.0.0 19 Jul 2019 8.0.1

Пропаганда нам не пишет полностью версию(что уже говорит, что о том, что это мусорная пропаганда). Но почему-то я уверен, что там был именно 8.0.1 вышедший месяц назад.

GCC 9.1 May 3, 2019

Таким образом, пропаганда взяла самую последнюю ветку шланга и самую последнюю версию доступную на текущий момент. Для gcc же взята протухшая ветка.

Всё, ты обгадился. Смотрим, как этот адепт будет оправдываться дальше.

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

Я с тобой и не играю

Ещё бы ты со мною играл. Как только ты начал со мною спор - ты обречён.

а угораю над нелепостью твоих тезисов

Ты уже обгадился, никаких пруфов не предоставив. А я предоставил. Не защищай тебя тебя здесь твои друзья по вере - я бы тебе быстро и чётко всё объяснил, хотя без их протекции ты бы даже зассал со мною спорить.

Ты говоришь о коде, но сам ничего не привёл дельного, чисто бла-бла.

Привёл, трепло. А вот ты нет.

Я тоже не лыком шит, и все эти GCC с Clang/LLVM собирал и распространял в билд фермах с 2010, и прекрасно знаю как они развиваются и все их тонкие места

Меня эти потуги абсолютно не волнуют. Запомни - жертву пропаганду видно всегда. Был ли у тебя какой-то опыт и какие-то пруфы - ты бы показывал мне их, как показываю я.

А ты, просто нелепая ретранслятор пропаганды из интернета. А да, куда пропали обещанные бенчмарки?

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

А ты точно уверен? Пропаганда? А кому это выгодно? Тебя пытаются заставить забросить gcc?

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

Запомни, если бы я хотел, давно бы тебя помножил на ноль, но мне интересно посмотреть, как ты будешь выкручиваться из своих соплей. Никаких пруфов в том, что шланг слил мы так и не увидели, мамкин балобол

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

Шланга там вообще нет

Вот ты и обосрался, поздравляю. Мухаха

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

Меня это утомило. Слишком быстро обделался и врубил идиота. Посмотрел учётку сразу почему-то вспоминаются вебмакаки/эникеи, которые рассказываю мне что-то про кресты и компиляторы? Почему же?

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

Да тебя когда отзеркаливаешь - ты всегда как девочка глазки закатываешь и сливаешь, проходили, знаем-с

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

[quote]Меня это утомило[/quote] Наверное, всю ночь писал блог на крестах, а сейчас хочется задушить старушку мать?

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

За это: https://benchmarksgame-team.pages.debian.net пробил очередное дно оправдываться побежало, живо. https://benchmarksgame-team.pages.debian.net/benchmarksgame/program/revcomp-gpp-8.html - вот тебе код, клоун. Побежал, собрал его шглангом и показал производительность. Бегом. Время пошло.

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

Падаль, меня не интересует блеяние. Ты кукарекала «пруфов нет», «всё так же» - побежала оправдываться. Бегом, говно.

У тебя два варианта. Ты либо в говне, либо в говне. И теперь ты, падаль, будешь рыдать и оправдываться за свой кукаретинг гнилой. Бегом, говно.

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

Быстро ты, конечно, обделалась, мразь. Я тебе не разрешал блеять то, что не относится к тебе. А теперь, говно, побежало блеять то, что тебе приказали блеять. Отвечать за кукаретинг. Бегом, говно.

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

Ты очки свои протри и перечитай, что я тебе писал, повторять для тупых не имеет смысла, ведь я прав?

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

А теперь по теме.

Лучший компилятор для 386 - это gcc по производительности результирующего бинарника, и clang/llvm по скорости компиляции/отчётам по утечкам/ошибкам и прочему.

Это не правда.

Clang - тормоз в скорости компиляции по сравнению с gcc. Но gcc во время компиляции жрет память больше, чем clang, в запущенных случаях с шаблоами с++ - в разы больше. Gcc не умеет оптимизировать по размеру от слова совсем. Clang - умеет, даже есть спец ключ более сильный ключ -Oz.

Под 386 процессор они примерно одинаково оптимизируют по скорости, каждый со своими заскоками для особенных случаев. И для 386 процессора лучше использовать старые версии gcc, если не нужны последние реализации языков программирования.

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

Но gcc во время компиляции жрет память больше, чем clang

Это соответствует действительности. Но это мало кого волнует - память куда дешевле процессора. Это, наверное, будет проблемой сейчас, когда ядра стали дешевле. Но опять же - что ты делаешь в профессии, если у тебя нету памяти? Ты в принципе ничего не сделаешь.

Gcc не умеет оптимизировать по размеру от слова совсем.

Зачем в это уметь? Это абсолютно бесполезно.

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

Нихрена. Даже под 386 говно шланг в говне. Если ты не пишешь рядовое скриптуха-говно, где вообще никакой оптимизатор особо не нужен. Есть свёртка/инлайн - уже покатит.

Кстати, именно подобные говнотесты использует пропаганда для показывания силы говношланга. Правда пропаганда не сообщает, что разницы там нет не потому, что шланг такой крутой. А потому что там попросту от компилятора мало что зависит т.к. код такое говно.

А самое удивительное то, что там половина lib/memory/asm-bound. И идиоты действительно на этом бенчат компиляторы.

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

Нихрена. Даже под 386 … шланг в …

Давай, так. Я не соглашусь с тобой. Скажу свое мнение и не буду дальше развивать тему, перейду в режим только чтение. С тобой сложно развивать тему в нужном мне направлении. Я смотрел сгенеренный асм для интересующих меня кусков кода. (Этот кусок не специально подобранный для смешивания кого-то с чем-то.) Сравнивал скорости выполнения этих кусков. И пока останусь при своем мнении.

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

Я смотрел сгенеренный асм для интересующих меня кусков кода. (Этот кусок не специально подобранный для смешивания кого-то с чем-то.) Сравнивал скорости выполнения этих кусков. И пока останусь при своем мнении.

Мало смотреть - нужно понимать. К тому же я уже говорил, что рядовое говно - там вообще насрать что генерирует компилятор. Там ничего оптимизировать ненужно.

Но мы же сравниваем оптимизацию. А ты по-сути говоришь о том, что оптимизация ненужна. На самом деле она ненужна, но для этого нужны возможности на уровне самого языка. Чего, собственно, нет.

Поэтому, странные у тебя тезисы. К тому же, я уверен, что даже бенчил код ты неверно. Бенчить нужно на двух гипертредах сразу, если нет возможно визуально оценить разницу.

Потому как суперскаляр создан для компенсации всего того дерьма, что нагенерировал компилятор.

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

Разговор о 386? Какой нахрен суперскаляр, какие еще гипертрединги?

Всё, молчу-молчу. :)

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

Разговор о 386? Какой нахрен суперскаляр, какие еще гипертрединги?

Ну я просто перепутал методичку. Но в целом я думал, что ты сидишь на каком-то легаси-окружении на хотя-бы более-мене живом железе в режиме совместимости.

Но если у тебя там прям реально 386 говно, то да - грустно тебе, наверное. Возможно ты и прав, потому как я в глаза не видел это говно уже лет 10.

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