Backtesting/Optimizing on dual CPU platform is slow

Created at 15 Apr 2017, 00:20
How’s your experience with the cTrader Platform?
Your feedback is crucial to cTrader's development. Please take a few seconds to share your opinion and help us improve your trading experience. Thanks!
CT

ctid233172

Joined 15.04.2017

Backtesting/Optimizing on dual CPU platform is slow
15 Apr 2017, 00:20


I am currently backtesting/optimizing on a Intel-Xeon platform with two CPU's and 72 cores. As you can see below, only one CPU is being used and the other is only utilized for 50% (max). What can I do to increase the CPU usage? I tried to change the affinity and priority but that did not make any difference.


@ctid233172
Replies

ctid233172
15 Apr 2017, 00:58 ( Updated at: 21 Dec 2023, 09:20 )

RE:

When I run 6 instances of the optimizer at the same time I have no problem maxing my CPU usage at all (see below). Please let me know if I can fix this and how, or if you can fix this. For me the Ctrader platform is not very productive if I am unable to backtest/optimize at proper speeds.

 


@ctid233172

ctid233172
15 Apr 2017, 11:53 ( Updated at: 21 Dec 2023, 09:20 )

Limitation of Ctrader

It looks like Ctrader does not scale very well with a lot of cores.

Running on 8 cores looks fine:

But as you can see on 16 cores it starts to fall off:

It looks like there is a limitation where only 8 cores can be fully used. More cores will just spread the load but not improve performance.

Is there any chance on an update to improve the handling of more cores and more cpu's?

For reference, below the utilization when running Cinebench R15:


@ctid233172

ctid233172
15 Apr 2017, 12:06

I also tested this on cAlgo 2.0 (Public beta). Same results.


@ctid233172

ctid233172
15 Apr 2017, 13:18 ( Updated at: 21 Dec 2023, 09:20 )

Did some more testing. I turned off hyperthreading in the BIOS. This seems to improve performance but is not optimal:

 

Cinebench results were 15% lower.


@ctid233172