OpenCL:MQL5での内部実装テスト - ページ 57

 
私のケースでわかったように、削除する必要は全くありません。レジストリにある不要なものを無効化すればよいのです。
 
joo: 私のケースが示すように、アンインストールする必要はないのです。レジストリにある不要なものを無効化する程度で十分です。

実を言うと、そうなんです。

アンドレイ、せめてあなたのi5で、つまりクリーンなCPUで結果を出してください。ってなる。

ファイル:
 
2012.04.21 21:22:59     ParallelTester_00-02-416 x7x3j (GBPUSD,H4)       CpuTime/GpuTime = 32.46979038224414
2012.04.21 21:22:59     ParallelTester_00-02-416 x7x3j (GBPUSD,H4)       Result on Cpu МахResult==4.17098 at 469 pass
2012.04.21 21:22:59     ParallelTester_00-02-416 x7x3j (GBPUSD,H4)       Соunt inticators = 16; Count history bars = 50000; Count pass = 512
2012.04.21 21:22:59     ParallelTester_00-02-416 x7x3j (GBPUSD,H4)       CPU time = 26333 ms
2012.04.21 21:22:33     ParallelTester_00-02-416 x7x3j (GBPUSD,H4)       Result on Gpu МахResult==4.17098 at 469 pass
2012.04.21 21:22:33     ParallelTester_00-02-416 x7x3j (GBPUSD,H4)       Соunt inticators = 16; Count history bars = 50000; Count pass = 512
2012.04.21 21:22:33     ParallelTester_00-02-416 x7x3j (GBPUSD,H4)       GPU time = 811 ms
2012.04.21 21:22:32     ParallelTester_00-02-416 x7x3j (GBPUSD,H4)       OpenCL init OK!


2012.04.21 21:24:18     ParallelTester_00-02-416 x7x3j (GBPUSD,H4)       CpuTime/GpuTime = 3.06352340030194
2012.04.21 21:24:18     ParallelTester_00-02-416 x7x3j (GBPUSD,H4)       Result on Cpu МахResult==3.85664 at 271 pass
2012.04.21 21:24:18     ParallelTester_00-02-416 x7x3j (GBPUSD,H4)       Соunt inticators = 16; Count history bars = 50000; Count pass = 512
2012.04.21 21:24:18     ParallelTester_00-02-416 x7x3j (GBPUSD,H4)       CPU time = 26380 ms
2012.04.21 21:23:52     ParallelTester_00-02-416 x7x3j (GBPUSD,H4)       Result on Gpu МахResult==3.85664 at 271 pass
2012.04.21 21:23:52     ParallelTester_00-02-416 x7x3j (GBPUSD,H4)       Соunt inticators = 16; Count history bars = 50000; Count pass = 512
2012.04.21 21:23:52     ParallelTester_00-02-416 x7x3j (GBPUSD,H4)       GPU time = 8611 ms
2012.04.21 21:23:43     ParallelTester_00-02-416 x7x3j (GBPUSD,H4)       OpenCL init OK!
 

いや、これじゃなくて、前回の記事で添付したやつにね。まさにその通りです。このスクリプトの結果を掲載します。

2012.04.21 19:32:43    ParallelTester_00-01x (EURUSD,H1)    CpuTime/GpuTime = 83.99644128113879
2012.04.21 19:32:43    ParallelTester_00-01x (EURUSD,H1)    Result on Cpu МахResult==1.26619 at 856 pass
2012.04.21 19:32:43    ParallelTester_00-01x (EURUSD,H1)    Соunt indicators = 16; Count history bars = 144000; Count pass = 1280
2012.04.21 19:32:43    ParallelTester_00-01x (EURUSD,H1)    CPU time = 23603 ms
2012.04.21 19:32:20    ParallelTester_00-01x (EURUSD,H1)    Result on Gpu МахResult==1.26619 at 856 pass
2012.04.21 19:32:20    ParallelTester_00-01x (EURUSD,H1)    Соunt indicators = 16; Count history bars = 144000; Count pass = 1280
2012.04.21 19:32:20    ParallelTester_00-01x (EURUSD,H1)    GPU time = 281 ms
2012.04.21 19:32:19    ParallelTester_00-01x (EURUSD,H1)    OpenCL init OK!
2012.04.21 19:32:19    ParallelTester_00-01x (EURUSD,H1)    CLGetInfoInteger() returned 1

プロセッサーです。

2012.04.21 17:51:14    OpenCL    CPU: Intel(R) Corporation  Intel(R) Pentium(R) CPU G840 @ 2.80GHz with OpenCL 1.1 (2 units, 2800 MHz, 8040 Mb, version 1.1)

ファイル:
 
 2012.04.21 21:38:41	ParallelTester_00-01x__1 (GBPUSD,H4)	CpuTime/GpuTime = 118.7051282051282
2012.04.21 21:38:41	ParallelTester_00-01x__1 (GBPUSD,H4)	Result on Cpu МахResult==1.06083 at 993 pass
2012.04.21 21:38:41	ParallelTester_00-01x__1 (GBPUSD,H4)	Соunt indicators = 16; Count history bars = 144000; Count pass = 1280
2012.04.21 21:38:41	ParallelTester_00-01x__1 (GBPUSD,H4)	CPU time = 18518 ms
2012.04.21 21:38:23	ParallelTester_00-01x__1 (GBPUSD,H4)	Result on Gpu МахResult==1.06083 at 993 pass
2012.04.21 21:38:23	ParallelTester_00-01x__1 (GBPUSD,H4)	Соunt indicators = 16; Count history bars = 144000; Count pass = 1280
2012.04.21 21:38:23	ParallelTester_00-01x__1 (GBPUSD,H4)	GPU time = 156 ms
2012.04.21 21:38:23	ParallelTester_00-01x__1 (GBPUSD,H4)	OpenCL init OK!
2012.04.21 21:38:22	ParallelTester_00-01x__1 (GBPUSD,H4)	CLGetInfoInteger() returned 2

不思議なことに、ファイル名が

paralleltester_00-01x.mq5, しかし ParallelTester_00-01x__1.mq5 として保存されます。


2012.04.21 08:31:11     OpenCL  CPU: GenuineIntel  Intel(R) Core(TM) i5-2500 CPU @ 3.30 GHz with OpenCL 1.2 (4 units, 3399 MHz, 8174 Mb, version 2.0 (sse2,avx))
 
joo:

不思議なことに、あなたのファイル名はこうなっているようです。

paralleltester_00-01x.mq5 ただし ParalleTester_00-01x__1.mq5 として保存されます。

何も不思議なことではありません。ただ、そのような名前のファイルがすでに存在するため、__1が追加されるのです。ParallelTester_00-01x__1.mq5のテストはどこにあるのですか、アンドリュー

なるほど、とても良いですね。思ったより少し悪かったが(140~150を希望していた)、それでも非常に良い。この比率は原則的に20~30%以内の変動が正常である(特にGPU時間が短い場合)。ところで、もしあなたが、例えば、次のようなことをしたら。

#define CountPass  1280 * 10

の場合、CpuTime/GpuTimeの比率は、別のレコードに期待できます。理論的な限界」は170〜180といったところでしょうか。少なくとも私の場合は90近くありましたが、あなたのはその倍はあるはずです。

 

Mathemat:

#define CountPass 1280 * 10

の場合、CpuTime/GpuTimeの比率は、別のレコードに期待できます。理論的な限界」は170〜180といったところでしょうか。少なくとも私にとっては90近くあり、あなたにとってはその倍はあるはずです。


これは1280*10での話です。

2012.04.21 23:31:24     ParallelTester_00-01 x__1 (EURUSD,M5)    GPU time = 344 ms
2012.04.21 23:31:24     ParallelTester_00-01 x__1 (EURUSD,M5)    Соunt indicators = 16; Count history bars = 144000; Count pass = 12800
2012.04.21 23:31:24     ParallelTester_00-01 x__1 (EURUSD,M5)    Result on Gpu МахResult==1.12991 at 9491 pass
2012.04.21 23:34:30     ParallelTester_00-01 x__1 (EURUSD,M5)    CPU time = 185875 ms
2012.04.21 23:34:30     ParallelTester_00-01 x__1 (EURUSD,M5)    Соunt indicators = 16; Count history bars = 144000; Count pass = 12800
2012.04.21 23:34:30     ParallelTester_00-01 x__1 (EURUSD,M5)    Result on Cpu МахResult==1.12991 at 9491 pass
2012.04.21 23:34:30     ParallelTester_00-01 x__1 (EURUSD,M5)    CpuTime/GpuTime = 540.3343023255814

そして、1280*128の時点で待ちくたびれ、スクリプトを強制終了してしまったのです。

2012.04.21 23:40:22     ParallelTester_00-01 x__1 (EURUSD,M5)    GPU time = 2013 ms
2012.04.21 23:40:22     ParallelTester_00-01 x__1 (EURUSD,M5)    Соunt indicators = 16; Count history bars = 144000; Count pass = 131072
2012.04.21 23:40:22     ParallelTester_00-01 x__1 (EURUSD,M5)    Result on Gpu МахResult==1.70906 at 99682 pass
2012.04.21 23:48:48     ParallelTester_00-01 x__1 (EURUSD,M5)    Abnormal termination
 
素のCPUでの計算を指していたのです。もちろん、ディスクリートカードの方が数値は高くなります。
 
OpenCLを使った 計算の実行について、何か情報はありますか?
 
casinonsk: OpenCL計算の開始について、何か情報はありますか?

さて、いよいよお待たせしました。実験の準備ができたら、Intel OpenCL Runtime をインストールします( 手順はリンクを参照)。

スクリプトを何も変更せずに実行し、前の同僚と同じように「Experts」タブからログを投稿してください。スクリプトはあなたのgemで実行するのに3分ほどかかりますが、我慢してください。同時に、最もクールなベアボーンSandy Bridgeの石でOpenCLがどのように動作するのかも見ていきます。

根気がない人、自分の能力を超えていると思う人も、悪気はないんです。

追伸:このスクリプトの目的は、ディスクリートビデオドラゴンなしで、素のCPUがどんなことができるかを見ることです。Intel Runtimeを適切に挿入することで、このスクリプトは200前後、あるいはそれよりもわずかに高い加速度を持つようになるのではないでしょうか。

ファイル: