N'ihu njedebe nke Rust compiler, nke na-arụ ọrụ ndị dị ka ntule, ụdị nlele na nyocha ego, na-akwado ogbugbu ndị yiri ya, nke nwere ike ibelata oge nchịkọta. Ntukota adịlarị n'ihe arụrụ nchara n'abalị wee mee ya site na iji nhọrọ “-Z eri=8”. A na-eme atụmatụ itinye ohere a na-atụle na alaka ụlọ ọrụ kwụsiri ike na 2024.
Ọrụ na ibelata oge nchịkọta na nchara na-aga n'ihu kemgbe ọtụtụ afọ. N'ime ọnwa 10 mbụ nke 2023, oge nchịkọta belatara site na nkezi nke 13%, belata oriri ebe nchekwa kacha elu site na 15%, ma belata nha faịlụ ewepụtara site na 7%. N'oge a, a na-enweta osooso site na njikarịcha nke onye nchịkọta n'onwe ya. Mgbe nke a gasịrị, ndị mmepe gara n'ihu na-arụ ọrụ na ọsọ ọsọ site na ịmekọrịta ọrụ na oge nchịkọta.
Ruo ugbu a, myirịta na nchara ka a na-emekarị na ọkwa usoro, dịka ọmụmaatụ, onye njikwa ngwugwu nwere ike ịmalite ọtụtụ usoro rustc iji chịkọta ọtụtụ ngwugwu n'otu oge. Nkwado parallelization dịkwa n'akụkụ nke backend, nke na-arụ ọrụ metụtara koodu ọgbọ - Rust backend nwere ike ịmepụta koodu na akụkụ, nke LLVM nwere ike hazie n'otu n'otu. The frontend, ruo ugbu a, nwere ike hazie koodu isi mmalite na otu-threaded mode.
Iji kwado myirịta, a gbanweela frontend ka ọ bụrụ iji ụlọ akwụkwọ Rayon ma gbanwee ya nke ọma, dịka ọmụmaatụ, ọtụtụ akụkụ ya na-emekọrịta ugbu a site na iji mutexes na ịgụ / dee mkpọchi, na koodu na-eji ụdị atọm. N'ime nnwale arụmọrụ, mmejuputa a na-emekọrịta ihe ọhụrụ nwere ike ịchịkọta ihe ruru 2% iji nwayọ nwayọ mgbe ọ na-agba ọsọ n'ụdị eriri otu (-Z threads = 1), mana mgbe enwere ihe karịrị otu eri, ọsọ na-abawanye nke ukwuu. Dịka ọmụmaatụ, mgbe ị na-etinye eriri 8 (-Z threads=8), n'ọnọdụ ụfọdụ, oge nchịkọta nwere ike belata site na 50%.
N'okwu a, nsonaazụ ya dabere na ntọala gburugburu ebe obibi yana koodu agbakọtara - maka obere mmemme na-achịkọtala ngwa ngwa, nchịkọta na ọnọdụ multi-threaded nwere ike iji nwayọ nwayọ. Na mgbakwunye, oriri ebe nchekwa na ọnọdụ multi-threaded nwere ike ịbawanye nke ọma, dịka ọmụmaatụ, na ule, mmụba nke oriri ebe nchekwa ihe ruru 35%.
isi: opennet.ru
