使用第 3902 版的 AVX / AVX2 + FMA3 / AVX512 + FMA3 指令集编译 MQL5 程序

 

在下一个测试版中,我们发布了使用 AVX / AVX2 + FMA3 / AVX512 + FMA3 扩展指令集编译 MQL5 程序的功能。

它们允许您生成更高效、更快速的代码。

您既可以为单个程序配置常规设置,也可以为项目 配置个人设置:




请从 MetaQuotes-Demo 服务器下载测试版或通过 "帮助 "菜单部分更新,加入测试。

 

能否请开发人员就 MT5 在 "节能 "内核处理器上的运行情况提供一些解释/意见?

人们通常对测试人员的工作感兴趣,但我更感兴趣的是有大量运行 EA(和 "多 EA"--许多独立的 EA 在一起)的 MT5 工作。

 

关于交易、自动交易系统和测试交易策略的论坛

MT4/MT5 处理器

Stanislav Korotky, 2023.08.26 21:09

所有这些都是对咖啡渣的猜测。MQ 应该提供自己的基准(PCMark、CineBench、Geekbench 等程序)--就像 MetaTraderBench 一样。应用任务中有关 CPU/GPU 性能、图形、光盘处理等方面的问题将不复存在。为 MT 选择电脑配置将更加容易。

遗憾的是,没有 Bench。

 
MetaQuotes:

让您生成更高效、更快速的代码。

在为本地机器和远程机器(Market、代理等)选择最佳设置时,您有什么建议?
 
JRandomTrader #:

能否请开发人员就在具有 "节能 "内核的处理器上运行 MT5 一事做出说明/评论?

人们通常对测试工作感兴趣,但我更感兴趣的是在 MT5 上运行大量 EA(以及 "多 EA"--许多独立的 EA 集于一身)。

我们的测试表明

  1. 从 MSVC 编译器切换到 Clang/LLVM 可带来高达 25% 的整体增长 - 谷歌在 Chrome 浏览器构建方面也有类似的说法:

    这就是 MetaTrader 5 长期以来一直基于 Clang 构建的原因。

  2. 在平台中使用 AVX 会带来巨大的增长,但没有具体说明百分比

    这就是为什么我们有两套客户端终端:针对旧处理器的 MSVC 过时 NoAVX 版本和针对现代处理器的 Clang AVX 版本。

    安装程序会自动决定使用哪个版本。Livapdate 也是如此。

  3. 我们的最新研究表明,AVX2 + FMA3 比 AVX 有所改进

    FMA3 有助于矢量数学,对我们这一类问题应该很有效。

    我们将很快发布使用 AVX2 的第三套程序。下一次更新时,终端本身将自动选择新版本。


使用 P/E 内核完全依赖于 Windows 调度器,即使是英特尔线程管理器(Intel Thread Director,线程管理器扩展)也不能完全有效地按重要性分配任务。在各种边缘情况下,调度程序都是无效或有问题的。

一般情况 下尝试使用亲和掩码只会让事情变得更糟。尤其是当应用程序在虚拟机上运行时。

只有在对特定应用程序进行严格优化的特殊情况下,才能使用亲和掩码。



关于处理器的一般建议很简单:更多内核、更高频率、更多 L1/L2 高速缓存、足够的高速内存和 NVME 磁盘。

现在,消费级处理器已经自信地迈过了 5 千兆赫兹的门槛。例如,售价 600 美元、拥有 32 个线程的 Ryzen 7950X 在满负荷运行时,每个内核的频率都能轻松达到 4.5 - 5.0 千兆赫,并产生令人惊叹的效果。

 

Renat Fatkhullin #:

安装程序会自动检测要安装的版本。Livapdate 也是如此。

我通过复制三个 exe 文件(终端、测试器、编辑器)来更新所有终端。人们会以同样的形式保留以前的版本,也就是这三个文件。

现在有人声称,在同一个版本中,这三个文件可以是不同的。因此,性能也会不同。

 

交易、自动交易系统和交易策略测试论坛

如何开始使用 MT5,摘要!

Fernando Carreiro, 01.09.2023 12:43 pm.

这对未来的 Market 产品有何影响?

我认为验证过程将要求在不使用它的情况下编译产品,以确保最小公分母。

 
fxsaber #:

我通过复制三个 exe 文件(终端、测试器、编辑器)来更新所有终端。人们以同样的形式保留以前的版本--这三个文件。

现在他们声称,在同一个版本中,这三个文件可以是不同的。相应地,性能也会不同。

没错,在启动终端时,可以在计算机描述横幅中看到 AVX 的存在。


我们建议不要阻止更新,因为终端在检测到阻止更新后,很快就会在启动时发出警告。

由于以下原因,各种农场不断被禁用:

  1. 阻止更新并在不断重启过程中输出数百 GB 的更新,加重我们基础设施的负担
  2. 在终端启动时清除所有缓存,给代理服务器造成负担
  3. 在各种 docker/容器/etd、裸环境下重启终端,每天数万次。

与其抱怨,不如开动脑筋,想想那些为他们服务的人。如果 "我有一张 5GB 的光盘,我可以省钱,流量对我来说也是免费的 "这样的抱怨会浪费技术提供商或经纪人的资源,那就没什么意义了。

 
Fernando Carreiro #:

市场只接受以 "x64 常规 "模式编译的程序。

未来我们很可能会扩大市场的可能性。


MT5 计划于下周五发布。因此,我们希望您能更积极地测试新模式。

 
Renat Fatkhullin #:

我们建议不要阻止更新,因为终端在检测到阻止更新后,很快就会在启动时发出警告。

您是在有漏洞的版本上进行交易吗?我认为您离算法交易的实践还很远。
 
fxsaber #:
您是在有漏洞的构建上进行交易吗?我认为你离算法交易的实践还很远。

所以,不要升级到 proda 的 Betas 版本。

版本每 3 个月发布一次。而那些不更新的 "邪恶农场主 "会在过时的版本上坐上一年甚至更长时间--他们根本不在乎交易。他们的做法纯粹是功利性的,"我已经完成了我的任务,其他的我就不管了"。

我专门写了关于邪恶案例的文章,因为它们的所有者肯定会阅读本论坛 - 我的解释是针对他们的。

原因: