Originally posted by mslusarz
View Post
To share state between cpu/processes under linux like it or not means running into a stack of extra locking in kernel you do not have to see. You may not have to implement this locking and get to pretend its not there. But the performance effect of all these locks will show themselves. Locking effects are worst on writes than reads. Reads are almost transparent.
This leads us back to a horrible fact how well a file system is going to perform be it userspace or kernel space supporting multi processes is going to depend on how well the kernel itself handles memory management and state of memory management.
Nova and Ext4-dax lower write performance is showing an area that need optimisation if you want multi processes file system user space or kernel space to work well. So finding that implementing multi process support is a lot slower performance is no surprise.
The high read and the slow write of nova is not because nova is in kernel space because it has multi process support enabled. improving multi process speeds will require working on the kernel be the file system implemented in user-space or kernel space..
Leave a comment: