[Question] How to understand Clock-Pro algorithm?

liyu
2005-09-20T03:11:33Z

Hi, every in LKML/linux-mm:

I have been read CLOCK-Pro paper since last week, and am going to
write one python demo.

After just read , I think I can understand it, however once I begin
implement it, I
found there are many point that not clear.

First, two important parameters Mc, Mh,

In that paper, it assume total memory size is M. (in number of page)

There is a formula:

M = Mc+Mh.

Mc, number of cold pages in memory,
Mh, number of hot pages in memory.

So, in clock list, we can keep track 2M page metadatas at most, we
may include M
non-resident pages.

In '4.3 operationes on searching vicim pages' , the authors said

"we keep track of the number of non-resident cold pages, Once the number
exceeds m the memory size in number of pages. we terminted the test
period of
the cold page pointed to by HAND-test."

My question is out:As this paper words, the number of cold page is
total of resident cold pages
and non-resident pages. It's the seem number of non-resident cold pages
can not beyond M at all!

I also have more questions on CLOCK-Pro. but this question is most
doublt for me.

Any clear word is welcome. thank in advanced.

I suppose experience is more important than theory in
page-replacement field, is it right?

liyu