diff options
author | Joshua Baehring <98630690+JoshuaMBa@users.noreply.github.com> | 2024-07-23 11:33:12 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-07-23 11:33:12 -0700 |
commit | 95ea37cd63f42ca0c0fa71621e75527e88c8b64d (patch) | |
tree | 9d30b205f60102389b34386cd42e9c25bf66aaa1 /.gitattributes | |
parent | 34e67ffe1947b399f57002f8cf60340a391ce8c0 (diff) | |
download | llvm-main.zip llvm-main.tar.gz llvm-main.tar.bz2 |
The logic for emptying the cache now follows an LRU eviction policy.
When the cache is full on any given free operation, the oldest entry in
the cache is evicted, and the memory associated with that cache entry is
unmapped.
Finding empty cache entries is now a constant operation with the use of
a stack of available cache entries.
Through the LRU structure, the cache retrieval algorithm now only
iterates through valid entries of the cache. Furthermore, the retrieval
algorithm will first search cache entries that have not been decommitted
(i.e. madvise() has not been called on their corresponding memory
chunks) to reduce the likelihood of returning a memory chunk to the user
that would induce a page fault.
Diffstat (limited to '.gitattributes')
0 files changed, 0 insertions, 0 deletions