{"id":102632,"date":"2021-12-16T15:36:47","date_gmt":"2021-12-16T13:36:48","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/pervyj-stabilnyj-reliz-komponovshhika-mold-razvivaemogo-razrabotchikom-llvm-lld"},"modified":"2021-12-16T15:36:47","modified_gmt":"2021-12-16T13:36:48","slug":"pervyj-stabilnyj-reliz-komponovshhika-mold-razvivaemogo-razrabotchikom-llvm-lld","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pt\/blog\/news\/pervyj-stabilnyj-reliz-komponovshhika-mold-razvivaemogo-razrabotchikom-llvm-lld","title":{"rendered":"Lan\u00e7amento da primeira vers\u00e3o est\u00e1vel do compilador Mold, desenvolvido pelo criador do LLVM lld","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Rui Ueyama, autor do linkador LLVM lld e do compilador chibicc, apresentou o primeiro lan\u00e7amento est\u00e1vel do novo linkador de alto desempenho Mold, que supera significativamente a velocidade de vincula\u00e7\u00e3o de arquivos objeto em rela\u00e7\u00e3o aos linkadores GNU gold e LLVM lld. O projeto \u00e9 considerado pronto para implementa\u00e7\u00e3o em produ\u00e7\u00e3o e pode ser usado como uma substitui\u00e7\u00e3o transparente mais r\u00e1pida do linkador GNU em sistemas Linux. Entre os planos para o pr\u00f3ximo lan\u00e7amento significativo, destaca-se a prepara\u00e7\u00e3o do suporte para a plataforma macOS, ap\u00f3s o que come\u00e7ar\u00e1 o trabalho de adapta\u00e7\u00e3o do Mold para Windows.      <\/p>\n<p>O Mold \u00e9 escrito na linguagem C++ (C++20) e \u00e9 distribu\u00eddo sob a licen\u00e7a AGPLv3, que \u00e9 compat\u00edvel com GPLv3, mas n\u00e3o \u00e9 compat\u00edvel com GPLv2, pois exige a divulga\u00e7\u00e3o de modifica\u00e7\u00f5es ao desenvolver servi\u00e7os de rede. Essa escolha \u00e9 explicada pelo desejo de obter financiamento para o desenvolvimento \u2014 o autor est\u00e1 disposto a vender os direitos sobre o c\u00f3digo para re-licenciamento sob uma licen\u00e7a permissiva, como MIT, ou fornecer uma licen\u00e7a comercial separada para aqueles que n\u00e3o concordam com a AGPL.      <\/p>\n<p>O Mold suporta todas as funcionalidades do linker GNU e se destaca por sua alta performance \u2014 a vincula\u00e7\u00e3o \u00e9 realizada a uma velocidade apenas duas vezes mais lenta do que a simples c\u00f3pia de arquivos com a ferramenta cp. Por exemplo, ao compilar o Chrome 96 (com um tamanho de c\u00f3digo de 1,89 GB) para a vincula\u00e7\u00e3o de arquivos execut\u00e1veis com debuginfo em um computador de 8 n\u00facleos usando o GNU gold, leva-se 53 segundos, com o LLVM lld leva 11,7 segundos, enquanto o Mold leva apenas 2,2 segundos (26 vezes mais r\u00e1pido que o GNU gold). Na vincula\u00e7\u00e3o do Clang 13 (3,18 GB) com o GNU gold, s\u00e3o necess\u00e1rios 64 segundos, no LLVM lld 5,8 segundos, e no Mold 2,9 segundos. Ao vincular o Firefox 89 (1,64 GB) no GNU gold, s\u00e3o necess\u00e1rios 32,9 segundos, no LLVM lld 6,8 segundos, e no Mold 1,4 segundos.      <center><img decoding=\"async\" alt=\"Lan\u00e7amento da primeira vers\u00e3o est\u00e1vel do compilador Mold, desenvolvido pelo criador do LLVM lld\" src=\"\/wp-content\/uploads\/2021\/12\/75a435a5a9f8a62eb2d0485dccc6abc1.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center>    <\/p>\n<p>A redu\u00e7\u00e3o do tempo de vincula\u00e7\u00e3o permite aumentar significativamente a conveni\u00eancia no desenvolvimento de grandes projetos, reduzindo o tempo de espera no processo de forma\u00e7\u00e3o de arquivos execut\u00e1veis durante a depura\u00e7\u00e3o e testagem de altera\u00e7\u00f5es. O impulso para a cria\u00e7\u00e3o do Mold foi a frustra\u00e7\u00e3o com a necessidade de esperar pela conclus\u00e3o da vincula\u00e7\u00e3o ap\u00f3s cada modifica\u00e7\u00e3o no c\u00f3digo, al\u00e9m da inefic\u00e1cia dos linkadores existentes em sistemas de m\u00faltiplos n\u00facleos e o desejo de experimentar uma arquitetura de vincula\u00e7\u00e3o fundamentalmente diferente, sem recorrer a modelos excessivamente complexos, como a vincula\u00e7\u00e3o incremental.    <\/p>\n<p>O alto desempenho do linker Mold, que compila a partir de muitos arquivos objeto preparados pelo compilador, \u00e9 alcan\u00e7ado utilizando algoritmos mais r\u00e1pidos, paraleliza\u00e7\u00e3o ativa das opera\u00e7\u00f5es entre os n\u00facleos de CPU dispon\u00edveis e a aplica\u00e7\u00e3o de estruturas de dados mais eficientes. Por exemplo, o Mold implementa t\u00e9cnicas que permitem realizar c\u00e1lculos intensivos simultaneamente \u00e0 c\u00f3pia de arquivos, carregamento antecipado de arquivos objeto na mem\u00f3ria, uso de tabelas de hash r\u00e1pidas para resolu\u00e7\u00e3o de s\u00edmbolos, varredura de tabelas de reloca\u00e7\u00e3o em uma thread separada e deduplica\u00e7\u00e3o de se\u00e7\u00f5es duplicadas em diferentes arquivos.<br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=56358\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>Rui Ueyama, \u0430\u0432\u0442\u043e\u0440 \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a\u0430 LLVM lld \u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 chibicc, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0432\u044b\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043b\u0438\u0437 \u043d\u043e\u0432\u043e\u0433\u043e \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a\u0430 Mold, \u0437\u0430\u043c\u0435\u0442\u043d\u043e \u043e\u043f\u0435\u0440\u0435\u0436\u0430\u044e\u0449\u0435\u0433\u043e \u043f\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0441\u0432\u044f\u0437\u044b\u0432\u0430\u043d\u0438\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a\u0438 GNU gold \u0438 LLVM lld. \u041f\u0440\u043e\u0435\u043a\u0442 \u043f\u0440\u0438\u0437\u043d\u0430\u043d \u0433\u043e\u0442\u043e\u0432\u044b\u043c \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u0439 \u0438 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0431\u043e\u043b\u0435\u0435 \u0431\u044b\u0441\u0442\u0440\u043e\u0439 \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0439 \u0437\u0430\u043c\u0435\u043d\u044b GNU linker \u043d\u0430 Linux-\u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445. \u0418\u0437 \u043f\u043b\u0430\u043d\u043e\u0432 \u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0432\u044b\u043f\u0443\u0441\u043a [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":102633,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-102632","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"Rui Ueyama, \u0430\u0432\u0442\u043e\u0440 \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a\u0430 LLVM lld \u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 chibicc, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0432\u044b\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043b\u0438\u0437 \u043d\u043e\u0432\u043e\u0433\u043e \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a\u0430 Mold, \u0437\u0430\u043c\u0435\u0442\u043d\u043e \u043e\u043f\u0435\u0440\u0435\u0436\u0430\u044e\u0449\u0435\u0433\u043e \u043f\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0441\u0432\u044f\u0437\u044b\u0432\u0430\u043d\u0438\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pt\/blog\/news\/pervyj-stabilnyj-reliz-komponovshhika-mold-razvivaemogo-razrabotchikom-llvm-lld\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041f\u0435\u0440\u0432\u044b\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043b\u0438\u0437 \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a\u0430 Mold, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u043c LLVM lld | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"Rui Ueyama, \u0430\u0432\u0442\u043e\u0440 \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a\u0430 LLVM lld \u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 chibicc, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0432\u044b\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043b\u0438\u0437 \u043d\u043e\u0432\u043e\u0433\u043e \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a\u0430 Mold, \u0437\u0430\u043c\u0435\u0442\u043d\u043e \u043e\u043f\u0435\u0440\u0435\u0436\u0430\u044e\u0449\u0435\u0433\u043e \u043f\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0441\u0432\u044f\u0437\u044b\u0432\u0430\u043d\u0438\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pt\/blog\/news\/pervyj-stabilnyj-reliz-komponovshhika-mold-razvivaemogo-razrabotchikom-llvm-lld\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2021-12-16T13:36:48+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-12-16T13:36:48+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 Primeiro lan\u00e7amento est\u00e1vel do linker Mold, desenvolvido pelo criador do LLVM lld | ProHoster","description":"Rui Ueyama, o autor do linker LLVM lld e do compilador chibicc, apresentou o primeiro lan\u00e7amento est\u00e1vel do novo linker de alto desempenho Mold, que supera significativamente a velocidade de liga\u00e7\u00e3o de arquivos objeto.","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/news\/pervyj-stabilnyj-reliz-komponovshhika-mold-razvivaemogo-razrabotchikom-llvm-lld","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041f\u0435\u0440\u0432\u044b\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043b\u0438\u0437 \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a\u0430 Mold, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u043c LLVM lld | ProHoster","og:description":"Rui Ueyama, \u0430\u0432\u0442\u043e\u0440 \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a\u0430 LLVM lld \u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 chibicc, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u043f\u0435\u0440\u0432\u044b\u0439 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043b\u0438\u0437 \u043d\u043e\u0432\u043e\u0433\u043e \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u0449\u0438\u043a\u0430 Mold, \u0437\u0430\u043c\u0435\u0442\u043d\u043e \u043e\u043f\u0435\u0440\u0435\u0436\u0430\u044e\u0449\u0435\u0433\u043e \u043f\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0441\u0432\u044f\u0437\u044b\u0432\u0430\u043d\u0438\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432.","og:url":"https:\/\/prohoster.info\/pt\/blog\/news\/pervyj-stabilnyj-reliz-komponovshhika-mold-razvivaemogo-razrabotchikom-llvm-lld","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2021-12-16T13:36:48+00:00","article:modified_time":"2021-12-16T13:36:48+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"102632","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-12-16 13:37:05","updated":"2022-10-01 04:27:59","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/102632","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=102632"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/102632\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media\/102633"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=102632"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=102632"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=102632"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}