[ZUFS news] pmfs: Announcing PMFS2, PMFS derived ZUFS file system

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi FS Folks

I'm glad to point you to a new open-source (GPLv2) ZUFS based filesystem named pmfs2.
It currently demonstrates 90% of the IO performance possible under ZUFS.
(Meta Data is still sloooow)

PMFS2 takes its core code from the open-source Kernel filesystem on Github *pmfs*
(https://github.com/linux-pmfs/pmfs) fills in some glue code from toyfs and demonstrates
a very good IO performance.
(Reads better then writes because block-allocator does not yet scale)

Fine it all on Github:
	https://github.com/sagimnl/pmfs2

Please start with the README file (url above). This code is part of the *zus* user-mode server
build system. And also read the documentation in the netapp/zufs-zus project.

Currently the main code taken from *pmfs* is in btree.c which gives a very good structure
of an inode's blocks allocation. It is very similar to a radix-tree with natural sizes similar
to the Intel mmu (4K, 2M, 1G ...) so the max needed tree hight is 5. The original support of
2M blocks and 1G blocks is also supported in the original code. The support is still there but
is not wired into higher layers yet.

Data files, Directories, Inode-Table, xattrs, are all inode-btree structures. So the IT
is extensible just as a normal file.

The Directory structure within the inode-btree linear space is a flat link-list taken from toyfs
and therefor does not scale well on big Directories. Its on a TODO. Perhaps port the ext4
directory btree+ structure. (Original pmfs had the linear ext2 directories so it was just the
same)

otherwise this code is pretty small and simple. But can be a good place to start your next
ZUFS project

[license]
The code as *pmfs* is GPLv2. Therefor it is its own git tree that needs to be cloned within
the zufs-zus project directory structure. Then the user may compile and load it on her own
machine.
ANY changes please send via the Github system and it will be reviewed and pulled into the next
release.

Cheers
Boaz, Shachar & Sagi



[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux