以下の実験をやってみましょう
SST-G (System S の SST GPU 版)
SST-C1 (System S の SST CPU 版, Matrix Compression なし)
SST-C2 (System S の SST CPU 版, Matrix Compression あり)
の3つを以下で比較してください
[前提]
- 今 5000 個のデータがありますが、600個ぐらいのデータに削減しましょう
(500個の時系列データを取るので、実際に計算するのはこれだと100回になります)
[1次元データのみ]
- SST-G : 1回の処理で1秒だとすると、大体100秒ぐらいで終わりますね。
全体の総実行時間を処理回数で割って、1回の処理時間の平均、最大、最小を計算してください。
- SST-C1, SST-C2 でも SST-G と同様のことを行ってください。
- SST-G, SST-C1, SST-C2 の1回の平均処理時間の比較データを作成してください。
リアルタイムの異常検知が1秒だとして、SST-C1, SST-C2 においてはその条件が満たせないことを
示してください
[他次元データの場合]
- SPADE のプログラムを用いて、多次元で計測してください。まずは3次元データですね。
- SST-G :
- 次元数を 1 から最大 130 まで増加させていって、平均処理時間を観測してください。
- これで、あまり変わらないことが言えればベストです。1つの次元に対して、
転送する行列サイズが 500x500 で float だと 1MB 程度。130次元でも
GPU 上のメモリにのるはずです。
- SST-C1, SST-C2 において、ノード数(3つ)に増やすことによって、スケールすることを確認してください
- ただし、ノード数には限界があるので、SST-C1/SST-C2 が扱えるのは、うちの環境では8次元ぐらいまでですね
- 「次元数が多くても、GPU の場合はレイテンシを保ちつつ、スケールすることが可能」というメッセージが言えればいいですね。
まずは、上記の実験を完了させて、次はウィンドウサイズを可変 (512 ぐらいまで) にして同様の
実験を走らせて、グラフ化すればいいでしょうね。
gnuplotでeps
12 年前
0 件のコメント:
コメントを投稿