> ## Documentation Index
> Fetch the complete documentation index at: https://wb-21fd5541-update-regex-mention.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Parallélisez les agents de balayage W&B sur des machines multicœurs ou multi-GPU.

# Paralléliser les agents

Parallélisez vos agents de balayage W\&B sur une machine multicœur ou multi-GPU afin d'exécuter plusieurs exécutions de balayage W\&B simultanément. La parallélisation réduit le temps nécessaire pour explorer votre espace d'hyperparamètres. Cette page vous montre comment lancer des agents en parallèle sur des machines multi-CPU et multi-GPU afin d'utiliser toutes les ressources de calcul disponibles sur un seul hôte.

Avant de commencer, vous devez initialiser votre balayage W\&B. Pour plus d'informations, voir [Initialiser les balayages W\&B](/fr/models/sweeps/initialize-sweeps).

<div id="parallelize-on-a-multi-cpu-machine">
  ## Paralléliser sur une machine multi-CPU
</div>

Les onglets suivants expliquent comment exécuter plusieurs agents de balayage W\&B en parallèle sur une même machine. Les agents parallèles sont particulièrement utiles sur une machine dotée de plusieurs cœurs de CPU, où chaque agent peut s’exécuter sur son propre cœur. Choisissez l’onglet CLI ou Jupyter Notebook en fonction de votre flux de travail.

<Tabs>
  <Tab title="CLI">
    Utilisez la commande [`wandb agent`](/fr/models/ref/cli/wandb-agent) pour paralléliser votre agent de balayage W\&B sur plusieurs CPU depuis le terminal. Indiquez l’ID du balayage W\&B renvoyé par W\&B lorsque vous avez [initialisé le balayage W\&B](/fr/models/sweeps/initialize-sweeps).

    1. Ouvrez plusieurs fenêtres de terminal sur votre machine locale.
    2. Copiez-collez l’extrait de code suivant et remplacez `[SWEEP-ID]` par l’ID de votre balayage W\&B :

       ```bash theme={null}
       wandb agent [SWEEP-ID]
       ```
  </Tab>

  <Tab title="Notebook">
    Utilisez le SDK Python W\&B pour paralléliser votre agent de balayage W\&B sur plusieurs CPU dans des notebooks Jupyter. Indiquez l’ID du balayage W\&B renvoyé par W\&B lorsque vous avez [initialisé le balayage W\&B](/fr/models/sweeps/initialize-sweeps), puis définissez le paramètre `function` sur le nom de la fonction exécutée par le balayage W\&B :

    1. Ouvrez plusieurs notebooks.
    2. Copiez-collez l’ID du balayage W\&B dans plusieurs notebooks pour paralléliser un balayage W\&B. Par exemple, si l’ID du balayage W\&B est stocké dans une variable appelée `sweep_id` et que le nom de la fonction est `function_name`, collez l’extrait de code suivant dans plusieurs notebooks pour paralléliser votre balayage W\&B :

       ```python theme={null}
       wandb.agent(sweep_id=sweep_id, function=function_name)
       ```
  </Tab>
</Tabs>

<div id="parallelize-on-a-multi-gpu-machine">
  ## Paralléliser sur une machine multi-GPU
</div>

Exécutez des agents de balayage W\&B en parallèle sur plusieurs GPU d’une même machine à l’aide de `CUDA_VISIBLE_DEVICES` pour attribuer chaque [`wandb agent`](/fr/models/ref/cli/wandb-agent) à un GPU différent, afin que les agents s’exécutent en parallèle sans entrer en concurrence pour le même périphérique.

Pour suivre cette procédure, vous avez besoin des éléments suivants :

* Une machine avec plusieurs GPU.
* Le toolkit NVIDIA CUDA installé.
* Un terminal.

Par exemple, supposons que vous disposiez de deux GPU NVIDIA sur votre machine locale. Remplacez `[SWEEP-ID]` dans chaque commande par l’ID de balayage W\&B que W\&B renvoie lorsque vous initialisez un balayage W\&B :

1. Dans un terminal, définissez `CUDA_VISIBLE_DEVICES` sur `0` et démarrez un agent :

   ```bash theme={null}
   CUDA_VISIBLE_DEVICES=0 wandb agent [SWEEP-ID]
   ```

2. Dans un autre terminal, définissez `CUDA_VISIBLE_DEVICES` sur `1` et démarrez un autre agent avec le même ID de balayage W\&B :

   ```bash theme={null}
   CUDA_VISIBLE_DEVICES=1 wandb agent [SWEEP-ID]
   ```
