OpenCL:MQL5での内部実装テスト - ページ 40 1...333435363738394041424344454647...70 新しいコメント Vladimir Gomonov 2012.03.21 07:51 #391 joo:1.コンピュータゲームはGPUの温度を気にせず、最大まで負荷をかけても何も起こらない-グラフィックスカードは動作します。2.この場合、CPUの温度を返すMQL機能も必要です。そうしないと、プロセッサが焦げるかもしれません。3.- 確かに、損はないでしょう。1.なぜ、気にしないと言えるのか?事実ではありません。気にしない人もいるかもしれません。掲示板には、おもちゃでカードを燃やした人もたくさんいますしね。 GeForce GTX 590に付属するドライバは、ビデオカードを焼く可能性があります。 スウェーデンの愛好家は、GeForce GTX 590 ドライバ バージョン 267.52 は、ハイエンドの GeForce GTX590 を損傷する可能性がありますを発見する必要があった。最初のデュアルプロセッサーの3Dカードは、オーバークロックをしようとして焼失しました。GPUの電圧がオーバークロックされていたため、2つ目のGPUがどのような挙動を示すかを確認することにしましたが、これも同じ運命をたどりました。 NVIDIAの協力を得て、この執拗なスウェーデン人たちは、障害の原因がドライバのバグであり、過負荷保護機能が働かないことにあることを突き止めることに成功したのです。 カードが故障するまでの過程を、分かりやすくビデオに収めました。 サーバーからファイルをダウンロードするには、会員登録が必要です。 新しいドライバーの バージョン267.71でテストを繰り返しました。バグが修正され、保護機構が機能することを確認した。残念ながら、カードにはエラーのあるドライバが付属していました。なお、この保護機構は、ユーザーが周波数や電圧を実験している場合だけではないことに注意する必要がある。通常の使用において、異常事態が発生した場合、開発者の救済措置が唯一の希望となることもあり得ます。 マニアの 方は、同梱のドライバを絶対にインストールせず、NVIDIAのウェブサイトから新しいバージョンをダウンロードすることをお勧めします。また、オーバークロック愛好家は、PCケース内の換気をよくする必要があります。 2.反論はしません。しかし、それほど重大なことではありません。プロセッサが過熱すると、Windowsはブルースクリーンにクラッシュしてしまいます。不愉快だが、比べものにならない。:)3.間違いなく実現可能です。カードの温度や その他のパラメータを監視するプログラムは非常にたくさんあります。(ただ、私はすでに4つ持っています。) どういうわけか、この情報を入手しているのですね?Zy あと、高温になるとカードが誤算を起こし始めるという噂もありましたね。おもちゃの場合、それは致命的なことではなく、どこか好ましくないことなのです。 Andrey Dik 2012.03.21 08:06 #392 カードが燃えたのは、GPU上で動作するソフトウェアが温度を制御できなかったからではなく、過負荷保護機構を内蔵するビデオカードのドライバーにエラーが発生したためです。ドライバエラーと無縁な人はいませんし、GPUでアプリケーションを実行していなくても、ドライバエラーが原因でカードが焼き切れる可能性はあります。心配しなくても、ハードに最大限の負荷をかければ、頑張っても何も悪いことは起きないのです。最近のハードウェアは、CPUもGPUも過負荷に対する保護システムが搭載されています。CPUからクーラーを取り外せば、文字通り火事になるような時代ではなくなりました。 Mykola Demko 2012.03.21 12:03 #393 joo 2012.03.21 09:06 # カードが焼けるのは、過負荷保護機構を内蔵したビデオカードのドライバーにエラーが発生したためで、GPU上で動作するソフトウェアが温度を監視していないためではありません。ドライバエラーと無縁な人はいませんし、GPU上でアプリケーションが動作していなくても、ドライバエラーが原因でカードが焼き切れる可能性はあります。 心配しなくても、ハードに最大限の負荷をかければ、頑張っても何も悪いことは起きないのです。最近のハードウェアは、CPUもGPUも過負荷に対する保護システムが搭載されています。 CPUからクーラーを取り外すと、文字通り火事になるような時代はもう昔の話です。 そうですね、温度制御は低レベルのユーティリティタスク(もしかしたらハードウェアタスクかもしれません)ですね。 高級言語で書かれたソフトウェアから温度をコントロールするのは、自殺行為です。 Andrey Dik 2012.03.21 12:21 #394 このGPUのハズレを試した人はいますか?並列ループで実行し、それぞれが100000000(1億)回反復する。感想をお聞かせください。//+------------------------------------------------------------------+ //| OpenCLTest.mq5 | //| Copyright 2011, MetaQuotes Software Corp. | //| http://www.mql5.com | //+------------------------------------------------------------------+ #property copyright "Copyright 2011, MetaQuotes Software Corp." #property link "http://www.mql5.com" #property version "1.00" //—————————————————————————————————————————————————————————————————————————————— const string cl_src= "__kernel void MFractal( \r\n" " __global int *out \r\n" " ) \r\n" " { \r\n" " int i = get_global_id(0); \r\n" " for(int u=0;u<100000000;u++) \r\n" " { \r\n" " out[i]+=u; \r\n" " if(out[i]>10000) \r\n" " out[i]=0; \r\n" " } \r\n" " out[i]+= i; \r\n" " } \r\n"; //—————————————————————————————————————————————————————————————————————————————— #define BUF_SIZE 480 //—————————————————————————————————————————————————————————————————————————————— void OnStart() { int cl_ctx; // идентификатор контекста int cl_prg; // идентификатор программы int cl_krn; // идентификатор ядра int cl_mem; // идентификатор буфера //---------------------------------------------------------------------------- //--- инициализируем OpenCL объекты if((cl_ctx=CLContextCreate(false))==0) { Print("OpenCL not found"); return; } if((cl_prg=CLProgramCreate(cl_ctx,cl_src))==0) { CLContextFree(cl_ctx); Print("OpenCL program create failed"); return; } if((cl_krn=CLKernelCreate(cl_prg,"MFractal"))==0) { CLProgramFree(cl_prg); CLContextFree(cl_ctx); Print("OpenCL kernel create failed"); return; } if((cl_mem=CLBufferCreate(cl_ctx,BUF_SIZE*sizeof(float),CL_MEM_READ_WRITE))==0) { CLKernelFree(cl_krn); CLProgramFree(cl_prg); CLContextFree(cl_ctx); Print("OpenCL buffer create failed"); return; } //---------------------------------------------------------------------------- //--- подготовимся к выполению uint offset[1]={0}; uint work [1]={BUF_SIZE}; //--- выставляем неизменяемые параметры функции OpenCL //CLSetKernelArg (cl_krn,4,max); CLSetKernelArgMem(cl_krn,0,cl_mem); //--- подготовим буфер для вывода пикселей uint buf[]; ArrayResize(buf,BUF_SIZE); uint x=GetTickCount(); //--- выставляем плавающие параметры //CLSetKernelArg(cl_krn,0,x0); //CLSetKernelArg(cl_krn,1,y0); //CLSetKernelArg(cl_krn,2,x1); //CLSetKernelArg(cl_krn,3,y1); //--- считаем на GPU CLExecute(cl_krn,1,offset,work); //--- забираем данные из буфера CLBufferRead(cl_mem,buf); //--- выведем время расчётов Print(IntegerToString(GetTickCount()-x)+" msec"); /* //--- посмотрим ка что там насчитал нам GPU for(int i=0;i<BUF_SIZE;i++) { Print(buf[i]); } */ //--- удаляем объекты OpenCL CLBufferFree (cl_mem); CLKernelFree (cl_krn); CLProgramFree(cl_prg); CLContextFree(cl_ctx); } //——————————————————————————————————————————————————————————————————————————————2012.03.21 18:20:36 Tast Mand_ (EURUSD,H1) 5741 msec2012.03.21 18:15:53 Terminal CPU: GenuineIntel Intel(R) Core(TM) i5-2500 CPU @ 3.30GHz with OpenCL 1.1 (4 units, 3311 MHz, 8174 Mb, version 2.0).2012.03.21 18:15:53 Terminal GPU: NVIDIA Corporation GeForce GTX 570 with OpenCL 1.1 (15ユニット、1464MHz、1280Mb、バージョン296.10) ファイル: Tast_Mand_.mq5 4 kb テストの操作ログ - アルゴリズム取引、自動売買ロボット Sceptic Philozoff 2012.03.21 13:05 #395 MetaDriver: また、温度が高くなるとカードが誤動作し始めるという噂もありました。 ハエが大量死したりするからでしょうか? Andrey Dik 2012.03.21 13:13 #396 Mathemat: ハエの死か何かですか? テストを実行してみてください(上記の私の投稿を参照してください)。画面が固まったり、マウスカーソルが動いたりしませんか? Vladimir Gomonov 2012.03.21 13:16 #397 Mathemat: ハエが死ぬからとか?これは、ほとんどの工程が可逆的であるため、あり得ないことです。電子-正孔プラズマの揺らぎ...(oh how!)です。個々のビットが時々クリックする。あなたと私は、道を外れた。:)私はカードが90℃になると本当に怖くなります。 この場合、一連の実行の間に数千ミリ秒をかけると、少なくとも82℃に保たれます。入れていますが、必要に応じて柔軟に入れる必要があることと、温度の閾値をプログラムで設定できることが良い点です。 Sceptic Philozoff 2012.03.21 13:40 #398 joo: テストを実行してみてください(上記の私の投稿を参照してください)。画面が固まったり、マウスカーソルが動いたりしませんか?まあ、私はあなたのような強力なハードウェアを持っていないのですが。 これから試してみますが、AMDのドライバを入れ直します。 Andrey Dik 2012.03.21 13:46 #399 Mathemat:私はあなたのような強力なハードを持っていないのです。 これから試してみますが、AMDのドライバを入れ直します。 ちなみに、現在私のCPUにはAMDのOpenCLドライバが入っています。Intelのものは何のエラーもなくインストールされますが、プロセッサがOpenCLデバイスとして検出されないので、入れざるを得なかったのです。 Dmitriy Parfenovich 2012.03.21 13:50 #400 2012.03.21 15:45:49 Tast_Mand_ (EURUSD,H1) 16801 msec 2012.03.21 15:42:19 Terminal CPU: AuthenticAMD AMD Athlon(tm) II X4 630 Processor with OpenCL 1.1 (4 units, 2998 MHz, 2048 Mb, version 2.0) 2012.03.21 15:42:19 Terminal GPU: NVIDIA Corporation GeForce GT 440 with OpenCL 1.1 (2 units, 1660 MHz, 1024 Mb, version 295.73) ビデオカードへの負担は感じられず、動作もクリック感も良好。テスト中にディスパッチャを開くと、これも問題なく、ラグもなく、ただテスト時間が17秒になっただけでした。 1...333435363738394041424344454647...70 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
1.コンピュータゲームはGPUの温度を気にせず、最大まで負荷をかけても何も起こらない-グラフィックスカードは動作します。
2.この場合、CPUの温度を返すMQL機能も必要です。そうしないと、プロセッサが焦げるかもしれません。
3.- 確かに、損はないでしょう。
1.なぜ、気にしないと言えるのか?事実ではありません。気にしない人もいるかもしれません。掲示板には、おもちゃでカードを燃やした人もたくさんいますしね。
GeForce GTX 590に付属するドライバは、ビデオカードを焼く可能性があります。
カードが故障するまでの過程を、分かりやすくビデオに収めました。
サーバーからファイルをダウンロードするには、会員登録が必要です。
新しいドライバーの バージョン267.71でテストを繰り返しました。バグが修正され、保護機構が機能することを確認した。残念ながら、カードにはエラーのあるドライバが付属していました。なお、この保護機構は、ユーザーが周波数や電圧を実験している場合だけではないことに注意する必要がある。通常の使用において、異常事態が発生した場合、開発者の救済措置が唯一の希望となることもあり得ます。
マニアの
方は、同梱のドライバを絶対にインストールせず、NVIDIAのウェブサイトから新しいバージョンをダウンロードすることをお勧めします。また、オーバークロック愛好家は、PCケース内の換気をよくする必要があります。
2.反論はしません。しかし、それほど重大なことではありません。プロセッサが過熱すると、Windowsはブルースクリーンにクラッシュしてしまいます。不愉快だが、比べものにならない。:)
3.間違いなく実現可能です。カードの温度や その他のパラメータを監視するプログラムは非常にたくさんあります。(ただ、私はすでに4つ持っています。) どういうわけか、この情報を入手しているのですね?
Zy あと、高温になるとカードが誤算を起こし始めるという噂もありましたね。おもちゃの場合、それは致命的なことではなく、どこか好ましくないことなのです。
カードが燃えたのは、GPU上で動作するソフトウェアが温度を制御できなかったからではなく、過負荷保護機構を内蔵するビデオカードのドライバーにエラーが発生したためです。
ドライバエラーと無縁な人はいませんし、GPUでアプリケーションを実行していなくても、ドライバエラーが原因でカードが焼き切れる可能性はあります。
心配しなくても、ハードに最大限の負荷をかければ、頑張っても何も悪いことは起きないのです。最近のハードウェアは、CPUもGPUも過負荷に対する保護システムが搭載されています。CPUからクーラーを取り外せば、文字通り火事になるような時代ではなくなりました。
カードが焼けるのは、過負荷保護機構を内蔵したビデオカードのドライバーにエラーが発生したためで、GPU上で動作するソフトウェアが温度を監視していないためではありません。
ドライバエラーと無縁な人はいませんし、GPU上でアプリケーションが動作していなくても、ドライバエラーが原因でカードが焼き切れる可能性はあります。
心配しなくても、ハードに最大限の負荷をかければ、頑張っても何も悪いことは起きないのです。最近のハードウェアは、CPUもGPUも過負荷に対する保護システムが搭載されています。 CPUからクーラーを取り外すと、文字通り火事になるような時代はもう昔の話です。そうですね、温度制御は低レベルのユーティリティタスク(もしかしたらハードウェアタスクかもしれません)ですね。
高級言語で書かれたソフトウェアから温度をコントロールするのは、自殺行為です。
このGPUのハズレを試した人はいますか?
並列ループで実行し、それぞれが100000000(1億)回反復する。
感想をお聞かせください。
2012.03.21 18:20:36 Tast Mand_ (EURUSD,H1) 5741 msec
2012.03.21 18:15:53 Terminal CPU: GenuineIntel Intel(R) Core(TM) i5-2500 CPU @ 3.30GHz with OpenCL 1.1 (4 units, 3311 MHz, 8174 Mb, version 2.0).
2012.03.21 18:15:53 Terminal GPU: NVIDIA Corporation GeForce GTX 570 with OpenCL 1.1 (15ユニット、1464MHz、1280Mb、バージョン296.10)
ハエの死か何かですか?
ハエが死ぬからとか?
これは、ほとんどの工程が可逆的であるため、あり得ないことです。電子-正孔プラズマの揺らぎ...(oh how!)です。個々のビットが時々クリックする。あなたと私は、道を外れた。:)
私はカードが90℃になると本当に怖くなります。 この場合、一連の実行の間に数千ミリ秒をかけると、少なくとも82℃に保たれます。
入れていますが、必要に応じて柔軟に入れる必要があることと、温度の閾値をプログラムで設定できることが良い点です。
まあ、私はあなたのような強力なハードウェアを持っていないのですが。
これから試してみますが、AMDのドライバを入れ直します。
私はあなたのような強力なハードを持っていないのです。
これから試してみますが、AMDのドライバを入れ直します。