  Common implementations of core memory allocation components, like the Linux
buddy system, handle concurrent allocation/release requests by synchronizing
threads via spin-locks. This approach is clearly not prone to scale with large
thread counts, a problem that has been addressed in the literature by
introducing layered allocation services or replicating the core allocators-the
bottom most ones within the layered architecture. Both these solutions tend to
reduce the pressure of actual concurrent accesses to each individual core
allocator. In this article we explore an alternative approach to scalability of
memory allocation/release, which can be still combined with those literature
proposals. Conflict detection relies on conventional atomic machine
instructions in the Read-Modify-Write (RMW) class. Furthermore, beyond
improving scalability and performance, it can also avoid wasting clock cycles
for spin-lock operations by threads that could in principle carry out their
memory allocation/release in full concurrency. Thus, it is resilient to
performance degradation---in face of concurrent accesses---independently of the
current level of fragmentation of the handled memory blocks.
