brokenhandsio / brokenhandsio/accelerate-linux

`vDSP_vsortD` possible array size too small

Open
#2 0 comments 0 reactions 0 assignees View on GitHub
bug enhancement
Dominant language
Swift
Stars
9
Forks
1
PR merge metrics
No merged PRs in 30d

Description

Currently [`vDSP_vsortD`](https://github.com/brokenhandsio/accelerate-linux/blob/main/Sources/AccelerateLinux/VectorOps/VectorBasicOps.swift#L360), which is supposed to sort a vector, can only sort it if it's size `n` is `0 < n < Int64.max`, instead of the API's required `0 < n < UInt64.max` due to not being able to use `UInt` as pointer index. We need to work around this.

Also, we're currently using `LAPACK.dlasrt_` to sort it if the size `n` is `0 < n < Int32.max`, and uses a custom QuickSort implementation for `Int32.max <= n < Int64.max`. Once #1 is solved we should switch to using this as default for performance reasons

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.