[PVFS2-developers] Multiple trove implementations

Julian Martin Kunkel Julian.Kunkel at web.de
Sun Oct 9 20:53:53 EDT 2005


Hi,
I'm currently working on my bachelor-thesis. The topic of the work is 
performance analysis of pvfs2, especially the layers between the application 
and trove. Therefore I implement a new trove implementation, which will throw 
away I/O data and only takes care of the metadata as far as the metadata is 
necessary for the correct operation of further pvfs2 operations. So I want to 
find bottlenecks and ways to improve pvfs2. I already have implemented a 
bunch of functions and got first results. The new module is called tas.

But first I want to discuss the current way of switching between different 
trove implementations (trove modules). 
Currently there is a dummy implementation of the function 
map_coll_id_to_method(int coll_id) in trove-mgmt.c which always returns 0.

I come to think that it would be handy to select the trove module for every 
filesystem in fs.conf like "TroveModule DBPF" and to select a different 
TroveModule for collection management (the trove storage management module 
might 
be selected by the user as well). This module stores the information about the 
selected module for every filesystem/collection. Therefore a new trove 
management function tas_get_collection_method_id can be used.
The selected module may be cached in memory to avoid access to the underlaying 
trove module. I think a new initialization and finalize functions should be 
provided for the trove storage management module.
What do you think about this approach ?

I'm currently creating a lot performance tests with mpi-io, when they are 
finished I will create some for some applications witch use directly the pvfs2 
system interface and compare them. For metadata I will compare the dbpf, 
dbpf+nosync, dbpf on top of tmpfs and dbpf on tmpfs with nosync for metadata. 
The configuration for the cluster are 5 Xeon 2Ghz PCs with a 1GBit ethernet 
network.
Enclosed you will find some pdfs which show performance data for small 
transfered data (10MB) and metadata opens per second from one client (which 
is the metadata server). 

Notes for the metadata graph:
For a small number of files (see Meta-create...-part) it seems that a better 	
caching might improve metadata throughput a lot. I wonder at the dropping 
performance if the file count totally written by test/mpi-md-test.c increases.  
Maybe a problem with the romio implementation ? If I start the program more 
often to create the same amount of files the performance depredation seems 
not to happen ! I will dig in if the gathering of performance data is 
finished.

Notes for the IO graph:
For small file-sizes and used buffers It seems that the DBPF implementation is 
rather good. For better analysis I will do more benchmarks, but with larger 
IO PVFS2 crashes sometimes :( 

I have even a lot more graphs if you are interested I will send them also...
Maybe you have some suggestions...

Have a nice day
Julian
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Meta-create-1Meta-5Data-1Clients-all.pdf
Type: application/pdf
Size: 5867 bytes
Desc: not available
Url : http://www.beowulf-underground.org/pipermail/pvfs2-developers/attachments/20051009/a8c00bcc/Meta-create-1Meta-5Data-1Clients-all-0001.pdf
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Meta-create-1Meta-5Data-1Clients-part.pdf
Type: application/pdf
Size: 5491 bytes
Desc: not available
Url : http://www.beowulf-underground.org/pipermail/pvfs2-developers/attachments/20051009/a8c00bcc/Meta-create-1Meta-5Data-1Clients-part-0001.pdf
-------------- next part --------------
A non-text attachment was scrubbed...
Name: IO-smallblock-10MB-1Meta-5Data-10Clients-all-Read+Write.pdf
Type: application/pdf
Size: 5778 bytes
Desc: not available
Url : http://www.beowulf-underground.org/pipermail/pvfs2-developers/attachments/20051009/a8c00bcc/IO-smallblock-10MB-1Meta-5Data-10Clients-all-ReadWrite-0001.pdf
-------------- next part --------------
A non-text attachment was scrubbed...
Name: IO-smallblock-10MB-1Meta-5Data-10Clients-part-Read+Write.pdf
Type: application/pdf
Size: 5387 bytes
Desc: not available
Url : http://www.beowulf-underground.org/pipermail/pvfs2-developers/attachments/20051009/a8c00bcc/IO-smallblock-10MB-1Meta-5Data-10Clients-part-ReadWrite-0001.pdf
-------------- next part --------------
A non-text attachment was scrubbed...
Name: IO-smallblock-10MB-1Meta-5Data-5Clients-all-Read+Write.pdf
Type: application/pdf
Size: 5733 bytes
Desc: not available
Url : http://www.beowulf-underground.org/pipermail/pvfs2-developers/attachments/20051009/a8c00bcc/IO-smallblock-10MB-1Meta-5Data-5Clients-all-ReadWrite-0001.pdf
-------------- next part --------------
A non-text attachment was scrubbed...
Name: IO-10240x1KB-1Meta-5Data-XClients-Read+Write.pdf
Type: application/pdf
Size: 6449 bytes
Desc: not available
Url : http://www.beowulf-underground.org/pipermail/pvfs2-developers/attachments/20051009/a8c00bcc/IO-10240x1KB-1Meta-5Data-XClients-ReadWrite-0001.pdf


More information about the PVFS2-developers mailing list