Optimal Machine for MW Optimization and Backtesting?

toppdealer

New member
Joined
Oct 20, 2020
Posts
3
Likes
1
All-

I recently upgraded my iMac, and was surprised at the results. I am looking for the optimal machine for running Backtesting/Optimizations.

Old iMac (Late 2014) specs:
iMac 15,1
3.5ghz Intel Core i5
Number of Procs: 1
Total Number of Cores: 4
L2 Cache (per core): 256kb
L3 Cache: 6MB
32gb 1600Mhz DDR3
AMD Radeon R9 M290X 2048 MB

New iMac (Mid 2020) specs:
iMac 20,1
3.1ghz 6-Core Intel Core i5
Number of Procs: 1
Total Number of Cores: 6
L2 Cache (per core): 256kb
L3 Cache: 12MB
64gb 266Mhz DDR4
AMD Radeon Pro 5300 4GB

Double the memory, 2 Additional Cores, Much newer processors, better GPU, etc...The results were interesting

Both machines were loaded with the same MW version, same historical data set, etc.

Old iMac has performed faster across the board. My most recent test took 27m for each permutation on the Old iMac, and took 51m on the New iMac!

My question is this...
What would the optimal machine look like for MW, OSX (also open to Windows), in terms of Optimizer and Backtester? As of now, I plan to return the new iMac, but I feel like there must be a reason why it is not running as fast, and even faster than the Old. Does MW have the capability to leverage ALL cores (or is clockspeed the only relevant item for the CPU). As long as the machine has enough memory to handle importing all the historical data, required for the desired permutation, into memory, is that sufficient, or does it benefit to memory above and beyond what is required to be pulled in? Does the GPU matter for Optimizer?

Thanks!
Ryan
 
This is a good question. I have never timed backtesting, but I have noticed that occasionally a strategy will produce slightly different results on different computers. I have seen the backtester report more trades on one computer than another, even though the settings are the same, and the MW Version is the same. It was a different computer, and the computer used Windows Server vs Windows 10 Pro. Are your machines giving you different results, or the same and it just takes longer?
 
This is a good question. I have never timed backtesting, but I have noticed that occasionally a strategy will produce slightly different results on different computers. I have seen the backtester report more trades on one computer than another, even though the settings are the same, and the MW Version is the same. It was a different computer, and the computer used Windows Server vs Windows 10 Pro. Are your machines giving you different results, or the same and it just takes longer?
The same results, except the machine with exponentially faster CPU/Memory/GPU is taking nearly 2x longer to complete the task. It has far exceeded the Old iMac in terms of all benchmark testing I have done, so I know it is performing correctly. Just interested why MW doesn't recognize it as such.
 
The same results, except the machine with exponentially faster CPU/Memory/GPU is taking nearly 2x longer to complete the task. It has far exceeded the Old iMac in terms of all benchmark testing I have done, so I know it is performing correctly. Just interested why MW doesn't recognize it as such.
The only thing I can think of is that the MW system by default maxes out at 4GB RAM. That could be acting as a bottleneck. I just tried changing the heap size on my machine, and it gives warnings about being careful of course. But I doubled it to 8 GB and it still maxes out at 4GB (you can check by hovering your mouse over the memory bar in the lower right corner.)

455

Maybe it needs some configuration to use the 64-bit Java VM to use more than 4GB. Maybe someone from MW can chime in here and tell us how to increase max memory.
 
Thx for the reply. Yes. I have the Heap set to 28GB on the machine w/32GB and 54GB on the machine w/64GB. It seems to utilize about 23GB on both, when running my specific permutation on the optimizer. But still, the newer/faster machine is much slower, which does not make any sense.
 
I haven't run a Backtest or Optimizer since my purchase, but I went through a similar Mac upgrade at the beginning of 2019. Went from mid-2011 iMac to iMac Pro, and wow! It's one beast of a machine:

3.2 GHz 8-Core Xeon W
32 GB 2666 MHz DDR4
Radeon Pro Vega 56 8 GB

One of the most obvious issues I ran into was a slow Internet speed, especially when the family was streaming Disney+. I thought 50/50 was decent enough for the amount of data I was pulling, but low and behold, it wasn't and made my machine appear like it was slow. Since my upgrade to 500/500 fiber? #flawless

Sounds crazy, but check your Internet speed and to see if there might be a bottleneck (others streaming data) at the time you're running your test.

Last thought... are you running the exact same test? Because that's really the truest test, apples to apples.
 
I think maybe you should contact MW support directly about this; something is definitely off.

I'm thinking of getting the new Intel 27" iMac myself and hate to think it would make NO difference in MW performance. :eek:
 
Good initial question & interesting thread :)

I too have been fiddling with the size of the java related memory -Xms, -Xmx parameters. (small hint in case you went too far: https://support.motivewave.com/forum/index.php?threads/mw-linux-version.237/post-1669)

My issue was not with backtesting / optimizing though. I was trying to figure out why MW becomes 'laggy' when I add a few (processor-heavy) Studies to my charts. I always thoroughly test my code before shipping it off to clients, and I noticed performance issues.
I have not been able to establish why exactly MW becomes laggy with certain Studies and never at all with other Studies, even though they pretty much use the same libraries / perform the same calculations.

So, I too am very interested in a 'look under the hood': it would be nice to know how MW uses one or more cores, how it handles the onboard memory and if it uses the GPU for calculations at all.

This would allow us to tweak its settings to leverage the maximum out of our respective machines :cool:

Perhaps one of the developers can do a webinar on this ? ?
 
you can upgrade cpu, but motive wave is a single core program, meaning if your single core performance is lower one a higher core count cpu, motive wave will be slower.
 
Top