Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8957

Tensorflow.jsをNodejsで高速化しようとしたが、旧型CPUでは、WebGLの方が高速だった話

$
0
0

Tensorflowjsで2000年からの株価を元に、新値3本値のAI予測をブラウザで行っていたが、Nodejsで高速化できないかトライしてみた。CPUは激古のi5-650。

作業手順は、こちら参照。
https://randomwalkjapan.blogspot.com/2020/06/nodejstensorflow-how-to-setup.html

プログラムはこちら。
https://github.com/tanakayutaka/Tensorflow.js-tools-/blob/master/Nodejs%20Tensorflow%20BM%20test

結論は、

NodejsでNodeジェネリックでないTensorflow処理 6分
NodejsでNodeジェネリックなTensorflow処理 CPUが古すぎて動作せず

ChromeでハードウエアアクセラレーションON 4分 <== 最速
ChromeでハードウエアアクセラレーションOFF 12分

ということで、最近のCPUを持っていない限り、Tensorflowをジェネリックで走らせることはできず、ただWebGLを使った方が早いという結論でした。どのくらい最近のCPUから対応するのかは不明です。

ただ、最新のCPUだと、tfjs-nodeと、tfjs-node-gpuが準備されていて、これだとWebGLを凌ぐ速度がでるのでは、と思います。

なお、今のまま走らすと、次のコメントがコンソールに出力されてかわいいです。

============================

Hi there �. Looks like you are running TensorFlow.js in Node.js. To speed things up dramatically, install our node backend, which binds to TensorFlow C++, by running npm i @tensorflow/tfjs-node, or npm i @tensorflow/tfjs-node-gpu if you have CUDA. Then call require('@tensorflow/tfjs-node'); (-gpu suffix for CUDA) at the start of your program. Visit https://github.com/tensorflow/tfjs-node for more details.


Viewing all articles
Browse latest Browse all 8957