OpenCL:MQL5での内部実装テスト - ページ 60 1...535455565758596061626364656667...70 新しいコメント Vladimir Gomonov 2012.04.22 22:18 #591 Mathemat:ああ、MD、素のCPUでそんなに頑張ってないのか。インテルが全盛だけどね...。おいおい、せっかくいいグラフィックカード持ってるのに。 一度アンインストールして真っ暗闇の中でWindowsが不適切なドライバでひっかけてしまい、視界1%の状況でAMD APP SDKを入れ直したことがあります。 楽しかったなあ...。:)) 百回目のボタンを全て押す.........................。 Sceptic Philozoff 2012.04.22 22:21 #592 MetaDriver: ああ、でもドライバーが曲がっているかもしれないから、触るのは怖いな。 面白いことに、ネイティブドライバでさえも曲がっているんですよ。Intel用もAMD用も。ただの成長不良であることを祈ろう。 hrenfx 2012.04.22 22:37 #593 このピュアCPUでのOpenCLは、MQL5だけなのか、それとも他の言語でも加速されるのか、教えてください。MQL5 + OpenCL VSC++ + フルコンパイラ最適化 の比較はされましたか?かっこいいのはOpenCLではなく、MQL5自体に最適化が施されていないことなのではと思います。追伸:i7 2700Kを持っているので、きれいなCPUでテストしてみます(いつになるやら)。 Vladimir Gomonov 2012.04.22 22:37 #594 Mathemat: 面白いことに、IntelとAMDの両方で、ネイティブドライバさえも曲がっているのです。ただの成長不良であることを祈ろう。 ええ、まあ、2、3年後にはこんなことにならないように、すべてがうまくいくようにと願っています。当面は、このようなものをきちんとプログラミングできるようになることが先決ですが......。:) Vladimir Gomonov 2012.04.22 22:42 #595 hrenfx:このピュアCPUでのOpenCLは、MQL5だけなのか、それとも他の言語でも加速されるのか、教えてください。 MQL5 + OpenCL VSC++ + フルコンパイラ最適化 の比較はされましたか?かっこいいのはOpenCLではなく、MQL5自体に最適化が施されていないことなのではと思います。追伸:i7 2700Kを持っているので、(現地に行ったら)きれいなCPUでテストしてみようと思っています。いや、してない。がんばれーいいものですね。基本的には、せいぜい10分程度でC++にコードが移植されます(素のCPUでカウント)。 C++でOpenCLを使う方法 私は入門書で見ただけで、試したことがありません。 実は、試してみたかったのです。 Sceptic Philozoff 2012.04.22 22:46 #596 hrenfx: クールなのはOpenCLではなく、MQL5自体の最適化不足ではないかとの疑念があります。そう、論理的なのです。先日、ixbtのフォーラムで、同じ意見のCPUアナリストとディスカッションをしたんです。ここで 議論が始まりました(ニックネームはtamehtaM です)。私の無能さを蹴らないでください。しかし、フェリドは 、IGPが存在しないか、あるいは弱すぎるのに、IGPについて語ることが多すぎるという印象もあります。 このスレッドの最初の投稿は、Intel OpenCL ランタイムを正しくインストールする方法をまだ知らないときに書いたものです。実際、正しく設定できたかどうか、まだ自信がありません。しかし、AMD APP SDKに比べれば、すでに3倍くらいは良くなっています。加速度の数値が痛いほど大きいのは確かです。そして、最適化が現れると、明らかに低くなるはずです。興味深いことに、これらの最適化を行っていない場合でも、5番目の方が4番目よりも高速です。 また、加速度そのものはメインではありません。メインはランタイムの絶対値です。絶対に悪くならない。正確には、これ以上悪くならないようにすることです。 Sergey 2012.04.23 16:44 #597 Mathemat:これは明らかにCPUではなくディスクリートカードです。このようなスピードアップは、エミュレーションではほとんど達成できません。しかも、端末の数がすでに5台というのは、本当に不気味です。もしよろしければ、少し修正したコードを実行していただき、その結果をここに投稿してください。コード上では、OpenCLの各デバイスの計算はループに入れられ(高速になるはず)、一番長いx86の計算は一度だけ実行されます。長くなりますが、スクリプト自体は一度だけ実行されます。 私は、すでにあなたを退屈させていることに気づいています。しかし、いずれにせよ、サポートチームにとっては良い情報でしょう。 その結果がこちらです。 2012.04.23 21:42:58 ParallelTester_00-01x_cycle (EURUSD,H1) CpuTime/GpuTime = 439.07278020378462012.04.23 21:42:58 ParallelTester_00-01x_cycle (EURUSD,H1) Cpuでの結果 MachResult==1.41575 at 7544 pass2012.04.23 21:42:58 ParallelTester_00-01x_cycle (EURUSD,H1) Social indicators = 16; Count history bars = 144000; Count pass = 128002012.04.23 21:42:58 ParallelTester_00-01x_cycle (EURUSD,H1) CPU time = 301643 ms2012.04.23 21:37:56 ParallelTester_00-01x_cycle (EURUSD,H1) Gpuでの結果 MachResult==1.41575 at 7544 pass2012.04.23 21:37:56 ParallelTester_00-01x_cycle (EURUSD,H1) Social indicators = 16; Count history bars = 144000; Count pass = 128002012.04.23 21:37:56 ParallelTester_00-01x_cycle (EURUSD,H1) GPU時間=687ms2012.04.23 21:37:55 ParallelTester_00-01x_cycle (EURUSD,H1) OpenCL init OK!デバイス番号=42012.04.23 21:37:55 ParallelTester_00-01x_cycle (EURUSD,H1) Gpuでの結果 MachResult==1.41575 at 7544 pass2012.04.23 21:37:55 ParallelTester_00-01x_cycle (EURUSD,H1) Count indicators = 16; Count history bars = 144000; Count pass = 128002012.04.23 21:37:55 ParallelTester_00-01x_cycle (EURUSD,H1) GPU時間=234ms2012.04.23 21:37:55 ParallelTester_00-01x_cycle (EURUSD,H1) OpenCL init OK!デバイス番号=32012.04.23 21:37:55 ParallelTester_00-01x_cycle (EURUSD,H1) Gpuでの結果 MachResult==1.41575 at 7544 pass2012.04.23 21:37:55 ParallelTester_00-01x_cycle (EURUSD,H1) Count indicators = 16; Count history bars = 144000; Count pass = 128002012.04.23 21:37:55 ParallelTester_00-01x_cycle (EURUSD,H1) GPU時間=234ms2012.04.23 21:37:54 ParallelTester_00-01x_cycle (EURUSD,H1) OpenCL init OK!デバイス番号=22012.04.23 21:37:54 ParallelTester_00-01x_cycle (EURUSD,H1) Gpuでの結果 MachResult==1.41575 at 7544 pass2012.04.23 21:37:54 ParallelTester_00-01x_cycle (EURUSD,H1) Count indicators = 16; Count history bars = 144000; Count pass = 128002012.04.23 21:37:54 ParallelTester_00-01x_cycle (EURUSD,H1) GPU時間=234ms2012.04.23 21:37:54 ParallelTester_00-01x_cycle (EURUSD,H1) OpenCL init OK!デバイス番号=12012.04.23 21:37:54 ParallelTester_00-01x_cycle (EURUSD,H1) Gpuでの結果 MachResult==1.41575 at 7544 pass2012.04.23 21:37:54 ParallelTester_00-01x_cycle (EURUSD,H1) Count indicators = 16; Count history bars = 144000; Count pass = 128002012.04.23 21:37:54 ParallelTester_00-01x_cycle (EURUSD,H1) GPU時間=234ms2012.04.23 21:37:54 ParallelTester_00-01x_cycle (EURUSD,H1) OpenCL init OK!デバイス番号 = 0 OpenCL: internal implementation tests New MetaTrader 4 Client PREDICT time period Sceptic Philozoff 2012.04.23 17:01 #598 casinonsk:その結果がこちらです。 2012.04.23 21:42:58 ParallelTester_00-01x_cycle (EURUSD,H1) CpuTime/GpuTime = 439.07278020378462012.04.23 21:42:58 ParallelTester_00-01x_cycle (EURUSD,H1) Cpuでの結果 MachResult==1.41575 at 7544 pass2012.04.23 21:42:58 ParallelTester_00-01x_cycle (EURUSD,H1) Social indicators = 16; Count history bars = 144000; Count pass = 128002012.04.23 21:42:58 ParallelTester_00-01x_cycle (EURUSD,H1) CPU time = 301643 ms2012.04.23 21:37:56 ParallelTester_00-01x_cycle (EURUSD,H1) Gpuでの結果 MachResult==1.41575 at 7544 pass2012.04.23 21:37:56 ParallelTester_00-01x_cycle (EURUSD,H1) Social indicators = 16; Count history bars = 144000; Count pass = 128002012.04.23 21:37:56 ParallelTester_00-01x_cycle (EURUSD,H1) GPU時間=687ms2012.04.23 21:37:55 ParallelTester_00-01x_cycle (EURUSD,H1) OpenCL init OK!デバイス番号=4これで、デバイス=4が裸のCPUであることが明らかになったわけです。そして、 GPU時間=687msと、かなり安定しています。うまくいきましたね。 CPU時間の実行時間が長いのが理解できない。コア周波数がかなり低い(2.8GHz)状態で235000ms程度です。メモリが少ないか、非常に遅いか、CPUが何かひどくリソースを消費するタスクによって恒常的に過負荷になっているかのいずれかである。はっきりしないんです。時間比率の数値が不自然に高い。 Sergey 2012.04.23 17:18 #599 Mathemat:これではっきりしたわけですが、デバイス=4は素のCPUです。そして、 GPU時間=687msと、かなり安定しています。うまくいきましたね。わからないのは、実行時間CPU 時間が長い理由です。コア周波数がかなり低い(2.8GHz)場合、約235000msになります。メモリが少ないか、非常に遅いか、CPUが何かひどくリソースを消費するタスクによって恒常的に過負荷になっているかのいずれかである。はっきりしないんです。時間比率の数値が不自然に高い。Expert Advisorは最適化中で、コアに少し負荷がかかっています。16Gbメモリ Sceptic Philozoff 2012.04.23 17:20 #600 casinonsk: Expert Advisorは最適化中で、コアは少し負荷がかかっています。 そうすれば、すべてがクリアになります。最適化が終了したら、同じスクリプトを実行してみてください。おそらく全コアに負荷がかかっているのでしょう。何もないときに、むき出しの最上位CPUを見るのは非常に面白い。 1...535455565758596061626364656667...70 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
ああ、MD、素のCPUでそんなに頑張ってないのか。インテルが全盛だけどね...。
おいおい、せっかくいいグラフィックカード持ってるのに。
このピュアCPUでのOpenCLは、MQL5だけなのか、それとも他の言語でも加速されるのか、教えてください。
MQL5 + OpenCL VSC++ + フルコンパイラ最適化 の比較はされましたか?
かっこいいのはOpenCLではなく、MQL5自体に最適化が施されていないことなのではと思います。
追伸:i7 2700Kを持っているので、きれいなCPUでテストしてみます(いつになるやら)。
面白いことに、IntelとAMDの両方で、ネイティブドライバさえも曲がっているのです。ただの成長不良であることを祈ろう。
このピュアCPUでのOpenCLは、MQL5だけなのか、それとも他の言語でも加速されるのか、教えてください。
MQL5 + OpenCL VSC++ + フルコンパイラ最適化 の比較はされましたか?
かっこいいのはOpenCLではなく、MQL5自体に最適化が施されていないことなのではと思います。
追伸:i7 2700Kを持っているので、(現地に行ったら)きれいなCPUでテストしてみようと思っています。
いや、してない。
がんばれーいいものですね。
基本的には、せいぜい10分程度でC++にコードが移植されます(素のCPUでカウント)。 C++でOpenCLを使う方法 私は入門書で見ただけで、試したことがありません。 実は、試してみたかったのです。
そう、論理的なのです。先日、ixbtのフォーラムで、同じ意見のCPUアナリストとディスカッションをしたんです。ここで 議論が始まりました(ニックネームはtamehtaM です)。私の無能さを蹴らないでください。しかし、フェリドは 、IGPが存在しないか、あるいは弱すぎるのに、IGPについて語ることが多すぎるという印象もあります。
このスレッドの最初の投稿は、Intel OpenCL ランタイムを正しくインストールする方法をまだ知らないときに書いたものです。実際、正しく設定できたかどうか、まだ自信がありません。しかし、AMD APP SDKに比べれば、すでに3倍くらいは良くなっています。
加速度の数値が痛いほど大きいのは確かです。そして、最適化が現れると、明らかに低くなるはずです。
興味深いことに、これらの最適化を行っていない場合でも、5番目の方が4番目よりも高速です。
また、加速度そのものはメインではありません。メインはランタイムの絶対値です。絶対に悪くならない。正確には、これ以上悪くならないようにすることです。
これは明らかにCPUではなくディスクリートカードです。このようなスピードアップは、エミュレーションではほとんど達成できません。しかも、端末の数がすでに5台というのは、本当に不気味です。
もしよろしければ、少し修正したコードを実行していただき、その結果をここに投稿してください。コード上では、OpenCLの各デバイスの計算はループに入れられ(高速になるはず)、一番長いx86の計算は一度だけ実行されます。長くなりますが、スクリプト自体は一度だけ実行されます。
私は、すでにあなたを退屈させていることに気づいています。しかし、いずれにせよ、サポートチームにとっては良い情報でしょう。その結果がこちらです。
2012.04.23 21:42:58 ParallelTester_00-01x_cycle (EURUSD,H1) CpuTime/GpuTime = 439.0727802037846その結果がこちらです。
2012.04.23 21:42:58 ParallelTester_00-01x_cycle (EURUSD,H1) CpuTime/GpuTime = 439.0727802037846これで、デバイス=4が裸のCPUであることが明らかになったわけです。そして、 GPU時間=687msと、かなり安定しています。うまくいきましたね。
CPU時間の実行時間が長いのが理解できない。コア周波数がかなり低い(2.8GHz)状態で235000ms程度です。
メモリが少ないか、非常に遅いか、CPUが何かひどくリソースを消費するタスクによって恒常的に過負荷になっているかのいずれかである。はっきりしないんです。時間比率の数値が不自然に高い。
これではっきりしたわけですが、デバイス=4は素のCPUです。そして、 GPU時間=687msと、かなり安定しています。うまくいきましたね。
わからないのは、実行時間CPU 時間が長い理由です。コア周波数がかなり低い(2.8GHz)場合、約235000msになります。
メモリが少ないか、非常に遅いか、CPUが何かひどくリソースを消費するタスクによって恒常的に過負荷になっているかのいずれかである。はっきりしないんです。時間比率の数値が不自然に高い。
Expert Advisorは最適化中で、コアに少し負荷がかかっています。
16Gbメモリ
そうすれば、すべてがクリアになります。最適化が終了したら、同じスクリプトを実行してみてください。おそらく全コアに負荷がかかっているのでしょう。
何もないときに、むき出しの最上位CPUを見るのは非常に面白い。