EVector: An efficient vector implementation - Using virtual memory for improving memory

  • Authors:
  • Dries Kimpe;Stefan Vandewalle;Stefaan Poedts

  • Affiliations:
  • (Correspd. Celestijnenlaan 200B, 3001 Leuven, Belgium. Tel.: +32 16 327003/ Fax.: +32 16 327998/ E-mail: Dries.Kimpe@cs.kuleuven.be) Ctr. for Plasma Astrophyics, Celestijnenlaan 200B and Sci. Comp ...;Scientific Computing Research Group, Celestijnenlaan 200A, 3001 Leuven, Belgium;Centre for Plasma Astrophyics, Celestijnenlaan 200B, 3001 Leuven, Belgium

  • Venue:
  • Scientific Programming - Parallel/High-Performance Object-Oriented Scientific Computing (POOSC '05), Glasgow, UK, 25 July 2005
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Every modern operating system provides some form of virtual memory to its applications. Usually, a hardware memory management unit (MMU) exists to efficiently support this. Although most operating systems allow user programs to indirectly control the MMU, few programs or programming languages actually make use of this facility. This article explores how the MMU can be used to enhance memory handling for resizable arrays. A reference implementation in C++ demonstrates its usability and superiority compared to the standard C++ vector class, and how to combine the scheme with an object-oriented environment. A number of other improvements, based on newly emerged insights in C++ are also presented.