Профиль: Аноним (вход | регистрация) неRU opennet.me  
OpenNET

[ новости /+++ | форум | теги |    ]



"Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLVM lld"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLVM lld"  +/–
Сообщение от opennews (??), 05-Окт-26, 22:25 
Опубликован выпуск компоновщика Mold 3.0, который может применяться в качестве более быстрой прозрачной замены GNU linker на Linux-системах. Проект развивает Rui Ueyama, автор компоновщика LLVM lld.  Ключевой особенностью Mold является очень высокая скорость связывания объектных файлов, заметно опережающая  компоновщики GNU gold и LLVM lld (компоновка в Mold выполняется со скоростью, всего в два раза медленнее простого копирования файлов утилитой cp). Код написан на языке Rust и распространяется под лицензией MIT...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=66406

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +1 +/–
Сообщение от Аноним (1), 05-Окт-26, 22:25 
lto проблемный процесс, сабж позволяет его ускорить?
Ответить | Правка | Наверх | Cообщить модератору

2. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +1 +/–
Сообщение от Аноним (1), 05-Окт-26, 22:26 
и что там с потреблением памяти, обычный лто уже привычно 10 гб на 1 процесс
Ответить | Правка | Наверх | Cообщить модератору

14. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Аноним (14), 05-Окт-26, 23:44 
растовики только переписывают, как показала тенденция не без помощи ЫЫ, так, что вы там говорили про LTO? Видать там ускорение получено за счет выпиливания того самого LTO :)))
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

19. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  –2 +/–
Сообщение от Ivan_83 (ok), 06-Окт-26, 00:22 
Нет, там ни слова нет про LTO.
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

39. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Аноним (39), 06-Окт-26, 05:13 
> lto проблемный процесс, сабж позволяет его ускорить?

Нет, ибо LTO, внезапно, выполняется компилятором, а не линковщиком.

Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

3. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  –5 +/–
Сообщение от Аноним (3), 05-Окт-26, 22:49 
Это очень хорошая новость!
Ответить | Правка | Наверх | Cообщить модератору

6. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Аноним (6), 05-Окт-26, 23:03 
>>вариант на Rust останавливает работу на этапе проверки границ

Что мешало сделать проверки на C++ ?

Ответить | Правка | Наверх | Cообщить модератору

15. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +1 +/–
Сообщение от GNU Overlord (ok), 05-Окт-26, 23:52 
"сделать"

Собстенно, это и мешало - их делать нужно, а не просто на комплиятор повесить. Причем делать нормально, а не так, чтобы потом сегфолты летели.

Ответить | Правка | Наверх | Cообщить модератору

16. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от morphe (?), 06-Окт-26, 00:04 
Потому что при разборе объектных файлов концепция parse, don't validate в случае плюсов невероятно сложная, поскольку zero-copy это надо следить за временем жизни кучи span/string_view, в то время как в Rust за временем жизни следит компилятор
Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

42. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Вечный странник (?), 06-Окт-26, 06:22 
Это за тебя сделает нормальный компилятор и language server/нормальные правила в clang-tidy
Ответить | Правка | Наверх | Cообщить модератору

17. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Васян Айтишник (?), 06-Окт-26, 00:18 
Так-то наверное можно и на Бейсике писать и проверки сделать :)
Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

7. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  –1 +/–
Сообщение от Аноним (6), 05-Окт-26, 23:05 
>>Мотивом к созданию Mold стало раздражение от необходимости ждать завершения компоновки после каждого внесения изменения в код

Надуманная проблема

Ответить | Правка | Наверх | Cообщить модератору

20. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Ivan_83 (ok), 06-Окт-26, 00:24 
Ну автор холерик, не мог ждать ещё дополнительно 16 секунд после 4 часов компеляции хрома пока тот слинкуется :)
Ответить | Правка | Наверх | Cообщить модератору

23. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от An2 (?), 06-Окт-26, 01:13 
Точно секунд, а не минут?
Ответить | Правка | Наверх | Cообщить модератору

28. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Ivan_83 (ok), 06-Окт-26, 02:17 
Так сходите на сайт, там автор честно бенчи выложил, настолько честно что даже не включал LTO.
Ответить | Правка | Наверх | Cообщить модератору

43. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Аноним (43), 06-Окт-26, 06:27 
Zig (компилятор) уже сделал. Но есть один нюанс. Полученный бинарник считает не то, что нужно.
Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

8. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Bottle (?), 05-Окт-26, 23:16 
Ирония проекта в том, что он сам компилироваться будет ещё медленнее.
Но, с другой стороны, лучше так, чем никак.
Ответить | Правка | Наверх | Cообщить модератору

9. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +3 +/–
Сообщение от жявамэн (ok), 05-Окт-26, 23:22 
Ты из тех кто пересобирает файрфокс перед каждым заходом на опеннет?
Ответить | Правка | Наверх | Cообщить модератору

21. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  –1 +/–
Сообщение от Ivan_83 (ok), 06-Окт-26, 00:28 
Ирония в том, что этот проект вообще существует и каждый раз его здесь продают с такой помпой, как будто это чудо какое то и мастхэв.
И никто тут не читает даже readmi.md проекта и не осознаёт его полную бесмысленность.

И я не прочитал и полез эту фигню пробовать.
А потом узнал что LTO там только через плагин = подключается llvm и разницы в скорости 0.
А для случаев когда LTO не нужно - разницы особой нет, ну типа мне что 5 что 15 секунд линковки для проекта который собирался пол часа - как то пофик.

Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

24. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от An2 (?), 06-Окт-26, 01:14 
> что 5 что 15 секунд линковки для проекта который собирался пол часа

А если туда нужно вносить изменения, одно за другим. Компиляция - 2 секунды, а линковка на порядок дольше?

Ответить | Правка | Наверх | Cообщить модератору

30. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Ivan_83 (ok), 06-Окт-26, 02:20 
А юзкейс у этого какой?

Я знаю 2 воркфлоу:
1. меинтейнер/пользователь: скачал, собрал, пользуется.
2. программист: поменял-собрал-запустил тесты-поменял...

Ответить | Правка | Наверх | Cообщить модератору

37. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Аноним (39), 06-Окт-26, 04:50 
> А потом узнал что LTO там только через плагин

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

Но опеннетный Ванька думает, что раз "link-time" - значит это про "linker", и гордо срывает покровы с mold, лол.

Ответить | Правка | К родителю #21 | Наверх | Cообщить модератору

11. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Аноним9000 (?), 05-Окт-26, 23:29 
Да что же такое, снова несуществующий реальный продукт на раст!
Ответить | Правка | Наверх | Cообщить модератору

13. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Аноним (13), 05-Окт-26, 23:35 
Ты посмотри в список контрибьютеров, это нейрослоп (почти)
Ответить | Правка | Наверх | Cообщить модератору

44. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Аноним (43), 06-Окт-26, 06:28 
> несуществующий реальный продукт

Так несуществующий или реальный?

Ответить | Правка | К родителю #11 | Наверх | Cообщить модератору

12. Скрыто модератором  +/–
Сообщение от Инопланетянин (?), 05-Окт-26, 23:30 
Ответить | Правка | Наверх | Cообщить модератору

22. Скрыто модератором  +/–
Сообщение от Аноним (22), 06-Окт-26, 00:58 
Ответить | Правка | Наверх | Cообщить модератору

18. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  –3 +/–
Сообщение от Ivan_83 (ok), 06-Окт-26, 00:20 
> Ветка Mold 3.0 примечательна переписыванием кодовой базы с C++ (C++20) на язык Rust.

Бесполезный компоновщик стал х10 бесполезнее.

Тем кто смотрит в его сторону: не тратьте время.
1. LTO оно не умеет.
2. без LTO линковка даже обычными линковщиками не особо то и заметна  на фоне процесса компиляции.

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

Ответить | Правка | Наверх | Cообщить модератору

25. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от An2 (?), 06-Окт-26, 01:17 
> типа хрома

Да, без mold поиграться с каким-то изменениями в Firefox или Chromium не реально.

Ответить | Правка | Наверх | Cообщить модератору

26. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Ivan_83 (ok), 06-Окт-26, 02:09 
Угу, целых 16 секунд (по данным бенчей молд) ждать, вместо 1,6.
Ответить | Правка | Наверх | Cообщить модератору

27. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Аноним (39), 06-Окт-26, 02:10 
> потом поредактили пару файлов и вам только их перекомпилить и перелинковать

Он буквально для этого и создан, гений.

Ответить | Правка | К родителю #18 | Наверх | Cообщить модератору

31. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  –1 +/–
Сообщение от Ivan_83 (ok), 06-Окт-26, 02:22 
Так время работы обычного линковщика даже на хроме не мешается - пренебрежимо мало, а на мелких проектах и подавно.
Ответить | Правка | Наверх | Cообщить модератору

33. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Аноним (39), 06-Окт-26, 04:06 
> Так время работы обычного линковщика даже на хроме не мешается

Вот именно что мешается, да откуда мастеру хэллоувордов об этом знать, да?

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

Ответить | Правка | Наверх | Cообщить модератору

29. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +2 +/–
Сообщение от SanityEclipse (ok), 06-Окт-26, 02:19 
Ну да, компилируют проекты же только юзеры, а разработчики постоянно проект начистую собирают. Действительно, редкий юзкейс. Как и инкрементальная компиляция, наверное
Ответить | Правка | К родителю #18 | Наверх | Cообщить модератору

32. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  –2 +/–
Сообщение от Ivan_83 (ok), 06-Окт-26, 02:28 
Вам, как разработчику, есть ли большая разница если время линковки будет не 3 секунды а 0,3 при общем времени сборки в районе 40 секунд?

Из всех бенчей что выложил автор, только TensorFlow линкуется заметно долго 9/50 секунд и только потому что там видимо крестовый нейрослоп на 9гб в один бинарник лезет.
Да и то 9 секунд для релиза не очень то заметно, вот для дебага 50 сек наверное не комфортно уже.
И это ещё хз сколько времени там занимает обход всех исходников сборочной системой и работа компилятора даже для самого маленького файла.

Ответить | Правка | Наверх | Cообщить модератору

34. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Аноним (39), 06-Окт-26, 04:08 
>> инкрементальная компиляция
> при общем времени сборки в районе 40 секунд?

Да иди ж ты уже прочитай, что такое инкрементальная компиляция.

Ответить | Правка | Наверх | Cообщить модератору

36. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от Slowpoke (?), 06-Окт-26, 04:32 
> Вам, как разработчику, есть ли большая разница если время линковки будет не 3 секунды а 0,3 при общем времени сборки в районе 40 секунд?

Странный тейк, как будто в быстрых программа есть что-то плохое. Компилятор можно тоже обновить и получить время сборки меньше условных 40 секунд, на этом фоне доля ускорения процесса линковки будет существенее.

Ответить | Правка | К родителю #32 | Наверх | Cообщить модератору

45. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +/–
Сообщение от User (??), 06-Окт-26, 06:42 
Ну, если ускорение "бесплатное" или близко к тому - почему бы и нет?
Ответить | Правка | К родителю #32 | Наверх | Cообщить модератору

35. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +1 +/–
Сообщение от Аноним (39), 06-Окт-26, 04:17 
> Как и инкрементальная компиляция, наверное

Чтобы ты понимал, этот Ваня 83 недавно хвастался, что компилирует свои хэллоувороды шелл-портянкой вместо использования нормальной билд-системы или хотя бы make.

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

Зато, как видишь, теперь экспертно вещает о ненужности mold.

Ответить | Правка | К родителю #29 | Наверх | Cообщить модератору

38. "Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLV..."  +1 +/–
Сообщение от Аноним (39), 06-Окт-26, 04:52 
> LTO оно не умеет.

Вообще-то умеет. Мог бы хотя бы ченджлог прочитать.

Ответить | Правка | К родителю #18 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




XSQUARE
Inferno Solutions
Hosting by Hoster.ru
Хоcтинг: