Как это ни парадоксально, но именно при активной алготоровле много времени уходит на вглядывание в монитор. Иногда возникают иллюзии, будто что-то полезное уловил глазом. Так произошло и в этот раз. Давно была гипотеза, что какие-то движения внтури дня имеют связь с движениями после в этом же дне. Например, может показаться, что микрогепы в...
视觉上类似的情况也不容易被发现。
无法解释图片。
无法解释图片。
文章在路上
有趣的是,在一些人的头脑中,周期和目标有时是重合的))。我在博客上发布了一个计算方法,与之完全相似。不幸的是,OpenCL信息的水平,需要比我高得多的能力。
我希望看到一个简单的OpenCL实现的例子(就像在博客中),以及加速的结果。
虽然有要求,但为什么没有链接呢?
没有索赔。我没有提供该博客文章的链接,以免引起对自我推销的指责。
https://www.mql5.com/ru/blogs/post/731774
在过去的10年里,我(和其他人)都没能在Visual Studio中看到这个参数的使用。即使打开了所有的循环扫荡报告标志。
它根本不起作用,甚至在有很多并行化可能性的大型项目中也不起作用。只有直接的OpenMP与手动的循环分区才可以工作。
在MQL5中,这些循环没有被并联。
我同意fxsaber的观点,OpenCL需要很高的入门门槛。
有这个事实是好的,但只有少数人擅长这个。
事实上,mql5中的循环不是平行的,这就是可能实现的建议。
现在的平台是在Clang中,也许那里有很好的并行性,我不知道。
建议的重点是将其拉入mql指令。
我的理解是否正确,如果你把这个任务设置为寻找与优化器类似的运动,那么遗传学就不会工作?
在这种情况下,测试器将不会被启用进行全面的列举,因为有很多通道要进行。
也就是说,解决这个问题的唯一方法是在终端运行脚本。
决定在一个真实的项目上检查一下--也许python一直在使用jit编译器?我有rangerhttps://github.com/ranger/ranger, 项目有122个文件(26368行),为@njit ping了它们。
结果--没有任何发现。我担心积极使用这一功能会把启动变成一个多分钟的探索过程。
恕我直言,你只是不知道如何烹饪它。重做了你的例子。
在Python中。
下面是Python 3.8和MQL5在单线程/OpenCL模式下的比较:时间以秒为单位,越少越好
Python在JIT模式下通过numba,铁定是。
使用OpenCL的例子非常简单,它不需要任何修饰的优化。虽然这个任务对于OpenCL来说并不庞大,而且它在准备过程中引发了开销,但它仍然给出了一个更好的结果。
使用OpenCL可以常规地运行非常大的并行计算。进入门槛并不高,只需要一天时间就能搞清楚如何使用。
附上用于播放的文件。
虽然这个任务对于OpenCL来说并不庞大,而且它在准备过程中引发了开销,但它仍然给出了一个更好的结果。
你是如何对代码的OpenCL部分进行调试的?
使用OpenCL的例子非常简单,没有任何优化的修饰。虽然这个任务对于OpenCL来说并不庞大,而且它在准备过程中触发了开销,但它仍然给出了一个更好的结果。
Renat,你能不能具体说明在哪些情况下OpenCL会有优势,处理大量的数组或者在一个EA中有大量的符号和指标?
我不是一个专业的程序员,在编程层面的简单事情对我来说可能很难