Sugon スーパーコンピューティング プラットフォームのディープラーニング動作

1. DCU の動作:

1. 環境をインストールしてテストする

1.1 pytorchをインストールする

DCU をサポートするには、提供されている pytorch をインストールする必要があります。

  • 独自の環境をアクティブ化します。source acctivate 环境名
  • トーチをインストールします:
    pip install /public/software/apps/DeepLearning/whl/dtk-22.04.2/torch-1.10.0a0_gitc7f69d6_dtk22.04.2-cp37-cp37m-manylinux2014_x86_64.whl
    
  • torchvision をインストールします。
    pip install /public/software/apps/DeepLearning/whl/dtk-22.04.2/torchvision-0.10.0a0_dtk22.04.2_e17f5ea-cp37-cp37m-manylinux2014_x86_64.whl
    

1.2 DCUが呼び出せるか確認する

  • キューを表示:whichpartition

  • アプリケーションノード:salloc -p 队列名 -N 1 --gres=dcu:2

  • 適用されたノードに従ってノードにログインします。ssh 节点

  • rocm コンパイラのバージョンを切り替えます (dtk22.04 ドライバをロードします)。module switch compiler/dtk/22.04.1

  • 環境変数を追加する

    • 環境変数を保存するテキストを編集します。vi ~/pytorch_env.sh
    • 以下を追加します。
      export
      LD_LIBRARY_PATH=/public/software/apps/DeepLearning/PyTorch_Lib/lib:/public/software/apps/DeepLearning/PyTorch_Lib/lmdb-0.9.24-build/lib:/public/software/apps/DeepLearning/PyTorch_Lib/opencv-2.4.13.6-build/lib:/public/software/apps/DeepLearning/PyTorch_Lib/openblas-0.3.7-build/lib:$LD_LIBRARY_PATH
      
    • 保存 ESC + :+ w+ q
    • 環境変数をアクティブにします。source ~/pytorch_env.sh
  • 環境をアクティブ化します。source acctivate 环境名

  • 次のステートメント検証を実行します。

     python
    
    import torch
    torch.cuda.is_available()
    torch.__version__
    
  • ログアウトノードexit

2. ジョブの操作

2.1 課題の提出

  • まず、独自の .sh ジョブ送信スクリプトを作成します。
  • ジョブ スクリプト テンプレート:
    • ドライバーはジョブスクリプトにロードされていますが、環境変数が設定されていません

    • ファイルを編集: vi ファイル名 (例: vi fastrcnn.sh) またはファイルを直接開きます

    • ここに画像の説明を挿入

    • sbatch 作业名.sh(例: sbatch fastrcnn.sh)経由で送信します。

2.2 割り当ての表示

端子入力:squeue

2.3 ジョブの削除

ターミナル入力: scancel 作业号(ジョブ番号は squeue を実行するもので、ジョブ ID の下にある番号です)

2.4 出力をリアルタイムで表示する

ターミナル入力: tail -f 出力ファイル名 (出力ファイルはスクリプト ファイルと同じディレクトリにあり、ターミナルに文字を入力するlsと表示されますll)

3. 試験概要

カーブフィッティングの効果は少し良くありません。同じ構成 (8 コアのシングル カード) では、それぞれの計算時間と結果は非常に不安定で、大きな差があります。これは状況によって異なります。

2. GPU操作マニュアル

1. 環境をインストールしてテストする

1.1 pytorchをインストールする

GPU をサポートするには、提供されている pytorch をインストールする必要があります。

  • 独自の環境をアクティブ化します。source acctivate 环境名
  • torch をインストールする: エンジニアにどのバージョンの pytorch をインストールする必要があるかを直接尋ねてから、pytorch [公式 Web サイト] にアクセスして、対応するバージョンを見つけます。公式ウェブサイトに記載されている指示に従ってください。

1.2 GPUが呼び出せるか確認する

  • キューを表示:whichpartition

  • アプリケーションノード:salloc -p 队列名 -N 1 --gres=gpu:1

  • 適用されたノードに従ってノードにログインします。ssh 节点

  • cuda (pytorch バージョン番号に従って) ドライバーをロードします。module load apps/cuda/10.2

  • 環境をアクティブ化します。source acctivate 环境名

  • 次のステートメント検証を実行します。

     python
    
    import torch
    torch.cuda.is_available()
    torch.__version__
    
  • ログアウトノードexit

2. ジョブの操作

2.1 課題の提出

  • まず、独自の .sh ジョブ送信スクリプトを作成します。
  • ジョブ スクリプト テンプレート:
    • ドライバーはジョブスクリプトにロードされていますが、環境変数が設定されていません

    • ファイルを編集: vi ファイル名 (例: vi fastrcnn.sh) またはファイルを直接開きます

    • ここに画像の説明を挿入

    • sbatch 作业名.sh(例: sbatch fastrcnn.sh)経由で送信します。

2.2 割り当ての表示

端子入力:squeue

2.3 ジョブの削除

ターミナル入力: scancel 作业号(ジョブ番号は squeue を実行するもので、ジョブ ID の下にある番号です)

2.4 出力をリアルタイムで表示する

ターミナル入力: tail -f 出力ファイル名 (出力ファイルはスクリプト ファイルと同じディレクトリにあり、ターミナルに文字を入力するlsと表示されますll)

3. 試験概要

カーブのフィット感も非常に良く、タイムも速いです。これを使ってもいいし、これを使ってもいい。

おすすめ

転載: blog.csdn.net/baobao135/article/details/126924428