Steven Whitehouse
fee852e374
[GFS2] Shrink gfs2_inode memory by half
...
Here is something I spotted (while looking for something entirely
different) the other day.
Rather than using a completion in each and every struct gfs2_holder,
this removes it in favour of hashed wait queues, thus saving a
considerable amount of memory both on the stack (where a number of
gfs2_holder structures are allocated) and in particular in the
gfs2_inode which has 8 gfs2_holder structures embedded within it.
As a result on x86_64 the gfs2_inode shrinks from 2488 bytes to
1912 bytes, a saving of 576 bytes per inode (no thats not a typo!).
In actual practice we get a much better result than that since
now that a gfs2_inode is under the 2048 byte barrier, we get two
per 4k slab page effectively halving the amount of memory required
to store gfs2_inodes.
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com >
2007-02-05 13:37:11 -05:00
..
2007-01-26 13:51:00 -08:00
2007-01-05 23:55:22 -08:00
2006-12-08 08:28:43 -08:00
2006-12-08 08:28:51 -08:00
2006-12-08 08:28:43 -08:00
2006-12-13 09:05:58 -08:00
2006-12-13 09:05:58 -08:00
2006-12-13 09:05:53 -08:00
2007-01-24 09:46:54 -08:00
2006-12-08 08:28:44 -08:00
2006-12-08 08:28:43 -08:00
2006-12-08 08:28:44 -08:00
2006-12-13 15:38:45 -08:00
2006-09-27 08:26:18 -07:00
2007-02-05 13:36:58 -05:00
2006-12-08 08:28:43 -08:00
2006-12-08 08:28:45 -08:00
2006-10-03 08:03:40 -07:00
2006-12-08 08:28:51 -08:00
2006-12-08 08:28:51 -08:00
2006-12-08 08:28:41 -08:00
2006-12-08 08:28:41 -08:00
2006-12-08 08:28:45 -08:00
2007-01-30 08:26:45 -08:00
2007-02-05 13:37:11 -05:00
2006-12-08 08:28:45 -08:00
2006-12-08 08:28:45 -08:00
2007-01-30 08:26:44 -08:00
2006-12-08 08:28:45 -08:00
2006-12-08 08:28:45 -08:00
2006-12-21 09:19:57 -08:00
2006-12-08 08:28:41 -08:00
2006-12-22 08:55:51 -08:00
2006-12-07 08:39:42 -08:00
2007-01-18 10:34:51 +11:00
2007-01-18 10:34:51 +11:00
2006-12-21 09:24:03 -08:00
2007-01-30 08:26:45 -08:00
2006-12-08 08:28:47 -08:00
2006-11-16 11:43:38 -08:00
2006-12-13 09:05:53 -08:00
2007-01-30 16:01:35 -08:00
2006-10-20 10:26:41 -07:00
2007-02-01 16:17:06 -08:00
2006-12-07 08:39:46 -08:00
2007-01-30 16:01:35 -08:00
2007-01-26 14:53:27 -08:00
2006-12-08 08:28:48 -08:00
2006-12-09 01:03:58 +00:00
2007-02-01 16:22:41 -08:00
2006-12-08 08:28:48 -08:00
2006-12-30 10:56:42 -08:00
2007-01-23 07:52:06 -08:00
2006-12-08 08:28:49 -08:00
2006-12-13 09:05:53 -08:00
2006-12-08 08:28:41 -08:00
2006-12-22 08:55:47 -08:00
2006-12-08 08:28:50 -08:00
2007-01-30 08:26:45 -08:00
2006-11-16 11:43:38 -08:00
2006-12-21 10:01:08 -08:00
2007-02-03 11:26:06 -08:00
2006-01-11 18:42:13 -08:00
2007-01-05 23:55:23 -08:00
2006-12-08 08:28:41 -08:00
2007-01-26 13:51:00 -08:00
2007-01-26 13:51:00 -08:00
2005-04-16 15:20:36 -07:00
2006-12-08 08:28:41 -08:00
2006-12-13 09:05:58 -08:00
2005-04-16 15:20:36 -07:00
2006-10-04 06:51:26 -06:00
2006-12-13 09:05:50 -08:00
2007-02-03 11:26:06 -08:00
2007-01-29 20:20:42 -08:00
2006-09-30 20:52:18 +02:00
2006-12-08 08:28:41 -08:00
2006-12-10 09:57:22 -08:00
2006-12-07 08:39:41 -08:00
2006-12-07 08:39:25 -08:00
2006-12-10 09:57:21 -08:00
2006-12-08 08:28:41 -08:00
2006-12-08 08:28:41 -08:00
2006-01-08 20:12:40 -08:00
2006-12-08 08:28:41 -08:00
2006-12-10 09:57:22 -08:00
2006-12-10 09:57:22 -08:00
2006-04-11 13:53:33 +02:00
2006-12-08 08:28:41 -08:00
2006-12-22 08:55:50 -08:00
2006-09-29 09:18:20 -07:00
2007-01-26 12:53:20 -08:00
2006-09-29 09:18:24 -07:00
2006-12-13 09:05:50 -08:00
2006-12-08 08:28:41 -08:00
2006-12-04 02:00:24 -05:00
2006-09-30 20:52:32 +02:00
2006-12-08 08:28:41 -08:00
2006-10-12 15:09:51 +02:00
2006-12-22 08:55:48 -08:00
2006-01-08 20:13:36 -08:00
2006-12-08 08:28:41 -08:00
2006-12-08 08:28:41 -08:00
2006-12-08 08:28:40 -08:00
2006-12-07 08:39:25 -08:00
2006-09-30 20:52:26 +02:00
2006-12-08 08:28:41 -08:00
2006-12-13 09:05:50 -08:00
2006-06-30 19:25:36 +02:00
2006-09-30 20:52:31 +02:00
2006-12-10 09:57:22 -08:00
2006-12-21 00:16:03 -08:00
2006-12-08 08:28:51 -08:00
2006-12-08 08:28:51 -08:00
2006-10-01 00:39:19 -07:00
2005-04-16 15:20:36 -07:00
2006-03-23 07:38:11 -08:00
2006-09-30 20:52:31 +02:00
2006-12-13 09:05:53 -08:00
2006-10-01 00:39:28 -07:00
2006-12-08 08:28:41 -08:00
2006-12-10 09:57:22 -08:00
2006-12-08 08:28:41 -08:00
2006-12-13 09:05:47 -08:00
2006-12-22 08:55:48 -08:00
2006-12-08 08:28:41 -08:00
2007-01-11 18:18:21 -08:00
2006-12-08 08:28:41 -08:00
2006-12-04 02:00:24 -05:00
2005-04-16 15:20:36 -07:00
2006-12-08 08:28:41 -08:00