Patent · US Expired

Thread local cache memory allocator in a multitasking operating system

US6427195B1 · kind B1 · utility

70Cited by
2References
18Claims
0Family size

Assignee

Inventors

Key dates

Filing dateJun 13, 2000
Grant dateJul 30, 2002
Priority date
Expiry dateNov 29, 2020

Classification

  • Technology area (CPC G)Physics
  • CPC primaryG06F12/0842
  • WIPO fieldComputer technology
  • WIPO sectorElectrical engineering

Abstract

A memory allocator provides a cache blocks private to each thread of a multi-threaded application, and thereby minimizes performance losses associated with mutual exclusion (MUTEX) contention, MUTEX locking and/or coalescence operations. The memory allocator maintains thread local cache slots in a linked list of arrays. Upon a memory allocation request from a thread, blocks of the memory, which ordinarily require MUTEX locking, are cached in the local thread cache slot allocated to the requesting thread, and the request is satisfied from the cache slot allocated to the requesting thread. Each cache slot is private to the thread to which it is assigned, and thus does not require MUTEX locking. Further, the cache slots do not require defragmentation thereof, and thus require no coalescence operations. Thus, the performance of the multi-threaded application program is optimized.

Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.