On Thu, 7 Jul 2022 15:58:33 GMT, iaroslavski <d...@openjdk.org> wrote:

>> Sorting:
>> 
>> - adopt radix sort for sequential and parallel sorts on 
>> int/long/float/double arrays (almost random and length > 6K)
>> - fix tryMergeRuns() to better handle case when the last run is a single 
>> element
>> - minor javadoc and comment changes
>> 
>> Testing:
>> - add new data inputs in tests for sorting
>> - add min/max/infinity values to float/double testing
>> - add tests for radix sort
>
> iaroslavski has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   JDK-8266431: Dual-Pivot Quicksort improvements (Radix sort)
>   
>   * Added JMH

Thanks vladimir, your comment and test look good , even if I would not trust 
results for size < 200...

@AlanBateman 
If needed, a new system.property or flag could be added to disable 
heap-allocation or adjust the max heap ratio (1/128) as it may depend on use 
cases.
To insist, current jdk's Array.sort() does not have any heap limit (merge sort 
only) so this PR is a great achievement to reduce memory footprint compared to 
the current situation.

1/128th seemed to me a good upper limit as my compromise on speed vs memory, 
please propose any more conservative or appropriate threshold.

Laurent

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

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

Reply via email to