[fab] Project Proposal feedback request (fwd)

Greg DeKoenigsberg gdk at redhat.com
Fri Apr 21 14:48:25 UTC 2006


Hey, smart technical people.  Nitin is already trying to jump on the SoC 
bandwagon.  Can someone get this in front of a kernel guy and see if it's 
sensible work?

--g

-------------------------------------------------------------
Greg DeKoenigsberg || Fedora Project || fedoraproject.org
Be an Ambassador || http://fedoraproject.org/wiki/Ambassadors
-------------------------------------------------------------

---------- Forwarded message ----------
Date: Fri, 21 Apr 2006 18:09:20 +0530
From: Nitin Gupta <nitingupta.mail at gmail.com>
To: gdk at redhat.com
Subject: Project Proposal feedback request

Hello,
    I am writing this to get your feedback on my project which I intend 
to submit to Fedora through Google Summer of Code. Basically, I could 
not find any of mentors with interest in Linux kernel work from among 
the ones listed of Fedora Mentors page. So, I would be nice if you can 
please guide me to contact a mentor who might be interested in this 
work. I myself think that this project will be very beneficial to Fedora 
(or any other distribution).

Because of significant progress (detailed below) made thus far, I am 
very confident to complete it within SoC deadline of 3 months. Also, 
I've been working on this project alone since long time without any 
funding yet, so usual worries from Fedora about the developer running 
away from project after SoC completion does not apply!

Please Reply with _any_ of your comments on this project and whether you 
are (why not? :) interested in this project. Your feedback will be 
really helpful in shaping my application for SoC '06.

------------------ About the Project -----------------------

* Project Name: Compressed Cache for Linux 2.6.x kernels

Hosted at: http://linuxcompressed.sourceforge.net

Implementation (under-development) for 2.6.x kernels (CVS WebView: 
http://cvs.sourceforge.net/viewcvs.py/linuxcompressed/linux26)


* Description: This project involves introducing a new layer in existing 
virtual memory hierarchy - Compressed Cache. This is an area in RAM that 
will store pages that were to be swapped out due to memory pressure. 
This will give very significant performance improvements to system under 
heavy memory pressure.

The project was originally started by Rodrigo S de Castro who developed 
it for 2.4 kernel series but nothing was done to port it to 2.6.x kernel 
series. Additionally, he has now left its development and now I'm the 
only developer working on this project. (Project members: 
http://sourceforge.net/project/memberlist.php?group_id=13472).

I have decided to completely re-write this feature for Linux 2.6.x 
kernels to have maximum flexibility in trying out new ideas and to take 
optimum advantage of many new features 2.6 kernels offer. I have been 
working on its design for 3 months and a working ccache is scheduled to 
be completed in next 3 months.

* Here is my design work for this project:

Compressed Cache storage structure:
http://nitingupta.mail.googlepages.com/CCache-InitialDesign.zip

Compressed Cache structure in more detail:
http://nitingupta.mail.googlepages.com/structuredetails

* Coding Progress thus far: 
http://cvs.sourceforge.net/viewcvs.py/linuxcompressed/linux26
Currently, the implementation is able to take the page (page-cache page) 
about to be feed during reclaim and store it in ccache and restores the 
page when lookup is performed over page-cache.

Many of ideas are taken from previous works (largely by Rodrigo) and 
many are new ones developed by me. This structure focuses to have a high 
performance during cache lookup, insert, retrieval, low fragmentation 
compact compressed cache structure.

Future work (which might not be covered by SoC) includes adding 
adaptivity to cache size by being able to automatically adjust ccache 
size based on heuristic design (which will be largely based on Rodrigo's 
work: Adaptive Compressed Caching: Design and Implementation 
<http://linuxcompressed.sourceforge.net/files/docs/paper.pdf>).

I strongly believe that this will be extremely useful for Embedded 
devices like PDAs, Virtualized environment (like XEN, VMWare), LiveCD 
environment, and on "general" desktop systems (GNOME+OpenOffice on 128MB 
RAM?).

I will be glad to provide you with my previous experience in open-source 
works or anything specific to this project: details about cache design, 
other design decisions and project roadmap together with current 
implementation progress.

Please Reply with any of your comments on this project -- that will be 
really helpful for me.

Best Regards,
Nitin Gupta
nitingupta.mail at gmail.com
Home Page: http://nitingupta.mail.googlepages.com




More information about the fedora-advisory-board mailing list