LINUX.ORG.RU
ФорумTalks

Тихо и незаметно Clang сравнялся с GCC

 , , , ,


1

9

Подъехали свежие бенчмарки: https://www.phoronix.com/scan.php?page=article&item=gcc7-clang4-jan&n...

Ъ:

WINS:
Clang 3.9.1:         12  [25.0%]
Clang 4.0 SVN:       9   [18.8%]
GCC 4.9.4:           7   [14.6%]
GCC 7.0.0 20170108:  7   [14.6%]
GCC 5.4.0:           7   [14.6%]
GCC 6.3.0:           6   [12.5%]

LOSSES: 
Clang 3.9.1:         13  [27.1%]
GCC 5.4.0:           12  [25.0%]
GCC 4.9.4:           7   [14.6%]
GCC 7.0.0 20170108:  7   [14.6%]
Clang 4.0 SVN:       7   [14.6%]
GCC 6.3.0:           2   [4.2%]

В некоторых тестах Цланг сильно отрывается вперёд.

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

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

Гопников с проприетарщниками сравнивать так же фу, как и пиратов/воров с нарушителями копирайтов.

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

Гопников с проприетарщниками сравнивать так же фу, как и пиратов/воров с нарушителями копирайтов.

Но проприетарщики же сравнивают. Вот я и буду сравнивать их с гопниками.

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

меня, наверное, из-за этого чуть с работы не уволили, т.к. я был оффлайн в jabber, хотя был уверен, что онлайн

что за должность такая?

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

Были телефоны с BSD на борту - Nokia Asha.

А пруф этому утверждению можно? А то гуглится только это твоё сообщение.

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

При огораживании системы производитель впервую очередь делает защиту от дурака: если смарфоны будут легко «рутится», то этим воспользуется злоумышленники. Пользователь скажет: сматфоннаме говно, его хакают хакеры и воруют мои деньги.

А так он не скажет: «Компьютеры $BRANDNAME говно, его хакают хакеры и воруют мои деньги.» ?

Deleted
()

GCC что-то корпорации выкидывают потихоньку отовсюду. Наверное, не столь из-за его минусов (долгая компиляция, проблемы с модульностью), сколько из-за лицензии. В какой новый SDK (NDK) не ткни пальцем, так там уже CLang/LLVM, а GCC нежелателен к использованию.

Неужели в скоро будущем GCC останется лишь компилятором для микроконтроллеров? Это было бы плохо.

Но таки GCC не умеет в UNIX-Way и спроектирован как монолитный комбайн, в сравнении с CLang/LLVM со всякими примочками сбоку типа статического анализатора, линтера, форматтера и пр. Приятно, что дух UNIX-Way поддержали такие компании, как Apple и Google.

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

Да и так говорит. Но когда айтишник изнасилует журналиста, получится «Смарфоннейм идёт с завода с открытым доступом для хакеров!»

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

Но это не значит, что нужно соглашаться на ещё большую гадость во всей системе.

Ключевой вопрос — где и чем эта «гадость» исполняется. Вопрос технический, а не религиозный.

Программный интерфейс CPU открыт и общедоступен, все документы есть на сайте интеля.

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

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

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

Не нравится такой подход к ведению бизнеса? Ну, мне он тоже не нравится. Но тут два пути: либо принципиально не пользоваться таким железом (а чем вообще тогда пользоваться?), либо смириться.

И приходится смириться.

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

Я не про то. Компьютеры вон вообще без ОС идут, и ничего. Все воспринимают это как само собой разумеющееся.

Deleted
()

У меня большой вопрос к отписавшим в треде - каким раком вы сравниваете скорость бинаря после gcc и clang, если второй это только фронтенд, а огромное количество проходов оптимизации делается именно в бэкенде (не говоря уж про то что фронтенд бинарь не делает сам по себе)? Тогда уж надо сравнивать gcc x86-64 и clang/llvm-x86, а то все равно что ноут с видяхой сравнивать

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

Это минус^W. Точнее для использования в свободном ПО индефферентно, а проприетарщики должны страдать.

Судя по всему весь мир свободного ПО для тебя ограничен третьей версией GPL.

alex-w ★★★★★
()
Ответ на: комментарий от upcFrost

Сравнивают результирующий исполнительный бинарь, то есть итог работы связки GCC (fronted/backend) и Clang/LLVM.

Употребление в тексте названия Clang без LLVM это точно так же, как употребление Linux без GNU.

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

Употребление в тексте названия Clang без LLVM это точно так же, как употребление Linux без GNU.

Спорно, llvm далеко не такая монолитная штука как gcc. Это как ядра венды и линуха сравнить. Как минимум, в тексте для Ъ нужно хотя бы указывать архитектуру и флаги. И линкер тоже, а то их собственный линкер дремучая бета

Просто для меня шланг - это в первую очередь генератор llvm-IR для llc, а то что он умеет полный цикл запускать дело десятое

upcFrost ★★★★★
()

А на ядре тестили?

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

На Phoronix по ссылке есть вся интересующая тебя информация, кроме, разве что линкера

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

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

Не нравится такой подход к ведению бизнеса? Ну, мне он тоже не нравится. Но тут два пути: либо принципиально не пользоваться таким железом (а чем вообще тогда пользоваться?), либо смириться.

И приходится смириться.

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

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

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

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

А есть реальный выбор? Для какой части используемого железа ты действительно можешь получить официальные спецификации?

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

И какие же альтернативы были? intel c++ compiler, привязанный к процессорам intel? Поделие Борланда для Ильхамов, которое привязано было к 32-битной венде во времена, когда уже несколько лет люди нуждались в 64-битных?

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

Ну amd вроде выкладывала. intel. Но суть даже не в этом. Суть в том, что нужно с чего-то начинать. Столлман идёт по радикальному пути, он говорит, что мы вообще не должны пользоваться несвободным ПО, даже прошивкой микроконтроллера. Но я считаю этот путь радикальным. Не потому что даже теоретически от несвободного ПО нельзя избавиться. Надо как-то жить. Поэтому я считаю, что нужно во-первых, продвигать идеалы свободного ПО среди лиц, не сведущих в IT. Начинать нужно с тех, которые заклеивают камеру на ноутбуке или говорят: «это нельзя по интернету обсуждать, только при личной встрече, чтобы не подслушали». И с тех, кто жалуется: «только недавно купил дорогой смартфон, а уже половина приложений из маркета с ним несовместимы, нужна новая версия ОС, а производитель не выпустил». Во-вторых, приобретать то железо и пользоваться тем ПО, где таких ограничений меньше. Например, не покупать айфоны, а при покупке телефона с android узнавать степень залочки. Отказываться от проприетарных сервисов в пользу свободных. Например, отказаться от всяких стриминговых сервисов для музыки. Музыку вполне можно легально приобрести в виде аудиофайла без DRM. А даже то тут находятся люди, которые которые кричат: «музыку качать не нужно, есть стриминговые сервисы». При внутрикорпоративном обмене информации пользоваться jabber вместо скайпов и вотсаппов. А если тебе вдруг повезло, и в тебя влюбилась тян, то вполне можно объяснить ей, что не нужно тебе писать по whatsapp, а лучше завести jabber.

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

что по GPL должны выдать компилятор в обязательном порядке (нет, не должны).

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

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

Он будет абсолютно бесполезен. Сообщество будет не в силах его поддерживать, так как другая часть сообщества будет работать над gcc. В результате силы распылятся на два взаимозаменяемых проекта. Но зато apple поимеет свой профит, воспользовавшись бесплатной рабочей силой.

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

То есть, говоря «я коммичу в clang, так как он под bsd» ты говоришь «я безвозмездно работаю на Apple и sony просто потому, что я ненавижу Столлмана».

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

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

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

Я повторюсь — где ты тут работу на дядю увидел? Люди хотят выгрузку AST, которую штольман отказывается делать из-за своей паранойи, и коммитят ее. Сообщество в плюсе, код никто не отнимет.

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

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

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

Чем бсд от гпл отличается?

а при чем тут бсд? шланг ж под UI/NCSAOSL распростроняется. Или это как бсд?

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

Ага. А потом приходится лезть и качать старые версии Android NDK, только потому что хипстерам со двора гугла не понравилась лицензия.

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

Были телефоны с BSD на борту - Nokia Asha.

А пруф этому утверждению можно?

Я держал телефон в руках. Читал лицензионное соглашение и перечисление других лицензий к коду, который использовался при подготовке прошивки. Первая лицензия была от NetBSD...

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

Clang без LLVM это точно так же, как употребление Linux без GNU

В контекcте этой новости, подобное звучит особенно смешно. Последним оплотом GPL и GNU фанов всегда оставался компилятор. Смотря на *BSD системы мы видим что окружение GNU вообще было и не нужно изначально.

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

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

Так лицензии лицензиями, вдруг там что-то вроде: https://android.googlesource.com/platform/system/core/ /master/toolbox/

Есть ли какие-либо ссылки, подтверждающие, что:

Были телефоны с BSD на борту - Nokia Asha.

?

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

А само линукс ядро я думаю в будущем корпорации заменят на что-то более легкое и оптимизированное для портативных устройств и интернета вещей.

Эксперименты уже идут, даже старых и знаменитых кернельщиков Google нанял:

https://github.com/fuchsia-mirror

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

Ладно, бесполезен это я приукрасил, имелось в виду менее полезен для конечного, чем закрытый продукт. То есть можно взять код под бсд, решить благодаря вливаниям бабла проблемы оригинала и продавать пользователю, ну а то что не надо открывать код уменьшает конкуренцию. Да и просто обидно, что сообщество ничего не получает. Вам не жаль?

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

Толстоват. Но сравнение шланга с gcc это мягко говоря некорректно. Весь стек сравнить для одной архитектуры - да, пойдёт. Сделать выкладки что и почему (взять ту же Polly) - вазе збс.

А так - как кричать что ядро венды умеет графику лучше ядра линуха.

Про замену ядра более лёгким - не думаю. Задрочив настройку можно очень тонкое ядро собрать, а писать по ядру на каждый чих (читай - мобильник) никто не станет, на том все проекты и дохли. Юзер собирать сам не станет, а компании-производителю в целом пофиг что надо лишние 2 часа по конфигу, пройтись красивый гуй куда больше сил отнимет

Последним оплотом GPL и GNU фанов всегда оставался компилятор.

Emacs?

upcFrost ★★★★★
()
Последнее исправление: upcFrost (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.