Skip to content

Commit d6f40db

Browse files
committed
Rebase and apply initial optimizations
1 parent 2da1f83 commit d6f40db

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

src/SortingAlgorithms.jl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ Characteristics:
7979
- https://link.springer.com/chapter/10.1007/BFb0016253
8080
- https://max-arbuzov.blogspot.com/2021/10/merge-sort-with-osqrtn-auxiliary-memory.html
8181
"""
82-
const PagedMergeSort = PagedMergeSortAlg()
82+
const PagedMergeSort = maybe_optimize(PagedMergeSortAlg())
8383

8484
"""
8585
ThreadedPagedMergeSort
@@ -99,7 +99,7 @@ Characteristics:
9999
- https://max-arbuzov.blogspot.com/2021/10/merge-sort-with-osqrtn-auxiliary-memory.html
100100
- https://en.wikipedia.org/wiki/Merge_sort#Merge_sort_with_parallel_recursion
101101
"""
102-
const ThreadedPagedMergeSort = ThreadedPagedMergeSortAlg()
102+
const ThreadedPagedMergeSort = maybe_optimize(ThreadedPagedMergeSortAlg())
103103

104104
## Heap sort
105105

@@ -1058,7 +1058,7 @@ function sort!(v::AbstractVector, lo::Integer, hi::Integer, a::ThreadedPagedMerg
10581058
lo >= hi && return v
10591059
n = hi + 1 - lo
10601060
nThreads=Threads.nthreads()
1061-
(n < PAGEDMERGESORT_THREADING_THRESHOLD || nThreads < 2) && return sort!(v, lo, hi, PagedMergeSort, o)
1061+
(n < PAGEDMERGESORT_THREADING_THRESHOLD || nThreads < 2) && return sort!(v, lo, hi, PagedMergeSortAlg(), o)
10621062
threadingThreshold = max(n ÷ 4nThreads, PAGEDMERGESORT_THREADING_THRESHOLD)
10631063
blocksize = isqrt(n)
10641064
nBlocks = n ÷ blocksize

0 commit comments

Comments
 (0)