Optimum 文件

使用 Optimum 在 Intel Gaudi 上進行分散式訓練

您正在檢視的是需要從原始碼安裝。如果您希望使用常規的 pip install,請檢視最新的穩定版本 (v1.27.0)。
Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

使用 Optimum 在 Intel Gaudi 上進行分散式訓練

隨著模型變得越來越大,並行性已成為在有限硬體上訓練更大模型並將其訓練速度提高几個數量級的策略。

所有 PyTorch 示例GaudiTrainer 指令碼均可直接用於分散式訓練。有兩種啟動方式:

  1. 使用 gaudi_spawn.py 指令碼

    • 使用 MPI 進行分散式訓練

      python gaudi_spawn.py \
          --world_size number_of_hpu_you_have --use_mpi \
          path_to_script.py --args1 --args2 ... --argsN

      其中 --argX 是以分散式方式執行的指令碼的引數。問答示例此處,文字分類示例此處

    • 使用 DeepSpeed 進行分散式訓練

      python gaudi_spawn.py \
          --world_size number_of_hpu_you_have --use_deepspeed \
          path_to_script.py --args1 --args2 ... --argsN

      其中 --argX 是以分散式方式執行的指令碼的引數。問答示例此處,文字分類示例此處

  2. 直接在程式碼中使用 DistributedRunner

    from optimum.habana.distributed import DistributedRunner
    from optimum.utils import logging
    
    world_size=8 # Number of HPUs to use (1 or 8)
    
    # define distributed runner
    distributed_runner = DistributedRunner(
        command_list=["scripts/train.py --args1 --args2 ... --argsN"],
        world_size=world_size,
        use_mpi=True,
    )
    
    # start job
    ret_code = distributed_runner.run()

您可以將訓練引數 --distribution_strategy fast_ddp 設定為更簡單且通常更快的分散式訓練管理。更多資訊請參閱此處

如需進一步瞭解,我們邀請您閱讀我們的指南:

< > 在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.