owlaira
@owlaira

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

クラウド環境での演算速度を求めたいです

解決したいこと

AWSの構成を考えるうえで、計算資源のEC2のスペックがどれだけコストに影響するか見積もりをしたいです。EC2はオンデマンドでの契約を考えているので、実際の計算時間がポイントになってくると思います。
EC2のインスタンスのスペックから、計算時間を求めているのですが、このような考え方は正しいのでしょうか?ご意見をお聞かせください。:bow_tone1::bow_tone1:

詳細

機械学習で予測を行うことを想定しているため、必要なインスタンスはGPU内臓のG5.Largeを選択しています。このインスタンスの内臓GPUは、NVIDIA A10G Tensor Coreであるため、計算機側のスペックはこれをベースに想定します。

まずは、計算機側の演算能力を調べます。
image.png
上の表によると、クラウド上でのGPUの計算速度は、31.2 TFLOPSと考えます。

次に、機械学習による予測タスクに必要な計算量を調べます。
image.png

引用2より、機械学習の計算に必要な計算量を考えます。MFLOPSの平均をとり、同様の機械学習を行うのに必要な計算量は8,800 MFLOPSと考えます。(有効数時2桁)

ここから、1インプットにかかる計算時間を求めると

(必要な計算量)/(使用する計算機の演算能力)= 8,800×10^6/31.2×10^12
                       = 0.00028

見積もり結果

0.028+α ミリ秒
そのため、最大0.028 msecで予測値が出力され、ここに通信などにかかる時間が加わる。
このような認識は正しいでしょうか?

引用

表1:https://qiita.com/yukoba/items/10d0ba3fb1d19a6ab6a5
表2:https://qiita.com/T-STAR/items/59527f2b5484b9c22d1e

0

2Answer

未経験の領域ですけれど。

モデルの表のInputShapeをみると、入力データのサイズを表していると思います。つまり「1インプット」ですね。となると、0.028msは、すごいサーバは「1枚の画像」を処理する時間です。

通常のPC端末のコア数は4ですが、すごいサーバは千単位です。単純計算すると、500倍です。そして、もしPC端末で処理する場合、0.028*500=14msです。

PC端末でDB処理なら、1秒100回の検索できます。つまり10msです。一回の処理と一回DB検索は、無根拠で同じレベルかと感じます。

というと、0.028msが正しいと思います。参考まで。

1Like

AWSのインスタンスは主に起動時間によって課金されます。
(他にも課金要素があるが割愛)
これはインスタンスを起動してからシャットダウンもしくは削除するまでの時間でカウントされます。そのため、AWSの費用を見積るためには処理時間ではなく 、何時間使用するかを考慮したほうが良いです。

AWSの料金見積もり等のページで見るこの表では時間あたりのコストが記載されています。
スクリーンショット 2023-11-14 9.55.31.png

また、見積もりツールも公式で用意されているのでそちらも参考にしてください。
https://calculator.aws/#/

1Like

Your answer might help someone💌