Jim Waldo (nella foto), Distinguished Engineer Sun Laboratories, illustra a ZeroUno i Sun Lab, partendo da una loro (paradossale) metrica: meno del 50% dei progetti deve aver successo e venir trasferito allo sviluppo, perché quanto portato avanti è ad alto rischio. La missione è infatti lavorare su requirement che i Clienti avranno a 3-5 anni, scoprire come indirizzarli e muovere per tempo in produzione le risorse necessarie. Sun Lab fa cioè ricerca industriale, in ciò finanziato e misurato dalla sola Corporation, non da contratti coi vari Business Group.
Pronto ad andare in produzione è, per esempio, il progetto Darkstar ) che ha il suo driver di mercato nella prepotente domanda della comunità dei Giochi online (Online gaming) e consente di “comprimere la latenza in sistemi distribuiti”.
Waldo spiega in sintesi di cosa si tratta: il numero di transistor all’interno di un chip raddoppia ogni 18 mesi (legge di Moore) e con esso la performance finché rimpicciolisce lo spazio che il segnale deve traversare per produrre la stessa quantità di lavoro. Con la velocità di esecuzione aumentano però anche il consumo energetico e termico. Per aumentare maggiormente le performance, limitando l’impatto sui consumi, si è da tempo imboccata la strada del microprocessore multicore, che al chip fa eseguire in contemporanea due, quattro, fino a 256 lavori alla volta (e così un Web server servirà fino a 256 browser e farà andare più veloci fino a 256 utenti Pc). Ma se il multicore computing può far scalare “orizzontalmente” (in throughput) un sistema distribuito, resta non indirizzata una singola applicazione che vuole sempre minimi tempo di risposta e latenza, come è il caso dell’online gaming remoto e multiutente. Il Progetto Darkstar ha messo a punto una infrastruttura virtuale lato server che “riduce il limite inferiore possibile della latenza”: infrastruttura capace di eseguire in parallelo nei molteplici core, dunque programmata per esecuzione “contemporanea” oltre che distribuita (vedi figura 1).
Con Darkstar, un programmatore di online gaming continua a vedere un unico core-game server: Project Darkstar Stack “nasconde” il concurrent computing distribuito su un numero indefinito di core serventi, quanti ne occorrono perché il sistema possa “adattarsi” per rendere il tempo di risposta piccolo a piacere; i (meta)server necessari vengono attivati in funzione del numero di richieste contemporanee.
Darkstar consente di utilizzare applicazioni Game Server con semplici regole definite, comportandosi come “sistema operativo distribuito”, che schedula il numero di thread necessari, bilancia il carico fra metaserver, garantisce persistenza ai dati memorizzandoli nel mondo online in modo che riappaiano al Client quando necessario. Nel mercato di potenziale esplosiva espansione del cloud computing, Darkstar pare proporsi come motore ai provider (che con filosofia di bassa latenza compreranno chip multicore e server in quantità).
È poi sull’infrastruttura Server Darkstar che poggia il Progetto Wonderland, un’infrastruttura Client per costruire mondi virtuali. Che va al di là delle offerte tipo Second Life, offrendo un mondo virtuale con possibilità di collaborazione “opportunistica e casuale”, come in figura 2.
Sono possibili servizi vocali, per esempio la possibilità per avatar terzi di ascoltare casualmente conversazioni su Second Life e inserirsi in conversazioni, salvo naturalmente queste siano riservate. Alla fine il risultato è una spettacolare “architettura reale per costruire mondi virtuali”. Il tutto funziona all’interno di Sun Lab (che fisicamente risiede in 19 edifici di Menlo Park in California) con il nome di Mpk20 e ci è stato concettualmente dimostrato “in remoto” da Jim Waldo. Naturalmente, il modello di business di entrambi i progetti, siamo in casa Sun, è Open Source.