Skip to content

One of The Fastest Zero Alloc LRU Cache for Golang (Go). Maximizes memory use, no garbage collection issues. Use memory size limit instead of specifying item capacity. Batch eviction feature for faster processing

License

Notifications You must be signed in to change notification settings

cloudxaas/gocache

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Super Fast LRU Cache for Golang

" Let's Accelerate LRU " - Accelru

One of The Fastest Zero Allocation LRU Cache for Golang

(for key, value pairs in []byte)

Accelru (cxlrubytes)

Supposingly having the best cache hit ratio (in zero allocation class) with "optimum" memory usage.

Please contribute to make it better. Feedback / comments / suggestions on improvement appreciated (stars too).

Check lru/bytes for details for key, value in []byte (tested).

Check version X for extreme speed, lower memory footprint at the expense of maybe a bit lower hit ratio (depending on what hash function is used).

lrux/bytes for details for key, value in []byte (tested).

Check lru for Any type details (untested).

Motivation

Most current (year 2024) golang lru implementations are either not as fast as this, or needed capacity count of items as input parameter, this can result in "OOM" or not being able to fully utilize the memory capacity available.

cxlrubytes thus is designed for:

  1. High performance
  2. Zero allocation (so no garbage collection)
  3. Maximizing memory usage (but not being limited by item capacity)

Will do other input parameters in future but currently, converting everything to []byte and using this gives wonderful results.

google-site-verification: google4b244ca4683e045f.html

About

One of The Fastest Zero Alloc LRU Cache for Golang (Go). Maximizes memory use, no garbage collection issues. Use memory size limit instead of specifying item capacity. Batch eviction feature for faster processing

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published