Question on MC using multi cores

Questions about MultiCharts and user contributed studies.
User avatar
Andrew Kirillov
Posts: 1589
Joined: 28 Jul 2005
Has thanked: 2 times
Been thanked: 31 times
Contact:

Postby Andrew Kirillov » 18 May 2009

CUDA will not help MultiCharts, because it uses different approach for computing. CUDA is designed to handle specific tasks. Don't expect to get such incredible performance improvement in MultiCharts with CUDA. Our short review of this technology demonstrates that it works great for massive computation of arrays. It is very powerful for cg and other similar tasks. We make additional research, but we are skeptical so far.

Fabrice Daniel
Posts: 71
Joined: 25 Aug 2007
Been thanked: 2 times

Postby Fabrice Daniel » 26 May 2009

Calculation on TimeSeries is one the best application for Vector Computing - and CUDA use a Vector Computing Model.

Have a look at this experiment by a user on a competitor software:

http://www.purebytes.com/archives/amibr ... 09359.html

Of course such implementation can't be purely generic because of classical parallel computing constraints.

E.g : translating a loop calculation into a Vector Calculation can only be done if no dependencies exist.

It's not an easy task but with some "constraints" or "programming rules" allowing a PL script to be "CUDA Compatible", why not ?

User avatar
Andrew Kirillov
Posts: 1589
Joined: 28 Jul 2005
Has thanked: 2 times
Been thanked: 31 times
Contact:

Postby Andrew Kirillov » 28 May 2009

Farbice,
You are right and we don't see how we can use CUDA, because we process data on bar to bar basis and it is not a array based. So the only way to go is to use our SDK, get quotes and do what you want to do. Of course It works for experienced programmers only.

Fabrice Daniel
Posts: 71
Joined: 25 Aug 2007
Been thanked: 2 times

Postby Fabrice Daniel » 31 May 2009

Hi Andrew,

Ok if you process on a bar to bar basis, it make sense. It will be difficult to use these stream processors.

User avatar
Andrew Kirillov
Posts: 1589
Joined: 28 Jul 2005
Has thanked: 2 times
Been thanked: 31 times
Contact:

Postby Andrew Kirillov » 03 Jun 2009

Anyway we are consulting with NVidia. Maybe they suggest us something we can't imagine ourselves.

User avatar
MAtricks
Posts: 789
Joined: 09 Apr 2012
Has thanked: 286 times
Been thanked: 288 times

Re: Question on MC using multi cores

Postby MAtricks » 03 Dec 2014

Sorry for digging up an old topic, but it is full of relevant knowledge :)

I recently had a chat with Henry about this and I'd like to make it public knowledge with a little more clarification.

I'd like a suggestion for LIVE TRADING with regards to hyper-threading being on or off. I don't care about optimizations or back-tests, just live trading and how hyper-threading affects MC positively or negatively.

Live trading usually consists of many charts with 1 strategy applied to each.

User avatar
TJ
Posts: 7743
Joined: 29 Aug 2006
Location: Global Citizen
Has thanked: 1033 times
Been thanked: 2222 times

Re: Question on MC using multi cores

Postby TJ » 03 Dec 2014


User avatar
MAtricks
Posts: 789
Joined: 09 Apr 2012
Has thanked: 286 times
Been thanked: 288 times

Re: Question on MC using multi cores

Postby MAtricks » 03 Dec 2014

TJ,

I'm sorry if my question wasn't clear, but I already know how to enable/disable Hyper-Threading("HT"). My question is asking the MC developers whether or not having HT on or off for live trading will increase performance, decrease performance, or have no effect on the live trading performance.

Depending on how MC is built, more cores with less power or less cores with more power might help or hinder live performance.

orion
Posts: 250
Joined: 01 Oct 2014
Has thanked: 65 times
Been thanked: 104 times

Re: Question on MC using multi cores

Postby orion » 03 Dec 2014

MAtricks, turning hyperthreading on can help or hurt depending on program characteristics and the best thing is to benchmark using your particular requirements. Having multiple threads running on a core can help since one thread may be able to run when another is sleeping on a disk or network operation. However, one thread can thrash another thread's cache data in which case hyperthreading can hurt rather than help.


Return to “MultiCharts”