Micro memory resources

2 posts / 0 new
Last post
Last seen: 8 years 9 months ago
Joined: 08/31/2012
Posts: 4
Micro memory resources


What is the minimum amount of memory needed to run Micro ?

What is the minimum size of the library ?



Last seen: 3 years 4 months ago
Joined: 01/17/2013
Posts: 13


A number of factors impact the minimum amount of memory required, such as CPU, OS, number of entities, resource limits and IDL types. Below are numbers generated for 32bit i86 Linux based on the RTI Connext Micro 2.2.3 libraries.

- The shared libraries with dynamic discovery takes about 536 KB of RAM. Note that this is the memory needed to load the libraries into memory, not the filesize.

- Below is memory allocated from the heap for each DDS entity. This does not include memory for data, just for the entity itself. Note that these numbers will likley change between releases.

ParticipantFactory: 2960 (B)
Participant: 77632 (B). This includes the UDP transport and 3 receive buffers (each 8KB)
Type: 275 (B)
Topic: 379 (B)
Publisher: 283 (B)
Subscriber: 315 (B)
Remote Participant: 531 (B)
Remote Publication: 251 (B)
Remote Subscription: 259 (B)
DataReader (in bytes): 4915 + (max_samples * 191) + (max_instances * 212) + (max_remote_writers * 907) + (max_remote_writers_per_instance * 11)
DataWriter (in bytes): 4838 + (max_samples * 640) + (max_instances * 63) + (max_remote_readers * 1147)

- Micro creates 3-4 threads (3 in the UDP transport, 0-1 in the core library depending on the platform.
Micro has been run on ARM development boards with 2-8 MB RAM.