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

> 멀티 코어 또는 멀티 GPU 머신에서 스윕 에이전트를 병렬화합니다.

# 에이전트 병렬화

멀티 코어 또는 멀티 GPU 머신에서 스윕 에이전트를 병렬화해 여러 스윕 run을 동시에 실행하세요. 병렬화하면 하이퍼파라미터 공간을 탐색하는 데 필요한 시간을 줄일 수 있습니다. 이 페이지에서는 단일 호스트에서 사용 가능한 모든 컴퓨팅 리소스를 활용할 수 있도록 멀티 CPU 및 멀티 GPU 머신에서 병렬 에이전트를 실행하는 방법을 설명합니다.

시작하기 전에 먼저 스윕을 초기화해야 합니다. 자세한 내용은 [스윕을 초기화](/ko/models/sweeps/initialize-sweeps)를 참조하세요.

<div id="parallelize-on-a-multi-cpu-machine">
  ## 다중 CPU 머신에서 병렬화하기
</div>

다음 탭에서는 동일한 머신에서 여러 스윕 에이전트를 병렬로 실행하는 방법을 설명합니다. 병렬 에이전트는 각 에이전트가 자체 코어에서 실행될 수 있는 여러 CPU 코어가 있는 머신에서 특히 유용합니다. 워크플로에 따라 CLI 또는 Jupyter Notebook 탭을 선택하세요.

<Tabs>
  <Tab title="CLI">
    터미널에서 여러 CPU에 걸쳐 스윕 에이전트를 병렬로 실행하려면 [`wandb agent`](/ko/models/ref/cli/wandb-agent) 명령어를 사용하세요. [스윕을 초기화](/ko/models/sweeps/initialize-sweeps)할 때 W\&B가 반환한 sweep ID를 지정하세요.

    1. 로컬 머신에서 터미널 창을 두 개 이상 여세요.
    2. 다음 코드 스니펫을 복사해 붙여넣고 `[SWEEP-ID]`를 sweep ID로 바꾸세요:

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

  <Tab title="Notebook">
    Jupyter Notebook에서 여러 CPU에 걸쳐 스윕 에이전트를 병렬로 실행하려면 W\&B Python SDK 라이브러리를 사용하세요. [스윕을 초기화](/ko/models/sweeps/initialize-sweeps)할 때 W\&B가 반환한 sweep ID를 지정하고, `function` 매개변수를 스윕이 실행할 함수 이름으로 설정하세요.

    1. 노트북을 두 개 이상 여세요.
    2. 여러 노트북에 동일한 sweep ID를 복사해 붙여넣어 스윕을 병렬화하세요. 예를 들어, `sweep_id`라는 변수에 sweep ID가 저장되어 있고 함수 이름이 `function_name`이라면, 스윕을 병렬로 실행하려면 다음 코드 스니펫을 여러 노트북에 붙여넣으세요:

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

<div id="parallelize-on-a-multi-gpu-machine">
  ## 멀티 GPU 머신에서 병렬 실행하기
</div>

`CUDA_VISIBLE_DEVICES`를 사용해 각 [`wandb agent`](/ko/models/ref/cli/wandb-agent)에 서로 다른 GPU를 부여하면, 같은 머신의 여러 GPU에서 스윕 에이전트를 병렬로 실행할 수 있습니다. 이렇게 하면 에이전트가 동일한 디바이스를 두고 서로 경합하지 않습니다.

이 절차를 따르려면 다음이 필요합니다.

* GPU가 두 개 이상인 머신
* NVIDIA CUDA Toolkit 설치
* 터미널

예를 들어, 로컬 머신에 NVIDIA GPU가 두 개 있다고 가정해 보겠습니다. 각 명령의 `[SWEEP-ID]`를 스윕을 초기화할 때 W\&B가 반환하는 sweep ID로 바꾸세요.

1. 한 터미널에서 `CUDA_VISIBLE_DEVICES`를 `0`으로 설정하고 에이전트를 시작하세요.

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

2. 별도의 터미널에서 `CUDA_VISIBLE_DEVICES`를 `1`로 설정하고, 같은 sweep ID로 다른 에이전트를 시작하세요.

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