もう一度、マルチスレッドについて - ページ 2

 
Renat:

MetaTrader 5のマルチスレッドとは何ですか?

テストをクリックするだけで、瞬時に5,743のエージェント/CPUが動作し、オプティマイザで381,468のパスを6分間で実行しました。1回のパスの実行時間は1〜2秒。もし、8コアのコンピュータでテストを実行したら、6分ではなく、800~1600分を費やしたでしょう(381468 / 8 = 47683秒 = 794分)。

そして、スタートボタンを押す以外は、何もする必要がなかったのです。どこかのスカイネットが立ち上がり、必要なチャート履歴をすべて自前で同期させ、世界中の何千台ものコンピュータにその作業を分散させ、一斉に作業を行ったのです。

ようこそ現実へ...。

Renatさん、ではなぜマルチスレッドの範囲がテスターに限定されると思うのですか?自動最適化を アルゴリズムに直接実装する権利はユーザーにはないと思いますが、いかがでしょうか?彼はあなたのテスターを動かす必要があるのでしょうか?もし、彼が自分のニューラルネットワークを使ったら?物事を一面的にとらえるのはやめましょう。そして同時に、私が何も理解していないことを非難しています。自分のベル・タワーから状況を見るだけで、あとはどうでもいいということですね、やはり。

 
meat:

ユーザーには、自分のアルゴリズムに直接自動最適化を実装する権利がないとでも?彼はあなたのテスターを動かす必要があるのでしょうか?そこで彼が独自のニューラルネットワークを使ったら?物事を一方的に判断するのはやめましょう。

今やることの何が問題なのか?
 
meat:

Renatさん、ではなぜマルチスレッドの範囲がテスターに限定されるとお考えなのでしょうか?何、あなたの意見では、ユーザーは彼のアルゴリズムで直接自動最適化を実装する権利を持っていないのですか?彼はあなたのテスターを動かす必要があるのでしょうか?もし、彼が自分のニューラルネットワークを使ったら?物事を一面的にとらえるのはやめましょう。そして同時に、私が何も理解していないことを非難しています。自分のベル・タワーから状況を見るだけで、あとはどうでもいいということですね、やはり。

この言葉について、私は11年間、常に考え、働き、責任を負ってきました。

それで、幼稚園に行く。特にMQL5内でマルチスレッドを行いたい場合は、OpenCLかDLLのどちらかを使用した方が良いでしょう。このテーマの精巧さのレベルを理解するために、MetaEditorから直接C++コードをコンパイルすることと、navigatorからMQL5コードにDLLファイルをドラッグ&ドロップすることを見てください。

 

MQL5 - neural network on GPU」が実装されると、このプロジェクトの 価格は高くなります。最初の段階では難しいでしょうし、これは非常に最初の段階なので、将来的に欠点を探すことになります。

さらに言えば、テスターの力を借りれば、どんな複雑な問題でも解決できるようになりました。

 
Renat:

私はこの言語について11年間、絶え間ない反省と仕事と責任感を持ち続けています。

それで、幼稚園に行く。特にMQL5内でマルチスレッドを 行いたい場合は、OpenCLかDLLのどちらかを使用する必要があります。このテーマについても、MetaEditorから直接C++のコードをコンパイルしたり、NavigatorからDLLファイルをMQL5のコードにドラッグ&ドロップしてみると、その精巧さがわかると思います。

キーワードを強調しました。実は、最初からそういうことだったんです。だから、理解もせずに失礼なことを言ったり、個人的なことを言ったりするのではなく、まず私の投稿をよく読むべきだったかもしれませんね。会社の顔を代表する人が、こんな失礼なことをするのはおかしいと思うのですが...。

 
TheXpert:
今やって何が問題なんだ?
マルチスレッドでの計算の話です。
 
meat:

キーワードを強調しました。実は、それこそが、私が最初から言っていたことなんです。だから、失礼や人格否定ではなく、まず私の書き込みをよく読むべきだったのでは?会社の顔を代表する人が、こんな失礼なことをするのはおかしいと思うのですが...。

一番最初のコメントでOpenCLやDLLの話をされたのに、自分はよく知っている、開発者は凡人だからあれもできない、これもできない、不要なものを追加したなどと言い続けましたね。

 
meat:

ユーザーには、自分のアルゴリズムに直接自動最適化を実装する権利がないとでも?彼はあなたのテスターを動かす必要があるのでしょうか?そこで彼が独自のニューラルネットワークを使ったら?物事を一面的にとらえるのはやめましょう。そして同時に、私が何も理解していないことを非難しています。自分のベル・タワーから状況を見るだけで、あとはどうでもいいということですね、やはり。

自己最適化は、名前付きチャンネルで 結合された別々のスクリプトの形でアレンジすることも可能です。しかし、内部のテスターを使い、OnTester()で独自のフィットネス関数を書く方がずっと簡単です。
Реализация взаимодействия между клиентскими терминалами MetaTrader 5 при помощи именованных каналов (Named Pipes)
Реализация взаимодействия между клиентскими терминалами MetaTrader 5 при помощи именованных каналов (Named Pipes)
  • 2010.07.01
  • investeo
  • www.mql5.com
Данная статья знакомит с реализацией межпроцессного взаимодействия между терминалами MetaTrader 5 посредством именованных каналов (named pipes). Предложен класс CNamedPipes, реализующий возможность использования именованных каналов. Рассмотрен тиковый индикатор для тестирования связи между двумя клиентскими терминалами MetaTrader 5 и измерения общей пропускной способности системы. Представленный метод взаимодействия оказался пригодным для отправки котировок в реальном времени.
 
Renat:

即答されましたが、その後も「自分はよく知っている」「開発者は凡人だからあれもこれもできない」「不必要な追加要素」などと主張されましたね。


そして、その答えは?マルチストリームで活躍する端末やテスターの素晴らしさを伝えるようになったんですね。そして、あなたの端末のことは一言も言っていない。もうひとつ、MQLのコードにおけるマルチスレッド化についてです。アルゴリズムがいくつかのパートに分割でき、それぞれのパートが並列に実行される場合。そして、そのポイントさえも理解していないあなたは、失礼なことを言い始めるのです。なるほど、このやり方では建設的な議論をしても意味がないので、議論を続ける意味がないのですね。

 
meat:

そして、その答えは?マルチストリームで活躍する端末やテスターの素晴らしさを伝えるようになったんですね。そして、あなたの端末のことは一言も言っていない。もうひとつ、MQLのコードにおけるマルチスレッド化についてです。アルゴリズムがいくつかのパートに分割でき、それぞれのパートが並列に実行される場合。そして、そのポイントさえも理解していないあなたは、失礼なことを言い始めるのです。なるほど、そのような考え方では、建設的な考えを話しても意味がありませんから、議論を続ける意味がありませんね。

あなたの元の投稿を再読し、あなたの罵詈雑言に注意を払い、それから下のレスに行くことをお勧めします。

何事も計算を並列化するためには、まず実現しなければならない」という柔らかい問いかけに、冷静に答えが聞こえ、「本当に並列化すべきものは何か」という現状を説明されました。

しかし、あなたはすぐに学ぶどころか、さらにくだらないことを吹き込み、私たちに犬をかぶせたのです。その結果、厳しい反応が返ってきた。