cosmopolitan/third_party/vqsort
Jōshin 3a8e01a77a
more modeline errata (#1019)
Somehow or another, I previously had missed `BUILD.mk` files.

In the process I found a few straggler cases where the modeline was
different from the file, including one very involved manual fix where a
file had been treated like it was ts=2 and ts=8 on separate occasions.

The commit history in the PR shows the gory details; the BUILD.mk was
automated, everything else was mostly manual.
2023-12-16 23:07:10 -05:00
..
BUILD.mk more modeline errata (#1019) 2023-12-16 23:07:10 -05: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.