
I moderni Mac includono fino a otto core di elaborazione per regalarvi prestazioni da favola. Come si fa a sfruttarli al massimo? Semplice: con Leopard. Un system riprogettato, applicazioni chiave finemente perfezionate e nuovi, potenti tool per sviluppatori fanno di Leopard il sistema operativo perfetto per il vostro Mac multicore.
Il cuore del multicore.
Per decenni, ogni processore più veloce immesso sul mercato ha comportato un aumento delle prestazioni, ma anche l’incremento del calore emesso e dei consumi — una combinazione decisamente poco mobile-friendly. I nuovi chip multicore aiutano a risolvere il problema dei consumi, ma non è detto che di per sé migliorino le prestazioni. Ed è qui che scende in campo Leopard, con potenti tool che permettono di raccogliere facilmente i frutti dell’elaborazione multicore.
Più core, più efficienza.
Il nuovo scheduler di Leopard ripartisce efficientemente i vari task fra più core e processori, così il system dedica meno tempo alla gestione dei task e può dedicarsi all’esecuzione dei calcoli. Un nuovo stack di rete multithreaded velocizza la connessione occupandosi in parallelo di input e output.
Applicazioni multicore in Leopard.
Gli ingegneri Apple hanno aggiornato varie applicazioni in Leopard — fra cui Mail, Rubrica Indirizzi e Font Utility — perché fossero più adatte ai sistemi multicore. Ognuna di esse suddivide le azioni che sfruttano maggiormente il processore in una serie di fasi più gestibili che vengono eseguite una alla volta sui computer con CPU singola e in parallelo sui nuovi modelli multicore. Cocoa sfrutta la stessa tecnologia per velocizzare le ricerche Spotlight e la consultazione del Dizionario.
Controllo del traffico.
Ma come ci sono riusciti? Utilizzando NSOperation, una nuova, rivoluzionaria API che ottimizza le applicazioni per il mondo dell’elaborazione multicore. Blocchi indipendenti di calcoli vengono aggiunti a una coda NSOperationQueue, che determina in modo dinamico quante operazioni si possono eseguire parallelamente in base alle attuali architetture. Così non è necessario scrivere a mano il codice che serve a gestire le complessità di threading e locking. Basta descrivere le operazioni in un programma insieme alle loro dipendenze, e Cocoa penserà al resto.
Passaparola.
Per supportare il modello message-passing diffuso nel campo dell’elaborazione scientifica — dove da molto tempo si è reso necessario distribuire calcoli fra processi multipli — Leopard include la famosa implementazione open source OpenMPI dello standard MPI 2.0. OpenMPI funziona con Xgrid, supporta i sistemi Mac basati sia su PowerPC, sia su Intel e semplifica l’aggiunta di driver per interconnessioni a bassa latenza. E Xcode per Leopard include i vari “compiler” (preprocessori) MPI che snelliscono la scrittura di programmi conformi a MPI.
Tutte le funzionalità presentate nel sito web di Mac OS X Leopard sono soggette a modifica.