Author: Charles Manning Date: To: yaffs Subject: Re: [Yaffs] Selecting a GC block during passive GC
On Thursday 26 April 2007 03:00, Sohn Chung-MCG31424 wrote: > Hello
>
> Large Page NAND block has 64 pages and Small Page NAND block
> has 32 pages.
>
> YAFFS uses the same value (YAFFS_PASSIVE_GC_CHUNKS=2)
> for Large Page NAND and Small Page NAND during the passive GC.
>
> I noticed that my system has the write performance problem due
> to using too many aggressive GC.
>
> If I change YAFFS_PASSIVE_GC_CHUNKS to 4 for Large Page NAND,
> will I have any side affect?
It might. You are free to try this :-). You might even try numbers as high as
15 or so for 64 page blocks(ie. a quarter of the block). This number defines
the maximum number of active chunks when the passive gc is used. Increasing
the number would make for more passive gcs, but that would also cause more
copying to happen.
There are some ideas I have for playing with these numbers to get more passive
gcs to happen (thereby spreading the gc load). For example, it would be
interesting to dynamically increase the threshold.
Another thing I wish to look at some time is changing the way shrink headers
are managed. That shoulkd allow better gc to happen too.