A comparison of memory allocators for real-time applications

  • Authors:
  • Miguel Masmano;Ismael Ripoll;Alfons Crespo

  • Affiliations:
  • Universidad Politecnica de Valencia, Valencia, Spain;Universidad Politecnica de Valencia, Valencia, Spain;Universidad Politecnica de Valencia, Valencia, Spain

  • Venue:
  • JTRES '06 Proceedings of the 4th international workshop on Java technologies for real-time and embedded systems
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Real-Time applications can require dynamic storage management. However this feature has been sistematically avoided due to the general belief about the poor performance of allocation and deallocation operations in time and space. Actually, the use of Java technologies in real-time require to analyse in detail the performance of this feature due to its intensive use. In a previous paper, the authors proposed a new dynamic storage allocator that perform malloc and free operations in constant time (O(1)) with a very high efficiency. In this paper, we compare the behaviour of several allocators under "real-time" loads measuring the temporal cost and the fragmentation incurred by each allocator. In order to compare the temporal cost of the allocators, two parameters have been considered: number of instructions and processor cycles. To measure the fragmentation, we have calculated the relation between the maximum memory used by the each allocator relative to the point of the maximum amount of memory used by the load. Additionally, we have measured the impact of delayed deallocation in a similar way a periodic garbage collector server will do. The results of this paper show that TLSF allocator obtains the best resuts when both aspects, temporal and spatial are considered.