Greetings all,

I was thinking the other day that it would be very nice to have a way to
warm up caches before an ROI starts. I just wanted any input about how hard
it would be to implement. I think maybe it wouldn't be that hard:

- First, add a ptlcall to trigger a warmup operation -- this would probably
be done at the shell via a small script like 'start_sim' before an ROI
workload is launched
- Then, instrument the qemu load/store functions to run a simple cache
model -- we probably don't have to do full coherence and all that -- just
sort of fill in tags as requests are made. This wouldn't be *that*
accurate, but at least it would approximate what the caches might have in
them so that there aren't tons of false compulsory misses at the beginning
of an ROI.
- Finally, when a ptlcall_switch_to_sim is issued -- copy the tags from the
simple cache model state into the full simulation cache model and begin
simulating as usual. The real trick here would be if the simple cache model
doesn't do coherence, to figure out what the states of the cache lines
should be (exclusive, shared, owned?).

Is this a silly idea? Is it worth it to try to implement or will it just be
a waste of time since the beginning behavior will be transient and won't
last very long?

-Paul
_______________________________________________
http://www.marss86.org
Marss86-Devel mailing list
[email protected]
https://www.cs.binghamton.edu/mailman/listinfo/marss86-devel

Reply via email to