CommencezCommencez gratuitement

Financer les sciences sociales avec des futures

Vous travaillez pour une fondation philanthropique. La fondation accorde des subventions de recherche aux universités dont la cote de recherche en sciences sociales figure parmi le premier centile de leur pays. Ainsi, chaque année, on calcule une valeur seuil pour la cote de recherche.

Vous avez une liste, rating_list, dans votre espace de travail. Chaque élément contient les cotes de recherche des universités d'un pays. Vous avez aussi accès à generate_cutoff_future(). Cette fonction crée un future pour le calcul de la valeur seuil. Cependant, votre gestionnaire n'est pas convaincu de l'avantage des futures par rapport aux autres méthodes de parallélisation. Vous devez démontrer que les futures permettent une exécution séquentielle et parallèle sans modifier le code proprement dit. Le paquet future a été chargé pour vous.

Cette activité fait partie du cours

Programmation parallèle en R

Voir le cours

Instructions de l’exercice

  • Générez des futures séquentiels en appliquant generate_cutoff_future() à rating_list avec lapply() sous un plan séquentiel.
  • Extraire les valeurs des futures séquentiels.
  • Générez des futures parallèles sous un plan parallèle.
  • Extraire les valeurs des futures parallèles.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

plan(sequential)
# Create futures under sequential plan
seq_futures <- ___(___, ___)
# Extract values of sequential futures
seq_values <- ___(___)

plan(multisession, workers = 4)
# Create futures under multisession plan
par_futures <- ___(___, ___)
# Extract values of parallel futures
par_values <- ___(___)
               
plan(sequential)

cbind(seq_values, par_values)
Modifier et exécuter le code