Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Linguaggi di programmazione e consumo energetico

Quali sono i linguaggi di programmazione che consumano più energia? Alcuni ricercatori hanno ottenuto risultati interessanti.
Linguaggi di programmazione e consumo energetico
Quali sono i linguaggi di programmazione che consumano più energia? Alcuni ricercatori hanno ottenuto risultati interessanti.
Link copiato negli appunti

Negli ultimi anni, si sente spesso parlare della necessità di dare maggiore rilievo ai problemi legati al consumo energetico. Nell'ambito dell'informatica, se ne è sentito parlare spesso in relazione ai dispositivi mobili, rendendolo quasi un problema di usability e user experience generale del dispositivo.

Ultimamente, però, l'accezione di questa problematica sembra tornata ad avvicinarsi a problemi ben più consistenti. L'esplosione del machine learning, le criptovalute e la nuova corsa all'oro digitale (cryptomining) hanno spinto sviluppatori, sistemisti e stakeholder a considerare il problema in modo più generale. Ridurre il consumo energetico significa anche contrastare il cambiamento climatico.

Consumo energetico e linguaggi di programmazione

Non è quindi un caso se un team di ricercatori universitari portoghesi ha tentato di quantificare l'efficienza energetica di diversi linguaggi di programmazione, riassumendo i risultati di questa ricerca in un articolo intitolato Energy Efficiency across Programming Languages, in cui sono stati messi a confronto i tempi di esecuzione, l'utilizzo della memoria ed il consumo energetico di ventisette linguaggi di programmazione ben noti.

Senza troppa sorpresa, C è risultato essere il vincitore incontrastato, mentre Python (uno dei linguaggi più diffusi proprio per problemi di machine learning e cryptomining, sopra citati) è il fanalino di coda, insieme a Perl.

Lo studio spiega che i linguaggi compilati tendono ad essere più veloci ed efficienti dal punto di vista energetico. C e C++ sono quindi tra i migliori, mentre Go è risultato essere il peggiore tra i linguaggi compilati, addirittura peggio di Java o Erlang, nonostante questi abbiano bisogno di una virtual machine per essere eseguiti.

Non c'è da stupirsi troppo se i peggiori linguaggi in termini di efficienza energetica sono proprio quelli interpretati. Allo stesso tempo, nel considerare Python (che è forse il più significativo, considerando anche la sua vasta adozione negli ultimi tempi), va detto che esistono diverse implementazioni di interpreti Python ottimizzati per specifiche piattaforme. Considerato che i test effettuati per lo studio in oggetti sono stati eseguiti su una macchina con CPU Intel Core i5-4460 Haswell @ 3.20 GHz, con 16 GB di RAM e con sistema operativo Ubuntu Server 16.10, è lecito aspettarsi che i risultati potrebbero variare in altre piattaforme. Ad esempio, MicroPyhon è oggi eseguito su una vasta gamma di microcontrollori, e potrebbe essere molto più efficiente di quanto rappresentato da risultati ottenuti dai ricercatori portoghesi.

Non c'è da stupirsi

Tutto sommato, questi risultati sono in linea con quanto originariamente previsto dagli stessi ricercatori. La necessità di interpretare il codice è indice di un maggiore overhead computazionale, e quindi di un inevitabile maggiore consumo energetico. È però interessante poter constatare che, entro le stesse categorie di linguaggi, ci sono differenze piuttosto significative che, in alcuni contesti, è bene tenere in considerazione.

Ti consigliamo anche