2017-01-07 15 views
0

Microsoft Cognitive Network Toolkitの推奨または最小システム要件はありますか?私はgitのどこにでもこの情報を見つけることができません。cntkをインストールするためのハードウェア要件

+1

あなたはアズールを使用して開始し、AzureのノートPCを使用するためのいくつかの実験に –

+0

親指を行うことができます。すべてがすぐにインストールされ、すぐに開始することができます。 –

答えて

0

CNTK自体には最小限の要件があります。しかし、より多くのより要求の厳しいモデルのいくつかのトレーニングは遅くなる可能性がありますので、GPU(または8)を手に入れることができます。

1

あなたはここでGPUのハードウェアの要件にいくつかの参照を見つけることができます。

https://github.com/Microsoft/CNTK/wiki/Setup-CNTK-on-Windows

私はこれだけ使って(低すぎるスコアとGPUで、古いデスクトップマシン上の簡単な画像認識チュートリアルのいくつかをテストしましたCPU)、トレーニングを完了するのに1時間以上かかった。表面書(1世代)には数分かかりました。第1世代のSurface Bookは、GeForce GT 940Mにほぼ相当するとAnandTechが言ったことを使っています。私はデスクトップマシンで新しいハイエンドGPUカードを使ってテストしたことがありませんが、どのように実行されているかを知ることは面白いでしょう。

私はこのチュートリアルを使用して少しテストを行っ:私はトレーニングの1の部分のための次のような結果を得る私の表面帳(1世代)ではhttps://github.com/Microsoft/CNTK/blob/master/Tutorials/CNTK_201B_CIFAR-10_ImageHandsOn.ipynb

を:

Finished Epoch [1]: [Training] loss = 2.063133 * 50000, metric = 75.6% * 50000 16.486s (3032.8 samples per second) 
Finished Epoch [2]: [Training] loss = 1.677638 * 50000, metric = 61.5% * 50000 16.717s (2990.9 samples per second) 
Finished Epoch [3]: [Training] loss = 1.524161 * 50000, metric = 55.4% * 50000 16.758s (2983.7 samples per second) 

これらがされています1 NvidiaのK80 GPUでC6 AzureのVM上で実行してからの結果:あなたが見ることができるように

Finished Epoch [1]: [Training] loss = 2.061817 * 50000, metric = 75.5% * 50000 9.766s (5120.0 samples per second) 
Finished Epoch [2]: [Training] loss = 1.679222 * 50000, metric = 61.5% * 50000 10.312s (4848.5 samples per second) 
Finished Epoch [3]: [Training] loss = 1.524643 * 50000, metric = 55.6% * 50000 8.375s (5970.1 samples per second) 

は、AzureのVMが私の表面ブー比べて約2倍高速でありますあなたが実験する必要があり、強力なGPUを備えたマシンを持っていない場合、Azureはオプションになる可能性があります。 K80 GPUにはさらに多くのメモリが搭載されているため、より高いメモリ要件のモデルを実行できます。 AzureのVMは、コストを節約するために必要なときにのみ起動できます。私の表面帳で

、私は簡単にこのようなメモリエラーを取得します:

RuntimeError: CUDA failure 2: out of memory ; GPU=0 ; hostname=OLAVT01 ; expr=cudaMalloc((void**) &deviceBufferPtr, sizeof(AllocatedElemType) * numElements) 

これは、表面帳(1世代)のみ1ギガバイトGPUのメモリを持っているという事実によるものです。

アップデート:最初にテストを実行したとき、コードはCPU上で実行されていました。上記の結果はすべてGPUの使用によるものです。

あなたがCPU上で実行されているか、GPUには、次のコードを使用しているかどうかを確認するには、次のGPUの使用を使用するCNTKを依頼する

import cntk as C 
if C.device.default().type() == 0: 
    print('running on CPU') 
else: 
    print('running on GPU') 

を:

from cntk.device import set_default_device, gpu 
set_default_device(gpu(0)) 
+0

Nvidia GTX 1080をテストする人はいますか?そのような種類のGPUの数値を見ることは素晴らしいことです! – OlavT

0

GPUの要件は、CUDA有効カードですコンピューティング能力3.0以上。私はGPU GeForce GT 610でPC上でトレーニングをしようとしましたが、このメッセージを受け取りました:

GPU(GeForce GT 610)は計算機能2.1を備えています。 CNTKは、計算能力を備えたGPU上でのみサポートされてい 3.0以上

関連する問題