Re: food for thought?

From: Henrik Nordström <henrik_at_henriknordstrom.net>
Date: Wed, 16 Jun 2010 10:57:44 +0200

ons 2010-06-16 klockan 10:09 +0200 skrev Kinkie:

> Actually the thing I found the most interesting is that it suggests to
> use page-aware object placements so that big structures traversal is
> easier on the VM.

The optimization he discusses is mainly to make the operation more
optimal in precense of paging (swap) activity in the accessed data. For
as long as we keep cache index access and request processing in the same
thread any paging activity in the index data is very bad news.

When there is no paging activity the optimization is slightly slower
than normal recommended designs.

The hash lookup design we have isn't very bad in terms of performance,
but requires hash size to be tuned to the actual number of objects and
adapts badly to deviations from the expected number of objects.

The big killer for us is that we are accessing the big cache index from
the same thread doing all network I/O which means that as soon there is
any paging activity we get hit very bad, and paging activity is normally
expected when the system is under pressure which not is also the same
time when it would hurt us most bad.. so yes our design on that isn't
very well suited for VM systems but it not that much about algorithm but
more general application design.

Regards
Henrik
Received on Wed Jun 16 2010 - 08:57:49 MDT

This archive was generated by hypermail 2.2.0 : Wed Jun 16 2010 - 12:00:07 MDT