Backtest Speed

 

Hi everyone,

another question about backtest speed. But maybe slightly different. (I read https://forum.mql4.com/54831 and other posts...)

As the CPU is only used for a few percent (I7, lot of RAM and so on) I copied the MT4 instance and let two tests run at the same time. The sum of the estimatet durations for both tests is almost equal to letting one test run two times. Why?


Kind regards!


Edit: Just made another try. Now the duration does not double with the second test but beeing increased by maybe factor 1.3. That could be explained with slow HD.

 
Well mt4 has learned to use the advantages of multi-threading :)
 

APeng: As the CPU is only used for a few percent (I7, lot of RAM and so on) I copied the MT4 instance and let two tests run at the same time. The sum of the estimatet durations for both tests is almost equal to letting one test run two times. Why?

Edit: Just made another try. Now the duration does not double with the second test but beeing increased by maybe factor 1.3. That could be explained with slow HD.

  1. Tester only uses one core so if you have 8 cores, then 12.5% is 100% of the only core used.
  2. Running the second instance uses a second core, the slight increase is HD/cache and paging interactions.
  3. Don't do unnecessary tasks per tick that can be done per bar or per trade.
gooly: Well mt4 has learned to use the advantages of multi-threading :)
If it had it would be using 100% of all cores, instead of only a few percent.
Reason: