Skip to contentSkip to conversation

GFS2 performance tweaks

PATCH New Bob Peterson 2 participants 2 messages Dec 12, 2007

lore
Share & tools
lore
#0 lore raw

cover GFS2 performance tweaks

Hi GFS2 Folks,

The following is a set of ten patches designed to give gfs2 somewhat better performance than before. Some are trivial and may or may not have a real impact on performance. I'll let Steve Whitehouse decide which ones should go upstream and which ones aren't worth it. The patches may be summarized as follows:

1. Journal extent mapping
2. Get rid of useless "found" variable in quota.c
3. Run through full bitmaps quicker in gfs2_bitfit
4. Get rid of sd_statfs_mutex
5. Shortcut in gfs2_write_alloc_required if writing past eof.
6. Reorganize function gfs2_glmutex_lock
7. Only fetch the dinode once in block_map
8. Only find indirect pointer buffers once in block_map
9. Move meta_inval to glops.c and declare static, more attach_bufdata to trans.c and declare static.
10. Function meta_read optimization.

Regards,

Bob Peterson
Red Hat GFS

#1 lore raw

cover GFS2 performance tweaks

Hi,

Quoted 8 lines · Bob Peterson

Hi GFS2 Folks,

The following is a set of ten patches designed to give gfs2 somewhat better performance than before. Some are trivial and may or may not have a real impact on performance. I'll let Steve Whitehouse decide which ones should go upstream and which ones aren't worth it. The patches may be summarized as follows:

I've applied most of these with the exceptions of:

Quoted 4 lines

1. Journal extent mapping
2. Get rid of useless "found" variable in quota.c
3. Run through full bitmaps quicker in gfs2_bitfit
4. Get rid of sd_statfs_mutex

- Needs fixing as per previous email.

Quoted 4 lines

5. Shortcut in gfs2_write_alloc_required if writing past eof.
6. Reorganize function gfs2_glmutex_lock
7. Only fetch the dinode once in block_map
8. Only find indirect pointer buffers once in block_map

- I'd really far rather see a fix to bz #307091. Also, although it
might make writes faster, I rather suspect that it will have the opposite effect on reads, since the indirect blocks will not be in the journal at all. So on balance I think I'd rather not take this patch right now.

Quoted 2 lines

9. Move meta_inval to glops.c and declare static, more attach_bufdata to trans.c and declare static.

- This is also done in bz #349271 and I only want to apply one or the
other of these two patches so I'm deferring this until we know what we are doing with the patches for #349271.

Quoted 7 lines

10. Function meta_read optimization.
Regards,

Bob Peterson
Red Hat GFS

Also, please use git-send-email if you are sending multiple patches. I'm not sure what you did to git to get the rather strange paths in these patches, but I had to edit all the patches except the first one by hand in order to get them to apply,

Steve.