[PATCH] [RFC]Super Page for Alpha,Sparc64,i386

From: Naohiko Shimizu (pshimizu@fa2.so-net.ne.jp)
Date: Mon Aug 12 2002 - 03:45:22 EST


This mail was bounced, and I resent it from my home.
The original mail attached both 2.4.18 and 2.4.19 patch but
it was too long for the list, and I deleted 2.4.18 patch.
------------------------------------------------------------------
Before shutting down my server, I decide to post the patch itself
to this list.
Our university will stop the electoricity, and my server will get back
in 8/14.

The url of the original patch is:
http://shimizu-lab.dt.u-tokai.ac.jp/lsp.html

Any comment will be welcome, but I cannot answer before 8/14.

I attached 2.4.19 version.
For i386, we sould turn on vm_align feature to boost the performance:
 sysctl -w super_page.vm_align=1
This feature makes the anonymous mmap requests align to the
super page boundary if the requested length is larger than a
super page size.

The i386 port is efficient only with the pentium4 class machine with
a program which uses a lot of memory(such as 64MB or more).
The Alpha and Sparc64 port is efficient with much smaller size of the
programs. Because they support not only 4MB but also 64KB and 512KB.

The attached benchmark program (transm.c) will test the memory throughput
performance with large strides with matrices transpose. It outputs
the dimension, store stride performance (MB/S), load stride performance(MB/S)
respectively.

The Linux Super Page does not have any special system calls.
It automatically turns on the super page feature with little excessive
working set. The feature is controlable through sysctl.
You can turn off it with sysctl -w super_page.nr=1, and turn on again
with sysctl -w super_page.nr=2 (for i386) or
sysctl -w super_page.nr=4 (for Alpha and Sparc64).

I also provide /proc interface to monitor the reservation, allocation
and fail of the allocation for the super pages.

Plans for future enhancements:

1. simplify the set_pte macro
2. Support shared memory
3. Support COW
4. IA64 port (two plans 1: use long pte, 2: use region)

But I myself is too busy these days for summer/fall course lectures
and their preparations. Then do not ask me for the enhancements.

-- 

Naohiko Shimizu Department of Communications Engineering, School of Information Technology and Electronics, Tokai University 1117 Kitakaname Hiratsuka 259-1292 Japan TEL.+81-463-58-1211(ext. 4084) FAX.+81-463-58-8320



- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Aug 15 2002 - 22:00:27 EST