ʻO ka hoʻokuʻu paʻa mua o ka Mold linker, i hoʻomohala ʻia e LLVM lld

ʻO Rui Ueyama, ka mea kākau o ka LLVM lld linker a me ka chibicc compiler, i hōʻike i ka hoʻokuʻu paʻa mua o ka mea hoʻohui Mold hou kiʻekiʻe, ʻoi aku ka wikiwiki ma mua o nā mea hoʻopili GNU gula a me LLVM lld i ka wikiwiki o ka hoʻopili ʻana i nā faila mea. Manaʻo ʻia ka papahana no ka hoʻokō ʻana i ka hana a hiki ke hoʻohana ʻia ma ke ʻano he mea wikiwiki a maopopo hoʻi no ka loulou GNU ma nā ʻōnaehana Linux. ʻO nā hoʻolālā no ka hoʻokuʻu nui e hiki mai ana me ka hoʻopiha ʻana i ke kākoʻo no ka platform macOS, a laila e hoʻomaka ka hana ma ka hoʻololi ʻana i ka Mold no Windows.

Ua kākau ʻia ʻo Mold ma C ++ (C++ 20) a ua laikini ʻia ma lalo o AGPLv3, i kūpono me GPLv3, akā ʻaʻole kūpono me GPLv2, no ka mea e koi ana i nā loli wehe i ka wā e hoʻomohala ai i nā lawelawe pūnaewele. Ua wehewehe ʻia kēia koho e ka makemake e loaʻa kālā hoʻomohala - ua mākaukau ka mea kākau e kūʻai aku i nā kuleana i ke code no ka hoʻokuʻu hou ʻana ma lalo o kahi laikini ʻae, e like me MIT, a i ʻole e hāʻawi i kahi laikini kalepa ʻokoʻa no ka poʻe i ʻoluʻolu ʻole i ka AGPL.

Kākoʻo ʻo Mold i nā hiʻohiʻona a pau o ka linker GNU a loaʻa ka hana kiʻekiʻe loa - hoʻokō ʻia ka loulou ma ka wikiwiki he hapalua wale nō ka wikiwiki e like me ke kope kope ʻana i nā faila me ka pono cp. No ka laʻana, i ke kūkulu ʻana iā Chrome 96 (ka nui o ka code 1.89 GB), he 8 kekona e hoʻopili ai i nā faila hiki ke hoʻokō me ka debuginfo ma kahi kamepiula 53-core me ka hoʻohana ʻana i ke gula GNU, LLVM lld - 11.7 kekona, a me ka Mold he 2.2 kekona wale nō (26 manawa ʻoi aku ka wikiwiki ma mua o ka. GNU gula) . I ka hoʻopili ʻana iā Clang 13 (3.18 GB), he 64 kekona ma ke gula GNU, 5.8 kekona ma LLVM lld, a he 2.9 kekona ma Mold. Ke kūkulu ʻia ʻo Firefox 89 (1.64 GB), he 32.9 kekona ma ke gula GNU, 6.8 kekona ma LLVM lld, a he 1.4 kekona ma Mold.

ʻO ka hoʻokuʻu paʻa mua o ka Mold linker, i hoʻomohala ʻia e LLVM lld

ʻO ka hoʻemi ʻana i ka manawa kūkulu hiki ke hoʻomaikaʻi maikaʻi i ka ʻoluʻolu o ka hoʻomohala ʻana i nā papahana nui ma ka hōʻemi ʻana i ka kali i ke kaʻina hana o ka hana ʻana i nā faila hiki ke hoʻokō i ka wā e hoʻopau ai a hoʻāʻo i nā loli. ʻO ke kumu o ka hoʻokumu ʻana i ka Mold, ʻo ia ka huhū o ka kali ʻana no ka hoʻopili ʻana e hoʻopau ma hope o kēlā me kēia hoʻololi code, ka hana maikaʻi ʻole o nā mea hoʻopili i kēia manawa ma nā ʻōnaehana multi-core, a me ka makemake e hoʻāʻo i kahi hoʻolālā hoʻopili ʻokoʻa ʻē aʻe me ka hoʻohana ʻole ʻana i nā hiʻohiʻona paʻakikī. e like me ka hoʻohui ʻana.

Loaʻa ka hana kiʻekiʻe o ka hoʻopili ʻana i kahi faila hoʻokō mai kahi helu nui o nā faila mea i hoʻomākaukau ʻia e ka mea hoʻopili i Mold me ka hoʻohana ʻana i nā algorithms wikiwiki, ka hoʻohālikelike ʻana o nā hana ma waena o nā cores CPU i loaʻa a me ka hoʻohana ʻana i nā hale ʻikepili ʻoi aku ka maikaʻi. No ka laʻana, hoʻohana ʻo Mold i nā ʻenehana no ka hana ʻana i nā helu koʻikoʻi ʻoiai ke kope ʻana i nā faila, ka hoʻouka mua ʻana i nā faila mea i ka hoʻomanaʻo, me ka hoʻohana ʻana i nā papa hash wikiwiki no ka hoʻonā ʻano, ka nānā ʻana i nā papa hoʻoneʻe ʻana i kahi kaula ʻokoʻa, a me ka wehe ʻana i nā ʻāpana i hui ʻia i hana hou ʻia ma nā faila like ʻole.

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka