Deep Learning Containers (DLC) のトレーニングジョブを送信する際、コード設定またはマウントを使用して Object Storage Service (OSS)、File Storage NAS (NAS)、Cloud Parallel File Storage (CPFS)、または MaxCompute ストレージを構成できます。これにより、トレーニングプロセス中に指定されたストレージから直接データを読み書きできます。
前提条件
-
PAI (DLC) をアクティブ化し、ワークスペースを作成済みであること。詳細については、「PAI のアクティブ化とデフォルトワークスペースの作成」をご参照ください。
-
(オプション) OSS ストレージを使用する場合は、以下の手順を完了してください。
-
OSS をアクティブ化し、PAI に必要な権限を付与済みであること。詳細については、「OSS のアクティブ化」および「PAI サービスアカウントの認可」をご参照ください。
-
OSS バケットを作成済みであること。詳細については、「コンソールクイックスタート」をご参照ください。
-
-
(オプション) NAS を使用する場合は、汎用 NAS ファイルシステムを作成する必要があります。詳細については、「ファイルシステムの作成」をご参照ください。
-
(オプション) MaxCompute ストレージを使用する場合は、MaxCompute をアクティブ化し、MaxCompute プロジェクトを作成する必要があります。詳細については、「MaxCompute のアクティブ化」および「MaxCompute プロジェクトの作成」をご参照ください。
OSS ストレージの使用
マウントによる OSS ストレージの構成
DLC のトレーニングジョブを作成する際、OSS をマウントできます。以下のマウントタイプがサポートされています。構成の詳細については、「トレーニングジョブの作成」をご参照ください。
|
マウントタイプ |
説明 |
|
[Mount dataset] |
データセットをマウントします。データセットは、カスタムデータセットまたはパブリックデータセットのいずれかです。
OSS タイプのデータセットを選択し、Mount Path を構成します。DLC ジョブが実行されると、システムはこのパスで OSS データにアクセスします。 |
|
[Mount storage] |
OSS バケットパスをマウントし、[読み取り専用] スイッチを使用して読み書き権限を設定します。 |
DLC は、OSS のマウント向けに JindoFuse と ossfs をサポートしています。
マウントを使用しない OSS ストレージの構成
DLC ジョブは、OSS PyTorch Connector または OSS SDK を使用して OSS からデータを読み書きできます。トレーニングジョブを作成する際、関連するコードファイルを構成します。コード例については、「OSS Connector for AI/ML」または「OSS SDK」をご参照ください。
[コード設定] セクションの [オンライン設定] タブで、ドロップダウンリストからコードソースを選択し、コードの [マウントパス] を入力します。
NAS/CPFS ストレージの使用
DLC ジョブを作成する際、NAS/CPFS タイプのカスタムデータセットをバインドするか、ストレージマウントを使用することで、NAS または CPFS ストレージを使用できます。構成の詳細については、「NAS/CPFS の使用」をご参照ください。
[データセットのマウント] セクションで、[マウントパス] を設定します (例:/mnt/data/)。[ストレージのマウント] セクションで、[ファイルシステムの選択]、[ファイルシステムマウントポイント]、[ファイルシステムパス]、[マウントパス] を順に構成します (例:/mnt/data2/)。選択したストレージタイプに単一アベイラビリティーゾーンのリスクがある場合、オレンジ色の警告が表示されます。
|
マウントタイプ |
説明 |
|
[Mount dataset] |
カスタムデータセットをマウントします。[読み取り専用] スイッチを使用して読み書き権限を設定できます。 |
|
[Mount storage] |
NAS または CPFS ファイルシステムをマウントし、[読み取り専用] スイッチを使用して読み書き権限を設定します。 さらに、[詳細設定] で nconnect パラメータを設定することで、DLC コンテナが NAS にアクセスする際のスループットを向上させることができます。nconnect は NFS クライアント用の Linux マウントオプションであり、クライアントとサーバー間でより多くの TCP トランスポート接続を確立することでスループットを向上させます。詳細については、「Linux オペレーティングシステムから NAS にアクセスする際のパフォーマンス低下を解決する方法」をご参照ください。例:
|
MaxCompute ストレージの使用
MaxCompute ストレージはマウントを使用せずに利用できます。トレーニングジョブを作成する際、関連するコードファイルを構成します。コード例については、「MaxCompute の使用」をご参照ください。
よくある質問
Q: PAIIO ジョブ 'killed' without error
この問題はリソース不足が原因です。PAIIO はメモリ使用量を制限しないため、MaxCompute データを読み取る際に大量のメモリを消費する可能性があります。コンテナがメモリ不足になると、OS やその他のシステムコンポーネントもリソースを消費するため、プロセスはオペレーティングシステムによって強制終了される可能性があります。