- Allocate huge pages at swiftnet_initialize (2048Kb) - Dynamically allocate more huge pages as arena grows (start with 20Mb) - Get hugepage ptr using mmap - Lock the memory using mlock - Replace every single malloc with arena allocation and also make datatype_allocator use the arena - Make swiftnet_create_buffer use the arena