ビルド 3902 からの AVX / AVX2 + FMA3 / AVX512 + FMA3 命令セットによる MQL5 プログラムのコンパイル - ページ 6

 

ターミナル

エディター:


起動時のターミナルログ

2023.09.06 10:53:15.635 Terminal        MetaTrader 5 x64 build 3915 started for MetaQuotes Software Corp.
2023.09.06 10:53:15.635 Terminal        Windows 10 build 19045, 4 x Intel Core i3-7100  @ 3.90 GHz, AVX2, 10 / 15 Gb memory, 205 / 476 Gb disk, UAC, GMT+7


エディターの設定で


そしてコンパイル時にログに:

0 errors, 0 warnings, 14 msec elapsed, cpu='X64 Regular'                1       1

なぜですか?AVX2プロセッサ、コンパイル設定でAVX2+FMA3が選択されていますが、X64 Regularでコンパイルされます。なぜですか?

 
Dmitry Fedoseev #:

複数のコンパイルオプションを優先的に1つのコンパイルファイルにまとめるようにしたらどうだろう......。このようなバリアントには未来があるはずだ。しかし、今はただのおもちゃだ。

これは必要ない。X64は動くし、それでいい。なぜ4つの亜種が動くかどうか全部チェックする必要があるんだ?MQL x32とx64の結果が違っていたときのことを今でも覚えている。

 
Artyom Trishkin #:

そしてコンパイル時のログ:

なぜですか?AVX2プロセッサで、コンパイル設定でAVX2+FMA3が選択されていますが、X64 Regularでコンパイルされます。なぜですか?

おそらく、単一のファイルではなく、プロジェクトをコンパイルしているのでしょう。

プロジェクトには、独自のコンパイルモード設定があります。

 
Renat Fatkhullin #:

最新のプロセッサーに特化したバージョンの端末への明確な移行は、大きく正しい一歩だ。我々はプラットフォーム全体の性能向上に真剣に取り組んでおり、今では松葉杖を作ることなく、新しい最適化手法を直接実装する自由がある。

現在、以前のバージョンの端末をどのように維持するかは明確ではありません。

例えば、AVX2-homeのマシンでは、リリース・ターミナルのb3521に致命的なバグが見つかった。バグが修正されるまでの一時的なロールバックに備えて、ホームマシンには以前のバージョンのバックアップがあった。

そして今、DDS(AVX2はそれをサポートしていない)で戦闘端末が動作しており、リリースb3521がインストールされているので、緊急にロールバックする必要があります。ホームマシンのAVX2-exeファイルは動作しません。ロールバックの方法を教えてください!

 

ツールバーにコンパイルモードの表示と選択を追加:


 
fxsaber #:

どのようにロールバックするのですか?

LiveUpdateの開始時に現在のexeファイルを自動的にバックアップするような仕組みを作ってください。

 
Renat Fatkhullin #:

マーケットを含めてソフトウェアを配布する場合、x64版をビルドしなければならない。

クラウドエージェントの場合は?
 
Renat Fatkhullin #:

ったな。

.プロジェクトには.

.mqhファイル

.mqhファイル内のクラスをコンパイルする場合、X64 Regularが使用されますが、クラスを含むファイルがアタッチされている.mq5をコンパイルする場合は、すべて問題ありません:

0 errors, 0 warnings, 3318 msec elapsed, cpu='AVX2 + FMA3'              1       1
 
fxsaber #:
クラウドエージェントは?

MQL5クラウドネットワークでは、EX5の上限はAVX2になり、タスクは必要なCPUセットを持つエージェントに自動的に分配される。

つまり、数日後にはすべてが透過的に動作するようになります。明日はブローカー向けのオープンベータをリリースし、1週間後にはリリースを予定しています。

 
Renat Fatkhullin #:

.MQL5クラウドネットワークでは.

つまり、数日後にはすべてが透過的に動作するようになる。Tomorrow we are releasing the open beta for brokers, and in a week we will have the release.

AVX2を搭載していないエージェントは、割り当てが少なくなりますか?AVX512でコンパイルした場合、クラウドは使えないのですか?

理由: