~kobuk-team/ubuntu/+source/golang-github-segmentio-asm:master

Last commit made on 2023-10-14
Get this branch:
git clone -b master https://git.launchpad.net/~kobuk-team/ubuntu/+source/golang-github-segmentio-asm
Members of The Kobuk team can upload to this branch. Log in for directions.

Branch merges

Branch information

Recent commits

e4659e5... by Hector CAO

Add debian folder

52fc573... by Kevin Burke <email address hidden>

README.md: mention minimum Go version

9e499ea... by Kevin Burke <email address hidden>

.github: update to Go 1.18.1

Also regenerate all of the stubs, we don't need "+build" anymore
because both Go 1.17 and 1.18 use "go:build" for build tags.

0eb1ec1... by Kevin Burke <email address hidden>

.github: run benchmarks in CI environment

aee0221... by Kevin Burke <email address hidden>

qsort: add benchmarks from the standard library

These will let us be more confident that a custom sort algorithm makes
sense to use, especially when e.g. the Go standard library introduces
a new sorting algorithm, we can compare the two.

On my Mac, using the pdqsort from Go 1.19, the relevant timings are:

    Sort8/100000-10 4.91ms ± 0%
    Sort8/1000000-10 60.1ms ± 0%
    StdlibSort8/100000-10 8.16ms ± 0%
    StdlibSort8/1000000-10 103ms ± 0%

    Sort8/100000-10 163MB/s ± 0%
    Sort8/1000000-10 133MB/s ± 0%
    StdlibSort8/100000-10 98.0MB/s ± 0%
    StdlibSort8/1000000-10 77.5MB/s ± 0%

Compared to the Go 1.18 sort algorithm:

    Sort8/100000-10 4.90ms ± 0%
    Sort8/1000000-10 59.0ms ± 0%
    StdlibSort8/100000-10 8.53ms ± 0%
    StdlibSort8/1000000-10 105ms ± 0%

    Sort8/100000-10 163MB/s ± 0%
    Sort8/1000000-10 136MB/s ± 0%
    StdlibSort8/100000-10 93.8MB/s ± 0%
    StdlibSort8/1000000-10 76.0MB/s ± 0%

So the Go standard library sort performance is improving but we are
still about 40% faster than the benchmark.

3e23660... by Kevin Burke <email address hidden>

go.mod: update /x/sys to latest version

It has some new bug fixes we can use.

Also replace a use of the "syscall" package with the x/sys/unix
package, which has a compatible API.

56bf31b... by Chris O'Hara <email address hidden>

Merge pull request #74 from segmentio/sort-fix

Sort fix

5b0f4f9... by Chris O'Hara <email address hidden>

Test pivot selection

459d265... by Chris O'Hara <email address hidden>

Fix less functions so sorts do a bit less work

33db497... by Chris O'Hara <email address hidden>

Make sure arm64 is using the optimized routines