Computer Configuration for Trading

Market data, Trading, Technical support, Features requests, etc
Svyatoslav
Site Admin
Posts: 107
Joined: Mon Jun 11, 2018 11:44 am
Has thanked: 2 times
Been thanked: 9 times

Re: Computer Configuration for Trading

Post by Svyatoslav » Tue Sep 01, 2020 9:15 am

>If I unload just about everything except Heatmap and Vol Dots my CPU is at 15%. BM is 4-6%
Now, that's interesting. So do I get you right that we went from 20-50% to 4-6% in the same use case? Could you please try locate which component is responsible for the difference by turning those on/off? I'd start with external addons, if you have any - i.e. enable everything inside bookmap, but no external addons. If usage remains low - start turning external ones on. If it does go back to 20-50% - try to locate what takes CPU inside bookmap. My first guesses would be Absorption Indicator, if you have it (it's not production ready, but we enabled it for those who asked; known to be slow) and correlation tracker (production ready, but slow in current implementation).

>In addition my Memory usage is gradually climbing. It is currently at 36% after 4.5 hours market time. it was around 24-25% this morning
Are you watching Bookmap memory usage or Memory in Performance tab? The second one includes memory mapped files that bookmap uses, which will be pushed to disk by OS if memory gets low.

TomB
Posts: 47
Joined: Fri Dec 14, 2018 1:34 pm
Has thanked: 4 times
Been thanked: 9 times

Re: Computer Configuration for Trading

Post by TomB » Tue Sep 01, 2020 2:25 pm

Update 9/1/20

Had intermittent latency - 1.4 sec several times.. with jerky graphics 9:01 cst - ES/NQ/ MES (Those are what I am subscribed to)
Market was making new highs but not a fast market.

CPU - 40-55%
CPU BM 38%  (Seems to be averaging abt 25-35% - SPikes 40% drops to 10%)
Memory 26%
CPU Temperature 54 Deg C.
GPU Temperature 61 Deg C.

BM 7.1.0 build 50
Running SI 3.0
LT 3.0
Correlation Tracker - NQ over ES

Rithmic API avg 2% - 5% CPU

Investor R/T 8-10% CPU Thru API 

Is there any suggestion you might have? Any idea where the issue might be and if this is a CPU or GPU issue?

Thanks for your assistance.

Tom B.

 

Svyatoslav
Site Admin
Posts: 107
Joined: Mon Jun 11, 2018 11:44 am
Has thanked: 2 times
Been thanked: 9 times

Re: Computer Configuration for Trading

Post by Svyatoslav » Tue Sep 01, 2020 2:31 pm

Hi, About that being CPU or GPU issue - it's nearly definitely CPU. Bookmap does not require that powerful GPU, as long as drivers are not glitchy - most GPU's will do just fine. So I'd focus on trying to understand what exactly makes it use CPU.
Now, spikes are fine if it is associated with recentering (when bookmap automatically adjusts the heatmap range). Jerkiness could also occur during recentering as it essentially pauses event processing while preparing data. But if it's not during recentering - that's really weird and suggests that either you run some heavy addon or something else isn't right...

I just had a thought - any chance you are using "reset" functionality on the columns and it's configured to reset every few seconds? Just a guess, but if that's the case - it triggers recentering on every reset.

TomB
Posts: 47
Joined: Fri Dec 14, 2018 1:34 pm
Has thanked: 4 times
Been thanked: 9 times

Re: Computer Configuration for Trading

Post by TomB » Tue Sep 01, 2020 6:07 pm

Svyatoslav: I only do reset on market open. The jerkiness is also happening during regular market when it is active - but not fast.

I am watching the memory usage in performance tab but I also see the memory usage in BM and it climbs steadily throughout the session.

I am still getting graphics errors where a part of the bottom of a window will be across the top. Ex. The circles for LT, SVD, etc will appear where the position, avg price are on top. If I click the trade control panel button it will straighten it out.

I will try unloading the add-ons. DO you also want me to unload CVD, Large trade tracker, vwap, synthetic iceberg, etc?

Tx for all your time on this.

Tom B.

Svyatoslav
Site Admin
Posts: 107
Joined: Mon Jun 11, 2018 11:44 am
Has thanked: 2 times
Been thanked: 9 times

Re: Computer Configuration for Trading

Post by Svyatoslav » Tue Sep 01, 2020 6:25 pm

Hm... Could you try describing "jerkiness"? How often, for how long? Does it happen in "none" mode when not interacting with bookmap? (I think you said it does, but to confirm) I mean, I've seen a case where it was jumping every few seconds (like if 2 frames were swapped, which is probably what happened there) after certain windows update (in that case turning off buffering solved it). If you can explain how it looks (or, better, capture a video) - I can try guessing what it might be.
Also, if you could try both 7.0 and 7.1 and tell me if you see the difference - would be great. 7.0 enables double buffering for the window, while 7.1 does not (due to the issue with swapped frames). Maybe one of those will produce different effect on your PC and give us a clue.
You can get 7.0 at https://bookmap.com/current/7.0

The fact parts of the window are in wrong places isn't great... Would blame video driver first... Just to confirm - let's turn off GPU acceleration and restart bookmap - do window parts keep appearing in wrong places? I don't expect it to help and it most likely will increase CPU usage by a lot (so you will probably want to turn it back on after the experiment).
Also, which GPU is handling the monitors? Intel or AMD? If you don't have many monitors - it's generally a good idea to make sure you have integrated (intel) GPU turned off (usually in BIOS) and plug those into discrete (AMD) directly.
UPD: re-read your initial message, I see that you have one monitor plugged into integrated video. Would it be a big deal to temporarily turn it off and run only discrete for a bit? If that helps - would confirm it's a video driver. Also, if you have a configuration which GPU to use somewhere (like it is done with NVidia, in the control panel - don't know how it's done for AMD GPU's) - try setting different one for Bookmap.

About which addons to turn off - basically try to locate which ones to blame, if any. I'd start with disabling everything I can, seeing if it helps and if it does - gradually re-enabling and watching when problem reappears.

UPD2: I remembered another old issue, actually seen it on 2nd gen core I7 + AMD graphics, where rendering performance was just horrible. It was resolved by turning off GPU acceleration. So try doing that - maybe it will actually help in your case.
 

TomB
Posts: 47
Joined: Fri Dec 14, 2018 1:34 pm
Has thanked: 4 times
Been thanked: 9 times

Re: Computer Configuration for Trading

Post by TomB » Tue Sep 01, 2020 6:55 pm

Ok..now will SI 3.0 work with 7.0?

I will swap them out for tomorrow.

The jerkiness happens with auto recenter or none. I am not interacting with it. It is not constant.

I did try turning GPU acceleration off and it was more jerky and the CPU usage went up so I turned it back on.

If I get the graphics distorted again I will try acceleration again.

I am using an AMD card with 4 monitors. The Intel integrated GPU is disabled in device mgr.

Tx Tom



 

Svyatoslav
Site Admin
Posts: 107
Joined: Mon Jun 11, 2018 11:44 am
Has thanked: 2 times
Been thanked: 9 times

Re: Computer Configuration for Trading

Post by Svyatoslav » Wed Sep 02, 2020 8:18 am

Unfortunately 7.0 will not work with SI 3.0, but I'm not suggesting that you move to it permanently - just try it an let me know if that helps. If it does - we'll consider making buffering switchable in 7.1 so you'll be able to just toggle a menu checkbox to make it "work like 7.0" in that regard.

If you can describe jerkiness in details - would be great. E.g. "it is smooth for 0.5s, then it freezes for 1s, then cycle repeats". This will give me some information to think about - different issues will produce different patterns, in some cases.

TomB
Posts: 47
Joined: Fri Dec 14, 2018 1:34 pm
Has thanked: 4 times
Been thanked: 9 times

Re: Computer Configuration for Trading

Post by TomB » Wed Sep 02, 2020 1:48 pm

I got this error this morning but I was switching things on/off to try to see if anything stood out.

Code: Select all

java.lang.NullPointerException
    at com.bookmap.api.lt.c.d.a(SourceFile:53)
    at com.bookmap.api.lt.a.a(SourceFile:162)
    at com.bookmap.api.lt.b.f.a(SourceFile:130)
    at com.bookmap.api.lt.LTPro.cancel(SourceFile:18)
    at velox.api.layer1.simplified.InstanceWrapper.cancel(InstanceWrapper.java:390)
    at velox.api.layer1.simplified.SimplifiedL1ApiLoader.onMboCancel(SimplifiedL1ApiLoader.java:635)
    at velox.bookmap.eA.onMboCancel(SourceFile:252)
    at velox.bookmap.fT.a(SourceFile:175)
    at velox.bookmap.dC.a(SourceFile:61)
    at velox.bookmap.fT.onMboCancel(SourceFile:175)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiInjectorRelay.onMboCancel(SourceFile:135)
    at velox.bookmap.eK.onMboCancel(SourceFile:185)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiInjectorRelay.onMboCancel(SourceFile:135)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.bookmap.bK.onMboCancel(SourceFile:166)
    at velox.bookmap.dP.onMboCancel(SourceFile:169)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiInjectorRelay.onMboCancel(SourceFile:135)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiInjectorRelay.onMboCancel(SourceFile:135)
    at velox.bookmap.gZ.onMboCancel(SourceFile:471)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiInjectorRelay.onMboCancel(SourceFile:135)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.bookmap.eA.onMboCancel(SourceFile:252)
    at velox.bookmap.eA.onMboCancel(SourceFile:252)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiInjectorRelay.onMboCancel(SourceFile:135)
    at velox.bookmap.eK.onMboCancel(SourceFile:185)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiInjectorRelay.onMboCancel(SourceFile:135)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.bookmap.eb.a(SourceFile:64)
    at velox.bookmap.dO.a(SourceFile:36)
    at velox.bookmap.eb.onMboCancel(SourceFile:64)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiInjectorRelay.onMboCancel(SourceFile:135)
    at velox.bookmap.jy.onMboCancel(SourceFile:841)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.api.layer1.layers.Layer1ApiUpstreamRelay.onMboCancel(SourceFile:111)
    at velox.bookmap.eb.a(SourceFile:64)
    at velox.bookmap.fm.c(SourceFile:98)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)


I switched to 7.1 Build 50... I will switch back to 7.0. I had a lot of latency this morning on ES/NQ open. It seems SI and Correlation tracker hit it the most. But I have to say it is really a cumulative thing. 

Do you have a email where I can send you files, video etc? Tx Tom

TomB
Posts: 47
Joined: Fri Dec 14, 2018 1:34 pm
Has thanked: 4 times
Been thanked: 9 times

Re: Computer Configuration for Trading

Post by TomB » Wed Sep 02, 2020 2:07 pm

I have been switching different components on/off. The correlation tracker seems to double the CPU usage from about 18% to 36-40% and contributes to the jerky graphics more than anything else. Tom

Svyatoslav
Site Admin
Posts: 107
Joined: Mon Jun 11, 2018 11:44 am
Has thanked: 2 times
Been thanked: 9 times

Re: Computer Configuration for Trading

Post by Svyatoslav » Wed Sep 02, 2020 2:22 pm

The issue with LTPro (which is what you sent) belongs to different thread, please create one if needed. I'll also check what it is internally.

About the videos - send those to support@bookmap.com, please, and ask to forward to Svyatoslav.

Post Reply