question

Upvotes
Accepted
87 7 12 26

Excessive memory usage when use rmtestBuffer.apply()

hello:

I found my memory useage increase quickly from 1% to 27% after I decode HKSE brokers use "rmtestBuffer.apply()"。


I develop with EMA C++ sdk 1.3.1;

when I decode HKSE brokers with RIC such as "0874bk.HKd", the num of RIC I requested is 14000+

and use "rmtestBuffer.apply()" to decode the updateMsg refer to "310MarketPriceRmtes";

my memory usage increase quickly.

memory usage do not decode brokers: 1%

memory usage do decode brokers: 27%

the detail info as "https://community.developers.refinitiv.com/questions/47273/ema-c-get-illegible-contents-in-updatemsg-of-broke.html"


elektronrefinitiv-realtimeelektron-sdkema-apirrtelektron-message-api
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

· Write an Answer
Upvotes
Accepted
78.2k 246 52 72

@luxiangyuan

I think it is expected behavior when having a lot of thomsonreuters::ema::access::RmtesBuffer objects used to cache the RMTES strings.

0874bk.HKd is a page record which contains "ROW80_1" to "ROW80_13" fields which require RmtesBuffer to store the RMTES strings.

If you have a lot of page record RICs in 14000+ subscribed RICs, the application will require more memory in order to cache the strings.


page.png (82.7 KiB)
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.