Struttura del corso

Introduzione

  • Cos'è Kubefirst?
  • Panoramica delle funzionalità e dell'architettura di Kubefirst
  • Come Kubefirst si integra con altri strumenti open source, come Terraform, Vault, Argo, ecc.

Impostazione dell'ambiente di sviluppo

  • Installazione e configurazione di Kubefirst SDK
  • Scelta e configurazione delle piattaforme cloud supportate, come locale, AWS, Civo, ecc.
  • Creazione di un nuovo progetto Kubefirst usando Visual Studio Code
  • Esplorazione della struttura e dei file del progetto

Modello Kubefirst Programming

  • Informazioni sul ruolo delle direttive e delle clausole Kubefirst nel codice dell'host e del dispositivo
  • Uso della direttiva e delle clausole parallele Kubefirst per creare aree parallele e specificare il numero di gang, ruoli di lavoro e vettori
  • Utilizzo della direttiva e delle clausole del kernel Kubefirst per creare aree del kernel e lasciare che il compilatore decida il parallelismo
  • Uso della direttiva e delle clausole del ciclo Kubefirst per parallelizzare i cicli e specificare la distribuzione, la compressione, la riduzione e il riquadro del ciclo

Kubefirst Data Management

  • Uso della direttiva e delle clausole Kubefirst data per gestire lo spostamento dei dati e le aree dati
  • Uso della direttiva e delle clausole di aggiornamento Kubefirst per sincronizzare i dati tra l'host e il dispositivo
  • Uso della direttiva e delle clausole della cache Kubefirst per migliorare il riutilizzo dei dati e la località
  • Uso della direttiva di routine e delle clausole Kubefirst per creare funzioni di dispositivo e specificare il tipo di funzione e la lunghezza del vettore

API e librerie Kubefirst

  • Informazioni sul ruolo dell'API Kubefirst nel programma host
  • Uso dell'API Kubefirst per eseguire query sulle informazioni e sulle funzionalità del dispositivo
  • Uso dell'API Kubefirst per impostare il numero e il tipo di dispositivo
  • Uso dell'API Kubefirst per gestire errori ed eccezioni
  • Uso dell'API Kubefirst per creare e sincronizzare eventi
  • Uso delle librerie Kubefirst, ad esempio math, random e complex, per eseguire attività e operazioni comuni

Strumenti Kubefirst

  • Comprendere il ruolo degli strumenti Kubefirst nel processo di sviluppo
  • Utilizzo degli strumenti Kubefirst per profilare ed eseguire il debug dei programmi Kubefirst e identificare i colli di bottiglia e le opportunità delle prestazioni
  • Utilizzo degli strumenti Kubefirst, come PGI Compiler, NVIDIA Nsight Systems e Allinea Forge, per misurare e migliorare il tempo di esecuzione e l'utilizzo delle risorse

Applicazioni Kubefirst

  • Informazioni sulle procedure consigliate e sui suggerimenti per lo sviluppo e la distribuzione di applicazioni con Kubefirst
  • Uso delle funzionalità di interoperabilità Kubefirst, ad esempio deviceptr, use_device e kubefirst_memcpy, per integrare Kubefirst con altri modelli di programmazione, ad esempio CUDA, OpenCL e SYCL
  • Utilizzo delle funzionalità di interoperabilità Kubefirst, ad esempio host_data e declare, per integrare Kubefirst con GPU librerie, ad esempio cuBLAS e cuFFT
  • Utilizzo dell'applicazione demo Kubefirst Metaphor per dimostrare come funziona tutto sulla piattaforma

Riepilogo e prossime tappe

Requisiti

  • Conoscenza di base dell'architettura dei calcolatori e della gerarchia della memoria
  • Familiarità con i concetti e i comandi Docker e Kubernetes

Pubblico

  • Gli sviluppatori
 14 ore

Numero di Partecipanti



Prezzo per Partecipante

Recensioni (6)

Corsi relativi

Categorie relative