|
From: | yinyin |
Subject: | [Gluster-devel] glusterfs and flamegraph |
Date: | Sun, 26 Jan 2014 11:24:53 +0800 |
Hi,all: I have used FlameGraph to test glusterfs-3.4.2, trace with simple dd. found that, a lot of cpu consume on frame_fill_groups, My questions: 1. what’s the func of frame_fill_groups? 2. should it disable by default? I found the fellow commit add frame_fill_groups. commit 59ff893d11844eb52453ce4f7f098df05fcde174 Author: Brian Foster <address@hidden> Date: Mon Jul 16 13:51:09 2012 -0400 libglusterfs,mount/fuse: implement gidcache mechanism in fuse-bridge This change genericizes the cache mechanism implemented in commit 8efd2845 into libglusterfs/src/gidcache.[ch] and adds fuse-bridge as a client. The cache mechanism is fundamentally equivalent, with some minor changes: - Change cache key from uid_t to uint64_t. - Modify the cache add logic to locate and use an entry with a matching ID, should it already exist. This addresses a bug in the existing mechanism where an expired entry supercedes a newly added entry in lookup, causing repeated adds and flushing of a cache bucket. The fuse group cache is disabled by default. It can be enabled via the 'gid-timeout' fuse-bridge translator option and accompanying mount option (i.e., '-o gid-timeout=1' for a 1s entry timeout). BUG: 800892 |
[Prev in Thread] | Current Thread | [Next in Thread] |