SimEng icon indicating copy to clipboard operation
SimEng copied to clipboard

Use a pool allocator for AArch64 Instruction instances

Open hal-jones opened this issue 6 years ago • 0 comments

aarch64::Instruction instances are currently generated using std::make_shared, which allocates heap space for the relevant instruction. This incurs a memory management overhead, both at construction and at destruction when the resources are freed (when the last shared pointer is deleted).

Replacing this with a pool allocator would reduce the overhead significantly and result in an estimated performance increase of 10-20%.

hal-jones avatar Jul 12 '19 17:07 hal-jones