Re: [PATCH 0/6] PM / Hibernate: Memory bitmap scalability improvements

From: Pavel Machek
Date: Mon Jul 21 2014 - 10:39:14 EST


On Mon 2014-07-21 16:29:51, Joerg Roedel wrote:
> Hi,
>
> On Mon, Jul 21, 2014 at 01:45:07PM +0200, Pavel Machek wrote:
> > Ok, so you have sped it up from O(n) to O(log(n)) speed, and increased
> > memory requirements from O(n) to O(n * log(n)), right?
>
> No, new memory requirements are still ~O(n), because the additional pages
> needed for the index in the radix tree are outweighted by the memory
> saved by the smaller size of struct rtree_node compared to struct
> bm_block.

Are we in agreement how O() notation works?

So you reduced O(n) to O(n/2 log(n)) ... that's still O(n log(n)), right?

> You can also modify the above tool to give you some data to plot, then
> you will also SEE that there is still a linear relationship between RAM
> size and memory required by the old and new memory bitmap
> implementation.

I believe radix tree is O(log(N)) per operation, but its memory is
certainly not linear.

Yes, log(n) is looks quite constant even for huge n :-).
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/