lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Wolfgang Hoschek <>
Subject Re: Lucene vs. Ruby/Odeum
Date Thu, 02 Jun 2005 05:02:35 GMT
> As an aside, in my performance testing of Lucene using JProfiler,  
> it seems
> to me that the only way to improve Lucene's performance greatly can  
> come
> from 2 areas
> 1. optimizing the JVM array/looping/JIT constructs/capabilities to  
> avoid
> bounds checking/improve performance
> 2. improve function call overhead
> Other than that, other changes will require a significant change in  
> the code
> structure (manually unrolling loops), at the sacrifice of
> readability/maintainability.

Just curious: are you more happy with JProfiler than with the JDK 1.5  

I haven't used JProfiler in quite a while but my impression back then  
was that it's overheads tend to significantly perturb measurement  
results. When I switched to the low-level JDK 1.5 profiler CPU tuning  
efforts got a lot more targetted and meaningful.

So, in my experience, the least perturbing and most accurate profiler  
is the one built into JDK 1.5. run java with
-server -agentlib:hprof=cpu=samples,depth=10' flags for long enough  
to collect enough samples to be statistically meaningful, then study  
the trace log and correlate its hotspot trailer with its call stack  
headers (grep is your friend, a GUI isn't really needed). For a  
background article on hprof see 


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message