TCもまた関数であり、その結果はあるカスタム・インジケータである。つまり、オプティマイザーは、与えられた引用のように、ある集合上の関数値の計算です。
それでは、標準的なOpenCLオプティマイザーの利便性について話すことができるでしょうか?それとも、このような大幅な(2倍以上の)スピードアップを実現できない落とし穴があるのでしょうか?
私は、matモードでのオプティマイザの動作にさらに興味があります。
OpenCLをサポートして いるデバイスが見つかったときのログのデコードについて説明してください 。
最初にデバイス番号(あなたの場合はdevice#0)が来て、次にデバイス名nvidia GTX 580 、デバイスのOpenCL バージョン 、しかし括弧の中に書かれていることはよくわかりません。ALU(nvidia CODAコアの 場合)の数を示すべきではないのでしょうか?それから、不可解な周波数があり、何を指しているのか不明です。通常、ビデオコアの周波数は1000MHz以上ではありません。解読をお願いします。
- 2012.05.16
- Sceptic Philozoff
- www.mql5.com
皆さんこんにちは。
このとても興味深いトピックについてアドバイスをお願いします:
1.1.OpenCLを使って計算するトレーディング用のExpert Advisorはすでにありますか?
2.2.システムに複数のビデオカードがインストールされている場合、すべてのビデオカードが計算に使用されるのでしょうか、それとも1つだけが使用されるのでしょうか?
2.各エキスパートは1枚のカードしか使用できない。
複数のエキスパートが同時に複数のOpenCLデバイスを使用できる。
OpenCLの計算にコンプ上の複数のデバイスを使用できる場合、すべてのデバイスが使用されるのでしょうか、それとも1つだけが使用されるのでしょうか?
上にすでに答えがあります
2.各Expert Advisorは1枚のカードしか使用できません。
OpenCLをサポートして いるデバイスが見つかったときのログのデコードについて説明してください 。
最初にデバイス番号(あなたの場合はdevice#0)が来て、次にデバイス名nvidia GTX 580 、デバイスのOpenCL バージョン 、しかし括弧の中に書かれていることはよくわかりません。ALU(nvidia CODAコアの 場合)の数を示すべきではないのでしょうか?それから、不可解な周波数があり、何を指しているのか不明です。通常、ビデオコアの周波数は1000MHz以上ではありません。解読してください。
質問の仕方が間違っていました......申し訳ありません。
質問は記事の写真に基づいています:
1. 「16ユニット」とはどういう意味ですか?また、ビデオカードのコア数が明記されていないのはなぜですか?
2.1630MHzとはどういう意味ですか? ビデオカードの全周波数ですか?

まず、OpenCLはハードワイヤード実装とは独立した独自の並列化手法の仕様である。そのため、GPUの仕様と完全な一致を求めることはできない。
ユニットは独立したコアではなく、コアのグループです。アーキテクチャによって、複数のコアをユニットにグループ化する方法は異なります。例えば、NVIDIAは8、32、48コア(またはそれ以上)を1ユニットとしています。CPUモードでは、ユニットは論理CPUコアとしてカウントされます。
周波数はデバイス(例えばビデオカード)によって示される。
ポイントは、CLExecute関数の呼び出しは、OpenCLドライバに対する実行開始のコマンドに過ぎないということです。
OpenCLタスクの完了を待つのは、OpenCL実行キューにアクセスするとき、例えばこの例で起こるように、CLBufferRead 関数を呼び出すときに起こります。
CLExecute とCLBufferRead 呼び出しの間に、OpenCL キューにアクセスしない MQL5 計算を実行できます。
- 2012.05.16
- Sceptic Philozoff
- www.mql5.com
- 無料取引アプリ
- 8千を超えるシグナルをコピー
- 金融ニュースで金融マーケットを探索
新しい記事 計算用OpenCL のインストール方法と使用法 はパブリッシュされました:
MQL5 が OpenCLに対するネイティブサポートを開始して1年以上経過しました。とはいうものの、Expert Advisors、インディケータ、スクリプトで並列計算を行うことの真の価値を解っているユーザーは多くありません。本稿はみなさんが MetaTrader 5 トレーディングターミナルでこの技術を使ってみることができるようにお手持ちのコンピュータに OpenCL をインストールしセットアップするお手伝いをいたします。
OpenCLとは?
OpenCL とは2008年に クロノスグループコンソーシアムによって開発された並列プログラム用オープンスタンダードです。この基準により異機種混在システムにて異なるアーキテクチャを持つ GPUs または CPUs で並列的に実行できるアプリケーションを開発することができます。
すなわち、タスクを計算する際 OpenCL によりあらゆる CPU コアまたは GPUの莫大な計算能力を使用することが可能となり、それによってプログラム実行時間が削減されるのです。労力がかかりとリソース消費する計算に関するタ スクを処理する場合、OpenCL を使用することはひじょうにメリットがあります。
たとえば MQL5に関して言えば、複数シンボルやタイムフレームによる履歴データの複雑で長い分析を行う特定のスクリプト(イディケータまたは Expert Advisor)を処理する際ひじょうに性能向上に貢献します(ここで、並列実行を行う MQL5 プログラムはOpenCL APIを用いて特殊な方法で書く必要があることに注意します)。
作者: MetaQuotes Software Corp.