DOCGroup / ACE_TAO

ACE and TAO
https://www.dre.vanderbilt.edu/~schmidt/TAO.html
701 stars 381 forks source link

Cascaded Multi Size Based Allocators Achiving the 'infinite' space ability as ACE_Malloc #2135

Open smithAchang opened 1 year ago

smithAchang commented 1 year ago

ACE_Malloc memory pool has only one linked list,

so when it has a very long list and has various, random chunk size distribution, the cost of its memory management is great.

In our case, the free API of ACE_Malloc has consumed much CPU time.

So I use the ACE_Cascaded_Dynamic_Cached_Allocator class provided in my previous PR to form a allocator hierarchy with various fixed-size achieving the 'infinite' space ability as ACE_Malloc by a cost of O(1).


Main Design

jwillemsen commented 1 year ago

Converted to draft as this looks to be in development

smithAchang commented 1 year ago

For some security reason, the codes has some misspell.

The test case is enriched becuase the bug produced by misspell , Including Cascaded Allocator PR.

The work has completed after yesterday, it can be considered to merge into main repo :)

jwillemsen commented 1 year ago

Please remove the MPC submodule

smithAchang commented 1 year ago

Please remove the MPC submodule

ok , it's my misoperation

:)

mitza-oci commented 1 year ago

So I use the ACE_Cascaded_Dynamic_Cached_Allocator class provided in my previous PR to form a allocator hierarchy with various fixed-size achiving the 'infinite' space ability as ACE_Malloc by a cost of O(1).

Which PR is that? Please add a link.

mitza-oci commented 1 year ago

[...] with various fixed-size achieving the 'infinite' space ability as ACE_Malloc by a cost of O(1).

Please explain what the phrase "'infinite' space ability" means.

smithAchang commented 1 year ago

So I use the ACE_Cascaded_Dynamic_Cached_Allocator class provided in my previous PR to form a allocator hierarchy with various fixed-size achiving the 'infinite' space ability as ACE_Malloc by a cost of O(1).

Which PR is that? Please add a link.

Cascaded allocator

smithAchang commented 1 year ago

[...] with various fixed-size achieving the 'infinite' space ability as ACE_Malloc by a cost of O(1).

Please explain what the phrase "'infinite' space ability" means.

This allocator can assign memory as ACE_Malloc , can assign various size chunks and assign as many bytes as the OS can permit