I know when I first came to Lucene and ran some tests/benchmarks on
indexing and searching, I was surprised at how high the CPU usage was - I
could easily saturate an 8 or 16 CPU system. I expected it to be strongly
IO-bound and I've heard others express that surprise when they first learn
about it or see it for themselves.

So it may help the original poster to just set that expectation - that
Lucene's work load on both the indexing and searching side is CPU intensive
and by adding more indexing or search threads, CPU usage will increase. So
users of Lucene need to do capacity planning of their systems with that in
mind.

-Michael Peterson


On Sun, Jan 8, 2017 at 8:16 PM, Denis Bazhenov <dot...@gmail.com> wrote:

> One should really put things in context. If those searches are some kind
> of background workload (no users are waiting for search results), I’ll
> agree 100% CPU utilization is kind of ideal situation. But if we’re
> speaking of interactive system where there is user waiting behind each
> search query, I’d say 100% CPU utilization is not a good place to be in.
> It’s a almost guarantee for a resource starvation.
>
> So, one should distinguish those type of workloads.
>
> Also there is universal kind of recipe for those situations. Run a JVM
> profiler/sampler (JMC, for example) and look where this time is spent. It
> might have been GC.
>
> > On Jan 4, 2017, at 18:05, Adrien Grand <jpou...@gmail.com> wrote:
> >
> > Well, you could but that would not make sense, 100% CPU usage is really
> the
> > best you can get. Why would you like to make things worse artificially?
>
> ---
> Denis Bazhenov <dot...@gmail.com>
>
>
>
>
>
>

Reply via email to