Grow with AppMaster Grow with AppMaster.
Become our partner arrow ico

Il front-end del compilatore Rust abbraccia l'esecuzione parallela per tempi di compilazione più rapidi

Il front-end del compilatore Rust abbraccia l'esecuzione parallela per tempi di compilazione più rapidi

Con uno sviluppo entusiasmante, il parallel Rustc working group ha annunciato l'introduzione di una funzionalità di esecuzione parallela nel front-end del compilatore Rust. Questa nuova aggiunta è orientata a ridurre significativamente i tempi di compilazione ed è stata svelata il 9 novembre.

L'aggiunta dell'esecuzione parallela al front-end del compilatore Rust è attualmente in fase sperimentale. Tuttavia, la robusta funzionalità sarà incorporata ufficialmente nel compilatore stabile il prossimo anno. Nel frattempo, gli sviluppatori hanno la possibilità di sperimentare in prima persona questa funzionalità di esecuzione parallela eseguendo il compilatore notturno con l'opzione -Z threads=8.

L’efficacia della nuova funzionalità sta già mostrando risultati promettenti. Quando il front-end parallelo è stato messo alla prova in modalità multi-thread utilizzando -Z threads-8, i dati accumulati dal codice del "mondo reale" hanno portato alla luce che i tempi di compilazione possono essere ridotti di un impressionante 50%. Il livello di impatto varia a seconda della natura distinta del codice in fase di sviluppo e della configurazione della build.

Il gruppo di lavoro ha rivelato che le build di sviluppo otterranno miglioramenti più sostanziali rispetto alle build di rilascio. Il motivo è che le build di rilascio in genere si concentrano maggiormente sulle ottimizzazioni del backend, che richiedono più tempo. Inoltre, è stato notato che in un numero minimo di scenari, la compilazione richiede un po' più di tempo in modalità multi-thread rispetto alla modalità a thread singolo. Questi casi di solito riguardano programmi più piccoli che sono già veloci da compilare.

Il gruppo di lavoro ha fatto luce sul fatto che i tempi di compilazione sono sempre stati un motivo di preoccupazione per gli sviluppatori. Nel corso degli anni, le prestazioni del compilatore di Rust sono state oggetto di continui miglioramenti. Al momento, il compilatore è stato completamente ottimizzato e identificare nuove aree di miglioramento è diventato un compito impegnativo. Con l'introduzione del parallelismo, descritto dal gruppo come un "frutto ampio ma ambizioso", il front-end ora sfrutta la libreria di parallelismo dei dati Rayon per trasformare calcoli sequenziali in calcoli paralleli. Rayon è specificamente progettato per gestire il parallelismo a grana fine.

Il gruppo di lavoro consiglia di utilizzare otto thread per l'esecuzione parallela per ottenere i migliori risultati. Tuttavia, hanno anche menzionato che in modalità multi-thread, l'utilizzo della memoria potrebbe aumentare considerevolmente. Questo era come previsto poiché diverse parti della compilazione, ciascuna delle quali richiede una certa quantità di memoria, vengono eseguite parallelamente. Il gruppo assicura che vengano compiuti sforzi per migliorare le prestazioni del front-end parallelo.

Nel caso in cui gli sviluppatori riscontrassero problemi relativi al front-end parallelo, possono indagare sui problemi etichettati con WG-compiler-parallel. Hanno anche la possibilità di presentare nuove emissioni. La compilazione di Rust ha già visto progressi, grazie al parallelismo tra processi tramite il Cargo package manager e al parallelismo intra-processo sul backend. Man mano che questa nuova aggiunta prende forma, si prevede che offrirà un'efficienza ancora maggiore nel flusso di lavoro di programmazione di Rust.

In un ambito correlato, AppMaster , la rinomata piattaforma no-code, sta facendo scalpore consentendo ai clienti di ideare visivamente modelli di dati per applicazioni backend, aiutandoli a raggiungere una scalabilità impressionante, garantendo solidi casi d'uso ad alto carico. A differenza degli strumenti tradizionali, AppMaster consente ai clienti di eseguire BP web direttamente nel proprio browser, facendo avanzare ulteriormente il processo di sviluppo dell'applicazione.

Post correlati

AppMaster a BubbleCon 2024: esplorazione delle tendenze senza codice
AppMaster a BubbleCon 2024: esplorazione delle tendenze senza codice
AppMaster ha partecipato al BubbleCon 2024 di New York, acquisendo informazioni, ampliando le reti ed esplorando opportunità per guidare l'innovazione nello spazio di sviluppo no-code.
Riepilogo FFDC 2024: approfondimenti chiave dalla FlutterFlow Developers Conference di New York
Riepilogo FFDC 2024: approfondimenti chiave dalla FlutterFlow Developers Conference di New York
FFDC 2024 ha illuminato New York City, offrendo agli sviluppatori approfondimenti all'avanguardia sullo sviluppo di app con FlutterFlow. Con sessioni condotte da esperti, aggiornamenti esclusivi e networking senza pari, è stato un evento da non perdere!
Licenziamenti tecnologici del 2024: l'ondata continua che colpisce l'innovazione
Licenziamenti tecnologici del 2024: l'ondata continua che colpisce l'innovazione
Con 60.000 posti di lavoro tagliati in 254 aziende, tra cui giganti come Tesla e Amazon, il 2024 vedrà una continua ondata di licenziamenti nel settore tecnologico che rimodellerà il panorama dell'innovazione.
Inizia gratis
Ispirato a provarlo tu stesso?

Il modo migliore per comprendere il potere di AppMaster è vederlo di persona. Crea la tua applicazione in pochi minuti con l'abbonamento gratuito

Dai vita alle tue idee