Releases: c-blake/adix
Add adix/oats new-style Concept prototype & examples
Actual source files have more details, as always, but basically add adix/oats.nim
: A new-style Concept backend prototype for open-addressed tables. It is nowhere near as thorough as adix/lptabz at this stage.
So util/lfreq.nim
and now no longer needs a user to magically know how big the string data area will need to be, making it actually a pretty general purpose utility (which is good since the README refers to it in comparison with the bu/oft
wrapper around the adix/amoft.AMOft
sketch).
Also add some less generally useful test/comparison files related to adix/oats
for the curious:
- tests/lfreq.awk: Like above written as a pure AWK 1-liner
- tests/wu.nim: Unique w/no counts allows smallest CPU cache footprint
- tests/wfr.nim: Fully bundled Knuth-McIlroy vocab analyzer (almost surely "overbundled" but big among CFRO guys).
- tests/kmCmp.sh: Knuth-McIlroy Problem comparisons of above
Make building nsort more portable
Work on making compiling SIMD-optimized cumsum
& nsort
more robust on x86_64 platforms.
This robustness is only compile-time CPU feature detection-oriented (run-time would seem to require either a non-intrinsics approach to assembly or separate C compilation units.). So, it matters if your nim.cfg/build flags have march=native
(or whatnot) in them which is kind of a choice outside the package as it relates to binary compatibility/deployment.
Mostly just update cligen version dep.
This kind of "release noise" should now become rare with the new bu/nrel -u
feature.
Stop using LineTooLong
Fix bug when using older Nim compilers
See the only commit.
Fix nimble install when a dependency
That's it. Again thanks to @Gruruya .
Rename adix/stat -> mvstat; Fix nimble install
Updates, add tdigest, uniqce sketches
In more detail:
- Add merge API to lghisto
- Add tdigest tail quantile sketch.
- Add cardinality estimation sketch uniqce.nim
- Improve doc generation/re-do README to point to it.
- Rename
adix/stat
->adix/mvstat
Even more in git log -p, of course.
B-tree & lfreq adjustments, slimSystem, add adix/amoft
Various B-tree fix-ups to make some things discardable/marked used/etc.
Allow user to boost util/lfreq data space, though it should be replaced by a less hokey thing when concepts work better..
Add new Count-Min Sketch-based adix/amoft.nim
module for approximately k-most often problems, where right now k
is not too large (probably need to tie into B-tree for large k
and dynamically switch over for large k
since the heap-scan-table is probably faster for k < 2000
which is likely the common case).