cosmopolitan/third_party/vqsort
Jōshin e16a7d8f3b
flip et / noet in modelines
`et` means `expandtab`.

```sh
rg 'vi: .* :vi' -l -0 | \
  xargs -0 sed -i '' 's/vi: \(.*\) et\(.*\)  :vi/vi: \1 xoet\2:vi/'
rg 'vi: .*  :vi' -l -0 | \
  xargs -0 sed -i '' 's/vi: \(.*\)noet\(.*\):vi/vi: \1et\2  :vi/'
rg 'vi: .*  :vi' -l -0 | \
  xargs -0 sed -i '' 's/vi: \(.*\)xoet\(.*\):vi/vi: \1noet\2:vi/'
```
2023-12-07 22:17:11 -05:00
..
BUILD.mk Rename makefiles BUILD.mk 2023-11-28 11:21:08 -08:00
README.cosmo Add more sorting algorithms 2023-04-27 05:44:44 -07:00
vqsort.h Reduce header complexity 2023-11-28 14:39:42 -08:00
vqsort_i32a.S Make progress towards aarch64 build 2023-05-10 04:20:46 -07:00
vqsort_i64a.S Make progress towards aarch64 build 2023-05-10 04:20:46 -07:00
vqsort_int32.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00
vqsort_int64.c flip et / noet in modelines 2023-12-07 22:17:11 -05:00

DESCRIPTION

  vqsort implements vectorized quicksort using avx2. this is the fastest
  way to sort integers. this goes as fast as djbsort for 32-bit integers
  except it supports 64-bit integers too, which go just as fast: about a
  gigabyte of memory sorted per second. It's 3x faster than simple radix
  sort. It's 5x faster than simple quicksort. It's 10x faster than qsort

LICENSE

  Apache 2.o

ORIGIN

  https://github.com/google/highway/
  commit 50331e0523bbf5f6c94b94263a91680f118e0986
  Author: Jan Wassenberg <janwas@google.com>
  Date:   Wed Apr 26 11:20:33 2023 -0700
  Faster vqsort for small arrays (7x speedup! for N=100)

LOCAL CHANGES

  Precompiled beacuse upstream codebase is slow, gigantic, and hairy.