Speaker
Description
Nel panorama internazionale sempre più attenzione si sta ponendo verso gli algoritmi di intelligenza artificiale, l’uso di dispositivi di calcolo paralleli ad alta prestazione per velocizzare l’esecuzione di applicazioni, l’utilizzo di risorse delocalizzate, la federazione di risorse appartenenti a differenti siti e l’accentramento dei servizi. INFN DataCloud insegue le ultime tecnologie cercando di soddisfare le esigenze degli utenti più aggiornati, proponendo nuovi servizi e aggiornando quelli esistenti per migliorare usabilità, efficienza e affidabilità.
In questo contesto, il linguaggio di programmazione Python si sta affermando in un numero sempre più elevato di applicazioni, con particolare attenzione in quelle in cui l'accelerazione fornita da dispositivi di calcolo paralleli risulta determinante, facendo crescere la necessità di un servizio che permetta la scrittura e l'esecuzione di codice Python su hardware altamente performante. A tale proposito, JupyterHub risulta una soluzione adeguata per via della possibilità di scrivere ed eseguire codice utilizzando una interfaccia grafica accessibile tramite browser, attraverso la quale sono offerte la maggior parte delle caratteristiche presenti negli IDE (Interactive Development Environment). Altre caratteristiche di rilievo sono l'integrazione con il sistema di autenticazione IAM e la scrittura ed esecuzione collaborativa del codice.
INFN DataCloud Dashboard e' un portale centralizzato che permette ad amministratori di sistema di istanziare servizi sull'infrastruttura federata di INFN Cloud. L'utente ha a disposizione un portfolio di servizi tra cui la possibilità di istanziare una macchina virtuale già configurata per lo sviluppo di codice utilizzando algoritmi di Machine Learning, questo servizio e’ chiamato "Computational environment for Machine Learning INFN (ML_INFN)". Una volta selezionato il servizio, l’utente può inserire nei campi dedicati delle informazioni per personalizzarne la configurazione, come l’integrazione con IAM, l’immagine Jupyter da utilizzare, se abilitare il sistema di monitoraggio delle risorse, il montaggio di un repository CVMFS, l'impiego e il partizionamento di una GPU. Quest'ultima caratteristica, tra altre, e' presente nella nuova versione del servizio, e aggiunge la possibilità di partizionare specifici modelli di schede grafiche Nvidia creando, cosi’, un maggiore numero di GPU virtuali e meno performanti, fruibili agli utilizzatori dell’istanza di JupyterHub configurata. Ciò permette di superare una precedente limitazione che assicurava a più utenti di poter utilizzare nello stesso momento istanze di JupyterLab solo per applicazioni richiedenti esclusivamente l'utilizzo di CPU oppure limitato al numero di GPU fisiche presenti sulla macchina. Con il partizionamento, il numero di utenti massimo che possono utilizzare contemporaneamente una GPU, da associare alla propria istanza di JupyterLab, e' aumentato, al più, di un fattore 7, se si considera la scheda grafica fisica Nvidia A100.
Una volta sottomessa la richiesta per il servizio, il portale fornirà tutte le informazioni necessarie per poter accedere alla macchina virtuale e all’istanza di JupyterHub configurata.