Re: [RFC PATCH] mm, compaction: allow compaction for GFP_NOFS requests

From: Michal Hocko
Date: Thu Oct 13 2016 - 07:05:20 EST


On Thu 13-10-16 09:39:47, Michal Hocko wrote:
> On Thu 13-10-16 11:29:24, Dave Chinner wrote:
> > On Fri, Oct 07, 2016 at 03:18:14PM +0200, Michal Hocko wrote:
> [...]
> > > Unpatched kernel:
> > > # Version 3.3, 16 thread(s) starting at Fri Oct 7 09:55:05 2016
> > > # Sync method: NO SYNC: Test does not issue sync() or fsync() calls.
> > > # Directories: Time based hash between directories across 10000 subdirectories with 180 seconds per subdirectory.
> > > # File names: 40 bytes long, (16 initial bytes of time stamp with 24 random bytes at end of name)
> > > # Files info: size 0 bytes, written with an IO size of 16384 bytes per write
> > > # App overhead is time in microseconds spent in the test not doing file writing related system calls.
> > > #
> > > FSUse% Count Size Files/sec App Overhead
> > > 1 1600000 0 4300.1 20745838
> > > 3 3200000 0 4239.9 23849857
> > > 5 4800000 0 4243.4 25939543
> > > 6 6400000 0 4248.4 19514050
> > > 8 8000000 0 4262.1 20796169
> > > 9 9600000 0 4257.6 21288675
> > > 11 11200000 0 4259.7 19375120
> > > 13 12800000 0 4220.7 22734141
> > > 14 14400000 0 4238.5 31936458
> > > 16 16000000 0 4231.5 23409901
> > > 18 17600000 0 4045.3 23577700
> > > 19 19200000 0 2783.4 58299526
> > > 21 20800000 0 2678.2 40616302
> > > 23 22400000 0 2693.5 83973996
> > > Ctrl+C because it just took too long.
> >
> > Try running it on a larger filesystem, or configure the fs with more
> > AGs and a larger log (i.e. mkfs.xfs -f -dagcount=24 -l size=512m
> > <dev>). That will speed up modifications and increase concurrency.
> > This test should be able to run 5-10x faster than this (it
> > sustains 55,000 files/s @ 300MB/s write on my test fs on a cheap
> > SSD).
>
> Will add more memory to the machine. Will report back on that.

increasing the memory to 1G didn't help. So I've tried to add
-dagcount=24 -l size=512m and that didn't help much either. I am at 5k
files/s so nowhere close to your 55k. I thought this is more about CPUs
count than about the amount of memory. So I've tried a larger machine
with 24 CPUs (no dagcount etc...), this one doesn't have a fast storage
so I've backed the fs image by ramdisk but even then I am getting very
similar results. No idea what is wrong with my kvm setup.
--
Michal Hocko
SUSE Labs