On Tue, 9 Aug 2022 06:49:53 GMT, Peter Levart <plev...@openjdk.org> wrote:

>> Here are JMH test results on my stable perf laptop (cpu fixed: 4 real cpu 
>> cores at 2ghz, HT disabled, i7 6820k):
>> https://github.com/bourgesl/bourgesl.github.io/blob/master/bench-220709-summary-2.log
>> 
>> It confirms Vladimir results: 50% gain in average in parallelSort(), huge 
>> gains (x5) on large random arrays...
>> 
>> As DPQS relies on ForkJoinPool.getCommonParallelism = 3 on my machine, MT 
>> speedup is only x3 ! 
>> I observed max 300%/400% cpu load when parallelSort() runs on large arrays...
>> Why does it return NCpuCore - 1 ?
>
> Hi @bourgesl, 
> In order to convince reviewers of the benefits (and lack of drawbacks) of 
> your effort, you could present the results of benchmarks in a friendlier way. 
> Looking at the published JMH code and published results, I can only suspect 
> the results labeled with "new*" are actually obtained by running the "test*" 
> JMH benchmarks with the "patched" JDK and the published "test*" results are 
> obtained by running with "unpatched" JDK? If you want to present the results 
> in a friendlier way, graph them. It's easy. Just publish the unmodified pre 
> and post JMH outputs as two public GISTs and then point to them with this 
> tool: https://jmh.morethan.io/ ...
> CPU time / real time is one aspect of performance. Allocation is another. JMH 
> has an option to measure both. Show that your claim about less aggressive 
> memory allocation is true. It would be interesting also to show the effect of 
> a fall-back mechanism when the allocation of buffers is not successful (again 
> in a pre/post fashion).
> I can see there is a lot of effort put into this change. It would be a shame 
> that it doesn't gain enough interest just because it requires too much effort 
> to study it.

Hi @plevart 
Thanks for your advices, we will run again jmh tests within 1 week using json 
output, required by jmh analyzer on the latest dpqs patch.

I agree the patched/unpatched labels are better than new/test labels.

I will write a basic test to sort 1million integers that fails before/passes 
now using low max heap-mem ~ 64m...

Laurent

-------------

PR: https://git.openjdk.org/jdk/pull/3938

Reply via email to