On Mon, 14 Mar 2022 19:12:29 GMT, iaroslavski <[email protected]> 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)
>
> * Improved mixed insertion sort
> * Optimized insertion sort
> * Improved merging sort
> * Optimized soring tests
I checked the latest code: line 128:
Max length of additional buffer, limited by max_heap / 64 or 256mb elements
(2gb max).
private static final int MAX_BUFFER_LENGTH =
(int) Math.min(Runtime.getRuntime().maxMemory() >> 6, 256L << 20);
So the current upper limit concerns the max length = max_heap_bytes / 64 (max
heap/8) or 2gb (if heap is huge).
-------------
PR: https://git.openjdk.java.net/jdk/pull/3938