Date: Wed, 10 Aug 2005 14:02:01 +0400 (MSD) From: Dmitry Morozovsky <marck@rinet.ru> To: freebsd-hackers@FreeBSD.org Subject: ffs_alloc.c: minfree Q Message-ID: <20050810135713.K18426@woozle.rinet.ru>
next in thread | raw e-mail | index | archive | help
Colleagues, from ffs_alloc.c: case FS_OPTSPACE: /* * Allocate an exact sized fragment. Although this makes * best use of space, we will waste time relocating it if * the file continues to grow. If the fragmentation is * less than half of the minimum free reserve, we choose * to begin optimizing for time. */ request = nsize; if (fs->fs_minfree <= 5 || --->>> ~~~~~~~~~~~~~~~~~~~~~~ fs->fs_cstotal.cs_nffree > (off_t)fs->fs_dsize * fs->fs_minfree / (2 * 100)) break; log(LOG_NOTICE, "%s: optimization changed from SPACE to TIME\n", fs->fs_fsmnt); fs->fs_optim = FS_OPTTIME; break; For contemporary situation, where total size of file system can grow to hundreds of Gs or even several Ts, 8% of space seems too high. Maybe this algorithm should be slightly adjusted (I'm thinking of logarithmic scale depending on file system size)? Any (contemporary) references would be highly appreciated. Sincerely, D.Marck [DM5020, MCK-RIPE, DM3-RIPN] ------------------------------------------------------------------------ *** Dmitry Morozovsky --- D.Marck --- Wild Woozle --- marck@rinet.ru *** ------------------------------------------------------------------------
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050810135713.K18426>