Aller au contenu principal

Calculs de haute performance avec R

Les modèles compliqués, les vastes études de simulation et les ensembles de données volumineux entraînent des temps d’exécution de plus en plus longs sous R. Cet atelier expliquera comment accélérer le code et les scripts R en utilisant le parallélisme sur les systèmes de calcul à haute performance et en améliorant l’efficacité de l’exécution en tirant parti de Rcpp et d’autres paquets rapides basés sur C++. Aucune expérience préalable en C++ n’est requise ! Une compréhension des concepts sous-jacents au calcul parallèle et l’interopérabilité avec le code compilé, ainsi que la pratique seront les piliers de l’atelier.

Nous aborderons l’écriture de code parallélisé pour les machines locales et distantes, ainsi que des conseils et astuces pour tirer le meilleur parti de votre temps de calcul. Parmi les sujets clés : la parallélisation à l’aide de bibliothèques d’algèbre linéaire multithread, la parallélisation au sein même de R, l’utilisation efficace de la mémoire sur les machines à grand nombre de noyaux, et un peu d’intuition matérielle. Nous verrons comment réutiliser un code et des scripts existants en les modifiant légèrement pour permettre le parallélisme. De plus, nous apprendrons à profiler un code long à exécuter pour identifier les boucles pouvant être accélérées à l’aide de code compilé. Nous utiliserons des paquets tels que Rfast, Rcpp, et RcppArmadillo pour améliorer l’efficacité de calcul du code exécuté de façon répétée.

Pour faciliter le processus, veuillez installer RStudio et R, ainsi que Rtools (sous Windows) ou Xcode (sous Mac) ou gcc (sous Linux). Nous utiliserons également Rcpp, RcppArmadillo, Rfast, Rfast2, pbapply, profvis, et bench ; veuillez vous assurer de préinstaller ces paquets. Si vous n’avez pas encore accès à une grappe, la base de données Calcul Canada (CCDB) est en accès gratuit pour les chercheurs et étudiants, universitaires ou non. Veuillez consulter le site https://ccdb.computecanada.ca/security/login pour plus d’informations et pour demander un compte. L’approbation et l’activation d’un compte pouvant prendre quelques semaines, nous vous invitons à créer votre compte avant l’atelier si vous êtes intéressé. Néanmoins, la plupart des exemples fournis fonctionneront également sur un ordinateur portable personnel, à des fins pédagogiques.
 

Note:

Session 1: (9:00-10:20)

Pause café: (10:20-10:40)

Session 2: (10:40-12:00)

Pause déjeuner: (12:00-13:30)

Session 3: (13:30-14:50)

Pause café: (14:50-15:10)

Session 4: (15:10-16:30).

Room
2308
Presenter(s)
Jason Hou-Liu
University of Waterloo
Date and Time
-