-
Notifications
You must be signed in to change notification settings - Fork 0
byrnedj/libmrc-old
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
libmrc
------
The goal of libmrc is to provide a black box implementation
of miss ratio curve APIs for applications wishing to use
them in memory management.
We use the Average Eviction Time algorithm that measures reuse
time of references. Default sample rate is 1/10,000. Default
interval is 1000 objects.
When the solver is invoked, it will return the application's
miss ratio curve and the estimated working set size (N).
This is best done in an application's background thread in
order to avoid critical path overhead.
------
Example usage:
#include <mrc.h>
mrc_t *app_mrc = init_mrc(sample_rate,mrc_interval);
//on data reference
take_sample(app_mrc,app_reference);
...
//to output MRC
solve_mrc(app_mrc);
for (int i = 0; i < app_mrc->mrc_size; i++)
{
printf("%d,%f\n",i*app_mrc->interval,app_mrc[i]);
}
About
A library containing implementation of AET for fast MRC generation
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published