Re: Improvement on memory subsystem

From: yunfeng zhang
Date: Wed Aug 23 2006 - 06:36:40 EST


New design has been appended into my OS, it's mainly focused on how to
allocate swap pages for each PrivateVMA efficiently in swap daemon.

Let's first see the PTE array snapshot of a PrivateVMA,
U-U-P-P-P-S-S
U: UnmappedPTE; P: PTE; S: SwappedPTE.

The snapshot shows that the pages of the PrivateVMA has an
access-affinity. The 3rd, 4th and 5th have been accessed since last
scanning on the PrivateVMA, other PTEs aren't still touched.

A concept is introduced here to describe the accessed PTEs -- series.
So we've got three series (1st and 2nd), (3rd, 4th and 5th) and (6th
and 7th) from the snapshot.

The design is allocating swap pages by series. It should be more
efficient for future page-fault to page-in them.

Further discussion in my new documentation
http://www.cublog.cn/u/21764/upfile/060823181124.zip. In section
"Memory Daemons >> SwapDaemon and PrivateVMA" and "Class Repository >>
SwapDaemon". There's also sample code in Implementation subdirectory
of the archives.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/