12 个版本 (破坏性更新)
0.9.0 | 2021 年 12 月 3 日 |
---|---|
0.8.0 | 2021 年 11 月 30 日 |
0.7.0 | 2021 年 7 月 18 日 |
0.6.0 | 2021 年 2 月 21 日 |
0.2.0 | 2019 年 2 月 18 日 |
#954 在 算法 中
每月 1,097 次下载
用于 11 个 软件包(直接使用 4 个)
76KB
1.5K SLoC
Reductive
优化产品量化器的训练
训练优化产品量化器需要 LAPACK 实现。因此,Opq 和 GaussianOpq 量化器的训练是通过 opq-train
功能启用的。如果您想使用 Opq
或 GaussianOpq
,则必须启用此功能。
[dependencies]
reductive = { version = "0.7", features = ["opq-train"] }
这还需要添加一个链接 LAPACK 库的软件包作为依赖项,例如 accelerate-src
、intel-mkl-src
、openblas-src
或 netlib-src
。
运行测试
Linux
您可以使用 intel-mkl-test
功能在 Linux 上运行所有测试,包括优化产品量化器的测试。
$ cargo test --features intel-mkl-test
macOS
您可以使用 accelerate-test
功能在 macOS 上运行所有测试。
$ cargo test --features accelerate-test
多线程 OpenBLAS
reductive
使用 Rayon 并行化量化器训练。然而,多线程 OpenBLAS 已知与应用程序线程冲突。如果您使用 OpenBLAS,请确保禁用线程,例如通过将线程数设置为 1。
$ export OPENBLAS_NUM_THREADS=1
依赖项
~3–13MB
~204K SLoC