[GCU エクスペリエンス] PaddlePaddle + GCU に基づいたモデルを実行し、GCU のパフォーマンスをテストします

1. 環境

アドレス: Qizhi コミュニティ: https://openi.pcl.ac.cn/

2. 計算カードの紹介

ここに画像の説明を挿入
Yunsui T20 は、seis 2.0 チップをベースとしたデータセンター向けの第 2 世代人工知能トレーニング アクセラレーション カードで、幅広いモデル カバレッジ、強力なパフォーマンス、オープン ソフトウェア エコロジーの特徴を備えており、さまざまな人工知能トレーニング シナリオをサポートできます。同時に、柔軟な拡張性を備え、業界をリードする人工知能コンピューティング パワー クラスター ソリューションを提供します。

利点

  • 急増するコンピューティング能力による高精度のトレーニング
  • 専用チャネルのコンピューティング能力の拡張
  • 環境への配慮を幅広く支持
  • オープンかつ効率的なツール開発

3. コードウェアハウス

https://openi.pcl.ac.cn/Enflame/GCU_PaddlePaddle_Example

4. モデル + データセット

レスネット+イメージネット_raw

5. 走行結果

シングルカードシングルエポック

    "model": "ResNet50",
    "local_rank": 0,
    "batch_size": 64,
    "epochs": 1,
    "best_acc1": 0.05368589743589743,
    "device": "gcu",
    "skip_steps": 5,
    "early_stop_steps": -1,
    "train_fps_mean": 181.94580085847983,
    "train_fps_min": 171.20650785663634,
    "train_fps_max": 185.50593755138325,
    "training_time": "0:12:37"

fps_mean: 181.95
最高の acc: 0.05368589743589743

8 カード シングル エポック

    "model": "ResNet50",
    "local_rank": 0,
    "batch_size": 64,
    "epochs": 1,
    "best_acc1": 0.03766025641025641,
    "device": "gcu",
    "skip_steps": 10,
    "early_stop_steps": -1,
    "train_fps_mean": 132.09731651456303,
    "train_fps_min": 124.26364291218985,
    "train_fps_max": 154.88106976141714,
    "training_time": "0:08:09"

fps_mean: 132.09731651456303、
最高acc: 00.03766025641025641
直線性: 72.6%

8 カード 50 エポック

    "model": "ResNet50",
    "local_rank": 0,
    "batch_size": 64,
    "epochs": 50,
    "best_acc1": 0.7596153846153846,
    "device": "gcu",
    "skip_steps": 10,
    "early_stop_steps": -1,
    "train_fps_mean": 136.83746977332163,
    "train_fps_min": 57.52560204784666,
    "train_fps_max": 184.07473928475426,
    "training_time": "1:02:08"

fps_mean: 136.83746977332163
最高の acc: 0.7596153846153846

6. 提案

経験
操作を通じて、Epoch が 1 つしかない場合、または Epoch の数が少ない場合には、マルチカードの利点が明らかではないことがわかります。データ セットが大きく、Epoch の数が多い場合にのみ、マルチカードがその利点を発揮できる利点. フライング パドルは GCU で resnet を実行します
+imagenet_raw は一般に、GCU で実行する torch ほど速度が速くないと感じます. 同じ
バッチ サイズ (64) のフライング パドルは GCU で実行するには 1 時間 02 分かかりますが、pytorch は 1 時間しかかかりません、100 エポックで 18 分 22 秒。おそらくフライング パドル GCU で最適化を続けることができます。

提案

  1. GCU を使用して飛行パドルを使用してトレーニングおよび推論する方法に関するチュートリアルをさらに用意したり、modelzoo などのコード ウェアハウスを構築したりできれば、一緒にメンテナンスしてくれる開発者を見つけることができます。
  2. GCU を使用した場合の全体的な速度は依然として非常に速いため、後の段階で CPU および GPU プラットフォームの速度と精度と比較する時間があります。
  3. GCU プラットフォームが将来、tensorflow、mindspore などのさらに多くのフレームワークをサポートすることは可能ですか。
  4. 現在のスクリプト トレーニングにはプロセス出力がありません。py ファイルを変更することでログ出力を追加できますが、個人的には、初心者向けにログ出力のコード例を追加する方法をガイドするチュートリアルがあった方がよいと思います。初心者は知らないかもしれません。変更方法

おすすめ

転載: blog.csdn.net/yichao_ding/article/details/130080698