並列スーパーコンピューティング クラウド マルチカード トレーニングの完全なプロセス (環境設定からタスクの提出まで)

目次

序文

1. 公式 Web サイトからクライアントをダウンロードし、アカウントにログインします

2. ノードサーバーにリモート接続します。

3. 設置環境

3. コードとデータセットをサーバーにアップロードします

4. モデルのトレーニングのためにトレーニング タスクをコンピューティング ノードに送信します。

5. トレーニング済みファイルをダウンロードする 

エピローグ


序文

この記事の概要:並列スーパーコンピューティング クラウドの使用プロセスは、Huawei Cloud のモデルアーツやエラスティック クラウド サーバーとは大きく異なります。多くの初心者は、初めて並列スーパーコンピューティング クラウドを使用する場合、具体的な操作プロセスを理解できない可能性があるため、著者は、並列スーパーコンピューティング クラウドの使用方法に関する完全なガイド スーパーコンピューティング クラウドのマルチカード トレーニング モデルに関するチュートリアル。

著者の紹介: 著者は人工知能の錬金術師です。現在、研究室の主な研究方向は生成モデルです。他の方向についてもある程度の知識を持っています。CSDN プラットフォームで同じく人工知能に興味を持つ友人とコミュニケーションを図ることを望んでいます。 . 共有して一緒に進歩しましょう。皆さんありがとうございます~~~

 如果你觉得这篇文章对您有帮助,麻烦点赞、收藏或者评论一下,这是对作者工作的肯定和鼓励。  

1. 公式 Web サイトからクライアントをダウンロードし、アカウントにログインします

公式サイトリンク: https: //cloud.paratera.com/

クリックしてクライアントをダウンロードし、ダウンロードするのに適したバージョンを選択します。

次に、アカウントにログインします

図に示すように、当社が主に利用するスーパーコンピューティングサービスは以下のとおりです。

クイック転送: 主に、ローカル ファイル リソースをサーバーにアップロードしたり、サーバー ファイルをローカル ファイルにダウンロードしたりするために使用されます。

Putty: リモートでサーバーに接続します。SSH との違いは、Putty はコンピュータ上でローカルに実行されるのに対し、SSH は並列スーパーコンピューティング クラウド クライアント インターフェイスで実行されることです。個人的には、Putty ほど使いやすくはないと思います。

コンソール:消費状況の確認やヘルプマニュアルの閲覧に使用します。

具体的な使い方と導入については後述します。

2. ノードサーバーにリモート接続します。

パテを開く

 

購入したスーパーコンピューティング ノードを選択して接続します

 

以上が並列スーパーコンピューティングクラウドの簡単なマニュアルです。

結論は:

Putty を介して接続するノードはログイン ノードで、主に環境のインストールと、アップロードされた圧縮パッケージの解凍に使用されます。しかし、Pythonプログラムを実行できません

3. 設置環境

まず moduleload anaconda/2021.11 を使用して anaconda ライブラリをロードし、conda を使用してログイン ノード上の環境を構成できるようにします。

次に、source activate [conda 環境名] を使用して conda 環境に入ります。PS: 並列スーパーコンピューティング クラウド内の pytorch、tensorflow、mmcv などのライブラリは手動でコンパイルしてインストールする必要があるため、操作に慣れていない場合は、並列スーパーコンピューティング クラウドのエンジニアに直接連絡して、アカウントと pytorch を提供してください。 、python、インストールする pytorch、cuda およびその他のバージョンを使用して、適切な conda 環境を作成することができます。

 

conda list コマンドを使用して、現在の conda 環境にインストールされているライブラリを確認します。

新しいライブラリをインストールする必要がある場合は、次のコマンドを使用してインストールします。

pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple

3. コードとデータセットをサーバーにアップロードします

クイック転送をオンにする

 対応するスーパーコンピューティング アカウントに接続します

 

ローカルの ZIP 圧縮パッケージを空の場所またはフォルダーにドラッグ アンド ドロップすると、自動的にアップロードされます。次に、Putty で次のコマンドを使用して、ZIP アーカイブを指定したパスに解凍します。

unzip /path/to/file.zip(压缩包路径) -d /path/to/destination(目标路径)

コードとデータセットをアップロードして解凍した後、モデルのトレーニングを開始するためのシェル スクリプトを作成する必要があります。

#!/bin/bash 
//比如是这个为开头

module load anaconda/2021.11 
//加载anaconda
module load cuda/11.3
//加载cuda
source activate python
//进入你的conda环境,这里的python要改为你自己的conda环境名

export WORLD_SIZE=4
//单机多卡的话使用多少张卡就设置为几

python -m torch.distributed.launch --nproc_per_node=4 /home/bingxing2/home/xxx/zjd/zijiandu/models/train.py
//同理_per_node也是设置为卡数,然后路径设置为自己模型的训练脚本路径

/var/www/borg/fuel/app/tasks/monitor_sync.sh/var/www/borg/fuel/app/tasks/monitor_sync.sh が表示される場合: 11 行目: $'\r': コマンドが見つかりません/var/ www/borg/fuel/app/tasks/monitor_sync.sh: 行 12: 予期しないトークン `$'{\r'' 付近の構文エラー 改行文字を使用してエラーが報告された場合、これはシェル スクリプトの形式が正しくないことが原因です。 dos2unix コマンドは、シェル スクリプトの形式を変換し、シェル スクリプトを再実行します。

dos2unix /home/xxx/avc/sss.sh(你的shell脚本的路径)

 4. モデルのトレーニングのためにトレーニング タスクをコンピューティング ノードに送信します。

まず cd コマンドを使用して、以前に作成したシェル スクリプトのディレクトリに入ります。

 

次に、 sbatch --gpus=4 ./shell スクリプト名を使用して、スクリプト タスクをトレーニング用のコンピューティング ノードに送信します。ここでは、デモンストレーションのために 4 台の A100 を使用します。

 

これは、送信が成功したことを意味します。60373 は計算プロセス番号です。このプロセス番号を使用して、後で計算ジョブをキャンセルできます。

 

次に、次の図に示すように、parajobs コマンドを使用して、コンピューティング ノード内の各グラフィックス カードの実行ステータスを表示します。

 

ジョブを停止したい場合は、sancel プロセス ID を使用してジョブをキャンセルします。

 

これはログ ファイルであり、エラー メッセージや印刷情報がすべて含まれています。

5. トレーニング済みファイルをダウンロードする 

フォルダ内のファイルを直接ダウンロードすることはできないので、まずダブルクリックして左側のローカルディスクに入ります。

 

次に、ダウンロードしたファイルを保存するパスを入力します

 

この時点でファイルを右クリックし、対応するローカル パスにダウンロードできます。 

 

現時点では、これが並列スーパーコンピューティング クラウド コンピューティング センター全体の基本的なモデルの使用プロセスとトレーニング方法です。 

 

後で問題が発生した場合は、コンソールを開くことができます 

 

ヘルプドキュメントを選択してください 

 

対応するパーティションのユーザー マニュアルを選択します。これには、サーバー上でさまざまなコマンドを使用する方法に関するチュートリアルが含まれています。 

エピローグ

 如果您觉得这篇文章对您有帮忙,请点赞、收藏。您的点赞是对作者工作的肯定和鼓励,这对作者来说真的非常重要。如果您对文章内容有任何疑惑和建议,欢迎在评论区里面进行评论,我将第一时间进行回复。 

おすすめ

転載: blog.csdn.net/qq_35768355/article/details/132875292