Commit Graph

16 Commits

Author SHA1 Message Date
Samuel Berthe 035f1b358a Experiments: adding SIMD helpers (#801)
* feat(exp,simd): adding SumAxB helpers

* feat(exp,simd): adding MeanAxB and ClampAxB helpers

* feat(exp,simd): adding MinAxB and MaxAxB helpers

* refactor(exp,simd): group perf helper category + architecture

* feat(exp,simd): adding ContainsAxB helpers

* perf(exp,simd): cast to unsafe slice once

* feat(exp,simd): call the right SIMD helper based on local architecture

* chore: internal dependency linking

* Update exp/simd/math.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* style: fix linter

* style: fix linter

* chore: enable simd in makefile

* chore(ci): add simd package to test runs

* chore(ci): add simd package to test runs only for go 1.26

* fix(simd): fix overflow

* fix(simd): fix overflow and apply the same behavior than lo.Mean

* doc(exp,simd): adding initial doc

* refactor(simd): move intersect_avx2 and intersect_sse code into intersect_avx512

* fix(simd): call SSE fallback instead of lo.Sum for default helpers

* feat(simd): cache simd features on package init to avoid repeated checks

* perf(exp,simd): precompute length + improve code quality

* perf(exp,simd): faster iteration for min/max value

* test(exp,simd): adding benchmarks

* test(exp,simd): adding benchmarks results

* test(exp,simd): adding benchmarks results

* doc(exp,simd): adding warning for overflows in SIMD operations

* feat(exp,simd): adding more dispatch helpers

* feat(exp,simd): adding SumBy variants

* feat(exp,simd): adding MeanBy variants

* fix(exp,simd): faster clamp

* 💄

* doc(exp,simd): adding SumBy + MeanBy

* fix(exp,simd): faster SIMD operations

* chore(ci): enable the benchmarks temporary

* chore(ci): display cpu architecture before running tests

* chore(ci): github actions are hidding some useful stuffs

* chore(ci): no SIMD VM available at Github during the weekend ???

* test(exp,simd): larger epsilon

* oops

* perf(exp,simd): faster iterations

* doc(exp,simd): report last version of benchmarks

* 💄

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-21 19:19:36 +01:00
Samuel Berthe 8ceeb1403d chore(ci,doc): add a build of documentation to CI 2025-10-06 17:14:03 +02:00
Samuel Berthe 380e1a0ae2 fix(tests): fix flaky time-based tests (#699)
* fix(tests): fix flaky time-based tests

* test: replace time package with a mock
Using a dedicated dependency would have been awesome, but i try to keep this repo with minimal dependencies
2025-10-05 00:34:07 +02:00
Samuel Berthe f8024de2ce fix(chunk): Copy chunk in a new slice (#648)
Prevents memory leak and free memory from initial collection.
2025-07-06 15:33:18 +02:00
Samuel Berthe ad7eae34cc chore: remove nightly Go binary from makefile 2023-12-02 15:12:00 +01:00
Fenix 4743e78ef0 make it to go install for nancy (#233)
Change-Id: I72f57bf81c73201e4b45f71bddcd90bba96727f4

Co-authored-by: zhuzhenfeng.code <zhuzhenfeng.code@bytedance.com>
2022-10-06 16:10:20 +02:00
Samuel Berthe 222a95ae56 chore: remove go1.18-beta 2022-10-04 20:39:17 +02:00
Samuel Berthe f911f35acd chore(coverage): upload coverage to codecov 2022-05-18 20:01:46 +02:00
Samuel Berthe 81cd00d547 fix(makefile): fix watch commands 2022-03-20 00:41:26 +01:00
Samuel Berthe 094b6f974f run test with race condition detector 2022-03-06 00:23:52 +01:00
francisco souza 3ba314a8f0 Makefile: run tests with the race detector
This is particularly useful with the parallel package.
2022-03-05 17:49:42 -05:00
Samuel Berthe a4fcd1694a adding benchmarks 2022-03-03 17:02:29 +01:00
Samuel Berthe 2566a935f2 adding lop.Map and lop.ForEach 2022-03-03 16:15:17 +01:00
Samuel Berthe 60559e145a adding index arguments to Map, ForEach and Reduce 2022-03-03 14:07:25 +01:00
Samuel Berthe 965ac37503 chore(coverage): adding code coverage to repo 2022-03-03 11:04:34 +01:00
Samuel Berthe 74b7c77702 Initial commit 2022-03-02 13:52:01 +01:00