在48线程的电脑上运行EA回测优化,总是碰到死机问题。

 

我的电脑是E5平台的,12核两个,一共是48线程。原来是I5的4核心4线程的,我嫌跑优化慢,才换到E5上的。

现在碰到的问题是跑回测优化,代理那一个栏,启动线程,不管是按顺序启动6个,还是随机选择启动6个,就像图片里那样,都没有问题。但是只要多开,就算只多开1个,回测优化就卡住了,然后电脑死机。

这是什么原因呢?是E5平台不能匹配MT5吗?因为我看别人i7跑回测优化,也不只是6个核心跑的啊。

附加的文件:
 
shrjie:

我的电脑是E5平台的,12核两个,一共是48线程。原来是I5的4核心4线程的,我嫌跑优化慢,才换到E5上的。

现在碰到的问题是跑回测优化,代理那一个栏,启动线程,不管是按顺序启动6个,还是随机选择启动6个,就像图片里那样,都没有问题。但是只要多开,就算只多开1个,回测优化就卡住了,然后电脑死机。

这是什么原因呢?是E5平台不能匹配MT5吗?因为我看别人i7跑回测优化,也不只是6个核心跑的啊。

也许是别的有性能瓶颈,比如硬盘。

 
Xiaoyu Huang #:

也许是别的有性能瓶颈,比如硬盘。

硬盘是固态的,内存有32G。
 
shrjie #:
硬盘是固态的,内存有32G。

应该是CPU的问题。

Intel 13,14普遍存在不稳定性问题。

 
shrjie #:
硬盘是固态的,内存有32G。

双路CPU问题比较多,去掉一路试试。

 
我也出现同样情况,我已经试尽各种办法,无论是系统或硬件还是驱动,两台电脑都出现同样问题,在9.9号之前还一切正常,我有点怀疑是软件问题,单一参数单线程没有问题,只有在多线程优化时才会黑屏,看看过段时间会不会有改变!
 
aspirine45 #:
我也出现同样情况,我已经试尽各种办法,无论是系统或硬件还是驱动,两台电脑都出现同样问题,在9.9号之前还一切正常,我有点怀疑是软件问题,单一参数单线程没有问题,只有在多线程优化时才会黑屏,看看过段时间会不会有改变!

我已经解决了!
48线程同时开回测优化,需要占用内存30G左右,我主板上有一条32G内存,而这个物理内存其实是运行内存,在实际测试中只用到三分之一。
最关键点是,MT5中回调优化一开,windows系统自动在硬盘的C盘中划出一定的区域作为虚拟内存供MT5使用(这也是一般windows系统自身的设定),我之前卡死就是因为我的C盘的余量不足,不足以支撑多线程回调优化,所以MT5直接卡死,连带着电脑也死机了。
后来我重装了windows7系统,测试MT5的多线程回调优化时才发现了这个问题,之后我直接手动把系统的虚拟内存设置到其他盘符,设置为32G,就没有故障了。
同样,在windows10里也是这样设置的,一样有效。
可以得出这样一个结论,48线程需要设定30G虚拟内存,线程越多需要的虚拟内存也越多,对硬盘(固态)的容量要求也更高。

 
shrjie #:

我已经解决了!
48线程同时开回测优化,需要占用内存30G左右,我主板上有一条32G内存,而这个物理内存其实是运行内存,在实际测试中只用到三分之一。
最关键点是,MT5中回调优化一开,windows系统自动在硬盘的C盘中划出一定的区域作为虚拟内存供MT5使用(这也是一般windows系统自身的设定),我之前卡死就是因为我的C盘的余量不足,不足以支撑多线程回调优化,所以MT5直接卡死,连带着电脑也死机了。
后来我重装了windows7系统,测试MT5的多线程回调优化时才发现了这个问题,之后我直接手动把系统的虚拟内存设置到其他盘符,设置为32G,就没有故障了。
同样,在windows10里也是这样设置的,一样有效。
可以得出这样一个结论,48线程需要设定30G虚拟内存,线程越多需要的虚拟内存也越多,对硬盘(固态)的容量要求也更高。

感谢你的提醒,确实是虚拟内存问题,因该是系统更新原因,把我原来分配的150G虚拟内存修改成自动的5G,导致内存不足一直黑屏,在多年前就意识到要分配更多虚拟内存,没想到最熟悉的问题却最容易被忽略。

MT5软件更看重CPU和内存性能,以后再出现问题可以着重排查

 
shrjie #:

我已经解决了!
48线程同时开回测优化,需要占用内存30G左右,我主板上有一条32G内存,而这个物理内存其实是运行内存,在实际测试中只用到三分之一。
最关键点是,MT5中回调优化一开,windows系统自动在硬盘的C盘中划出一定的区域作为虚拟内存供MT5使用(这也是一般windows系统自身的设定),我之前卡死就是因为我的C盘的余量不足,不足以支撑多线程回调优化,所以MT5直接卡死,连带着电脑也死机了。
后来我重装了windows7系统,测试MT5的多线程回调优化时才发现了这个问题,之后我直接手动把系统的虚拟内存设置到其他盘符,设置为32G,就没有故障了。
同样,在windows10里也是这样设置的,一样有效。
可以得出这样一个结论,48线程需要设定30G虚拟内存,线程越多需要的虚拟内存也越多,对硬盘(固态)的容量要求也更高。

感谢