DR containers memory limitation

28 views
Skip to first unread message

Reza Ghanbari

unread,
Apr 30, 2025, 3:45:10 PMApr 30
to DynamoRIO Users
Hello,
I was wondering if there is a way to use drvector_t and hashtable_t in such a way that they could acquire larger memory chunks than 2GB? or is there any equivalent container that could be used for that purpose?
They both use dr_global_alloc which allocates from reachable memory, limiting the size to 2GB.

Enrico Deiana

unread,
May 1, 2025, 1:06:28 PMMay 1
to DynamoRIO Users
As you noted, drcontainers are implemented using dr_global_alloc() to simplify reachability in a 64-bit address space.
Depending on your needs (e.g., will this heap memory NOT be referenced in the code cache?), you can implement your own containers using dr_custom_alloc() (see: https://dynamorio.org/dr__tools_8h.html#a527e0746207909580b705f1743537921) without the DR_ALLOC_CACHE_REACHABLE flag.
If you need reachability of this memory from the code cache, see: https://dynamorio.org/page_deploy.html#op_reachable_heap and the discussion at https://dynamorio.org/using.html#sec_64bit_reach.

- Enrico

Derek Bruening

unread,
May 2, 2025, 1:51:11 PMMay 2
to Reza Ghanbari, DynamoRIO Users
If you would like to extend the provided containers to optionally support using non-reachable heap we would be happy to look at an interface proposal and pull request(s).

--
You received this message because you are subscribed to the Google Groups "DynamoRIO Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dynamorio-use...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/dynamorio-users/6dcb9480-91be-4068-888f-0645a53e2954n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages