LINUX.ORG.RU

Mold 1.0

 


1

5

Mold (a modern linker) — новый высокоскоростной компоновщик для Unix-подобных платформ (i386 и x86-64) от автора LLVM lld.

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

Согласно проведённым замерам производительности, новый компоновщик в разы быстрее LLVM lld и на порядок быстрее GNU gold, будучи при этом совместим с ними.

Проект написан на C++20 и распространяется под лицензией GNU AGPL v3. Автор заявляет о возможности приобретения коммерческой лицензии для организаций, которых не устраивают условия AGPL, а также о поиске спонсора, который может купить у него права на проект и сменить лицензию на более пермиссивную.

>>> Подробности

anonymous

Проверено: xaizek ()
Последнее исправление: xaizek (всего исправлений: 6)
Ответ на: комментарий от anonymous

Можно использовать и для Раста, как я понял, на странице по ссылке есть инструкция.

Heartbreak_Kid
()

Сырое там все и с багами, разве на крестах можно нормальное что-то написать?

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

разве на крестах можно нормальное что-то написать?

Чем софт на крестах, который покрыт тестами и тесты проходят отличается от софта на другом языке, который тоже покрыт тестами?

А если софт без тестов, то он дырявый на любом языке…

fsb4000 ★★★★★
()

Полагаю, нужно.

В бенчмарках он в разы быстрее чем LLVM lld

Я правильно понимаю, что все эти наработки в LLVM lld автор встроить уже не мог?

apt_install_lrzsz ★★★
()

Лицензия – GNU AGPL v3.

Что это значит? Софт, который им слинковали обязан распространяться на условиях AGPL3?

Reset ★★★★★
()

Выглядит очень странно и подозрительно. Хорошо что я ни lld ни gold не использую а использую GNU ld.

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

Если сделаешь онлайн-сервис линковки бинарников на основе mold - должен будешь предоставлять исходники mold.

firkax ★★★★★
()

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

x-signal ★★
()
Ответ на: комментарий от t184256

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

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

Я ничего не утверждал, а всего лишь задал вопрос

Ты сегодня уже набухался? Ничего не утверждаю, просто вопрос.

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

Да. Того, что работает именно тот сценарий, который тестируется.

t184256 ★★★★★
()

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

Ну хоть кто-то излечился от пермиссивной шизы.

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

Ты сегодня уже набухался?

То, что отдельный лоровец набухался – не повод его вот так вот слать в гугл.

не умеешь гуглить

Может, человек больше доверяет СПВ с ЛОРа, чем хрен знает кому из остального интернета.

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

Ну да, не здравому же смыслу верить и не тексту AGPLv3, интернет ведь, как известно, состоит из ЛОРа и ответов мэйл ру.

t184256 ★★★★★
()
Ответ на: комментарий от x-signal

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

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

Ты не размышляешь логически.

Ты сегодня уже набухался?

не здравому же смыслу верить и не тексту AGPLv3

Индивид под воздействием веществ не обладает здравым смыслом. И уж читать и тем более осмысливать текст лицензии – не.

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

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

Тот же шланг линкует в себя статические библиотеки по сотни мегабайт каждая

сотни мегабайт

Из интереса, это какие, например? Вроде как в юниксвее не пакуют ресурсы в виде картинок и прочего в .a.

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

Если сделаешь онлайн-сервис линковки бинарников на основе mold - должен будешь предоставлять исходники mold.

Такой сценарий использовнаия вряд ли кому-то интересен. А вот сотрудникам Google, например, будет крайне проблематично использовать такой софт на рабочем месте (из-за корпоративной политики). Вангую, что автор и рассчитывает, что Google выкупит у него перелицензирование.

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

Части самого LLVM. Они просто очень жирные в дебаге.

xaizek ★★★★★
()

Это был пример loaded question.

@t184256, но на что же он провоцировал?

@xaizek, … в дебаге

Мда, понято. Но мне, как эмбедщику, крайне непривычно такое видеть.

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

Я правильно понимаю, что все эти наработки в LLVM lld автор встроить уже не мог?

LLVM лицензионно-непригоден.

firkax ★★★★★
()
Ответ на: комментарий от x-signal

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

Где-то в углу тихо заплакал маленький Haskell-разработчик

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

Перелицензированию частей проекта LLVM мешает команда разработки LLVM. Я конечно ничего не проверял, но думаю что всё же он не в одиночку llvm линкер написал (его современную версию), и вообще это уже не его персональный проект.

Или если речь про перелицензирование mold - то он хочет денег за него получить, поэтому и выбрал максимально неудобную для коммерческого использования лицензию. Может быть от того же llvm, которые после этого смогут его к себе включить.

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

А вот сотрудникам Google, например, будет крайне проблематично использовать такой софт на рабочем месте (из-за корпоративной политики).

Бедняша гугл, у меня аж слеза скатилась.

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

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

X512 ★★★★★
()

У C/C++ проблемы быстродействия линковки это не проблемы линкера как такового, а проблемы отсутствия модулей как единиц языка. Из-за чего сначала компилятор генерирует кучу плохо структурированного дерьмища, а потом компоновщику приходится в этом дерьмище разбираться по именам, которые в общем случае ссылаются ХЗ куда.

Вот модули из C++20 как раз по идее могли бы эту проблему решить…

hobbit ★★★★★
()

i386 и x86-64

и ARM64

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

Статья бомба, не хватает только картинки «Virgin BSD | Chad GPL»

Crocodoom ★★★★★
()

на более пермиссивную

какую какую???

надоели эти любители «летального оружия»

Переводчик вообще нигде не найти?

Пишите тогда по английски. Не поганьте язык, хотя бы один.

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

Выглядит очень странно и подозрительно. Хорошо что я ни lld ни gold не использую а использую GNU ld.

Всем похеру что ты там используешь.

anonymous
()

Согласно проведённым замерам производительности, новый компоновщик в разы быстрее LLVM lld и на порядок быстрее GNU gold, будучи при этом совместим с ними

А памяти ещё больше жрёт? А то я уже забил на домашней генте некоторые вещи пытаться собрать, один хрен оом будет

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

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

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от unDEFER

Потому что Modern ld.

ld – линкер из Unix. Почему он звался так, конечно интересно узнать, но совершенно бесполезно.

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

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

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