bitsandbytes-cpu-fork 0.50.2.dev0__tar.gz → 0.50.2.dev4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/MANIFEST.in +11 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/PKG-INFO +98 -13
- bitsandbytes_cpu_fork-0.50.2.dev0/bitsandbytes_cpu_fork.egg-info/PKG-INFO → bitsandbytes_cpu_fork-0.50.2.dev4/README.md +421 -367
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/__init__.py +1 -1
- bitsandbytes_cpu_fork-0.50.2.dev4/bitsandbytes/_cpu_caps.py +110 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/triton/kernels_4bit.py +8 -2
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/cextension.py +42 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/bitsandbytes/cli.py +50 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/bitsandbytes/detect_cpu.py +189 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/bitsandbytes/disk_balancer.py +1276 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/bitsandbytes/efst.py +777 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/gdn_cpu.py +14 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/libbitsandbytes_cpu.dll +0 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/bitsandbytes/torch_cpu_kit.py +468 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/bitsandbytes/vcomp140.dll +0 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/bitsandbytes_cpu_cli.py +1012 -0
- bitsandbytes_cpu_fork-0.50.2.dev0/README.md → bitsandbytes_cpu_fork-0.50.2.dev4/bitsandbytes_cpu_fork.egg-info/PKG-INFO +127 -10
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes_cpu_fork.egg-info/SOURCES.txt +30 -9
- bitsandbytes_cpu_fork-0.50.2.dev4/bitsandbytes_cpu_fork.egg-info/entry_points.txt +3 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes_cpu_fork.egg-info/requires.txt +1 -2
- bitsandbytes_cpu_fork-0.50.2.dev4/bitsandbytes_cpu_fork.egg-info/top_level.txt +2 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/build_linux.sh +193 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/build_manual/build_manual.bat +234 -196
- bitsandbytes_cpu_fork-0.50.2.dev4/build_manual/export_avx512.def +39 -0
- bitsandbytes_cpu_fork-0.50.2.dev0/build_manual/export.def.bak → bitsandbytes_cpu_fork-0.50.2.dev4/build_manual/export_generic.def +13 -1
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/common.cuh +3 -2
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/cpu_cache.h +50 -3
- bitsandbytes_cpu_fork-0.50.2.dev4/csrc/cpu_features.h +86 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/cpu_gdn.cpp +5 -4
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/cpu_ops.cpp +93 -43
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/cpu_ops.h +3 -2
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/gemm_4bit.cu +3 -2
- bitsandbytes_cpu_fork-0.50.2.dev4/docs_cpu/API_REFERENCE.md +779 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/docs_cpu/API_REFERENCE_EN.md +778 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/docs_cpu/MOTION_BOUNDARY.md +89 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/docs_cpu/MOTION_BOUNDARY_EN.md +98 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/docs_cpu/QUICKSTART.md +946 -731
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/docs_cpu/QUICKSTART_EN.md +1002 -757
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/docs_cpu/TECHNICAL_GUIDE.md +613 -505
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/docs_cpu/TECHNICAL_GUIDE_EN.md +729 -602
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/docs_cpu/TECH_REPORT.md +758 -617
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/docs_cpu/TECH_REPORT_EN.md +809 -654
- bitsandbytes_cpu_fork-0.50.2.dev4/pyproject.toml +124 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/setup.py +96 -12
- bitsandbytes_cpu_fork-0.50.2.dev4/tests/test_cpu_e2e.py +201 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/tests/test_rmsnorm_fwd_cpu.py +198 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/tools/create_github_release.ps1 +169 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/tools/dump_signatures.py +64 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/tools/gen_api_reference.py +43 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/tools/publish.ps1 +99 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/tools/sector_carve.c +392 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/tools/sector_carve_gui.c +555 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/tools/sector_mirror.c +285 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/tools/sector_mirror_gui.c +530 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/tools/train_llm_sft.py +111 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/tools/verify_help_examples.py +213 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/tools/verify_linux_cli.sh +115 -0
- bitsandbytes_cpu_fork-0.50.2.dev4/tools/verify_train_release.py +90 -0
- bitsandbytes_cpu_fork-0.50.2.dev0/bitsandbytes_cpu_fork.egg-info/top_level.txt +0 -1
- bitsandbytes_cpu_fork-0.50.2.dev0/build_linux.sh +0 -108
- bitsandbytes_cpu_fork-0.50.2.dev0/build_manual/bench_amd.exe +0 -0
- bitsandbytes_cpu_fork-0.50.2.dev0/build_manual/selftest_cpu.exe +0 -0
- bitsandbytes_cpu_fork-0.50.2.dev0/csrc/cpu_ops.cpp.bak +0 -2973
- bitsandbytes_cpu_fork-0.50.2.dev0/csrc/cpu_ops.h.bak +0 -502
- bitsandbytes_cpu_fork-0.50.2.dev0/csrc/pythonInterface.cpp.bak +0 -923
- bitsandbytes_cpu_fork-0.50.2.dev0/csrc/test_cpu_cache.exe +0 -0
- bitsandbytes_cpu_fork-0.50.2.dev0/docs_cpu/__pycache__/check_docs.cpython-311.pyc +0 -0
- bitsandbytes_cpu_fork-0.50.2.dev0/pyproject.toml +0 -83
- bitsandbytes_cpu_fork-0.50.2.dev0/tests/test_cpu_e2e.py +0 -93
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/LICENSE +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/__main__.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/_ops.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/autograd/__init__.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/autograd/_functions.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/__init__.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/cpu/__init__.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/cpu/ops.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/cuda/__init__.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/cuda/ops.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/default/__init__.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/default/ops.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/hpu/__init__.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/hpu/ops.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/mps/__init__.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/mps/ops.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/triton/__init__.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/triton/kernels_8bit_quant.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/triton/kernels_optim.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/triton/ops.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/utils.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/xpu/__init__.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/backends/xpu/ops.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/consts.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/cuda_specs.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/diagnostics/__init__.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/diagnostics/cuda.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/diagnostics/main.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/diagnostics/utils.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/functional.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/nn/__init__.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/nn/modules.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/nn/parametrize.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/optim/__init__.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/optim/adagrad.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/optim/adam.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/optim/adamw.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/optim/ademamix.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/optim/lamb.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/optim/lars.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/optim/lion.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/optim/optimizer.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/optim/rmsprop.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/optim/sgd.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/py.typed +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes/utils.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/bitsandbytes_cpu_fork.egg-info/dependency_links.txt +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/build_manual/build_aggressive.log +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/build_manual/export.def +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/build_manual/selftest_win.bat +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/build_termux.sh +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/avx2_gemv_4bit.h +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/common.h +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/compat.cuh +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/compat_device.cuh +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/gemm_4bit_common.cuh +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/gemm_4bit_mma.cuh +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/gemm_4bit_simt.cu +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/gemm_4bit_simt.cuh +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/gemm_4bit_sm75.cu +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/gemm_4bit_sm75.cuh +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/gemm_4bit_sm80.cu +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/gemm_4bit_sm80.cuh +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/kernels.cu +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/kernels.cuh +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/ops.cu +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/ops.cuh +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/pythonInterface.cpp +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/test_avx2_gemv_4bit.cpp +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/test_cpu_cache.cpp +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/xpu_kernels.cpp +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/xpu_kernels.h +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/xpu_ops.cpp +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/csrc/xpu_ops.h +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/docs_cpu/check_docs.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/examples/compile_inference.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/examples/cpu/cpu_training.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/examples/int8_inference_huggingface.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/examples/xpu/benchmark_paged_memory.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/examples/xpu/paged_xpu_training.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/selftest_cpu.c +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/setup.cfg +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/tests/test_autograd.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/tests/test_cuda_setup_evaluator.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/tests/test_functional.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/tests/test_generation.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/tests/test_linear4bit.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/tests/test_linear8bitlt.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/tests/test_modules.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/tests/test_ops.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/tests/test_optim.py +0 -0
- {bitsandbytes_cpu_fork-0.50.2.dev0 → bitsandbytes_cpu_fork-0.50.2.dev4}/tests/test_parametrize.py +0 -0
|
@@ -17,6 +17,17 @@ graft csrc
|
|
|
17
17
|
graft build_manual
|
|
18
18
|
graft docs_cpu
|
|
19
19
|
graft examples
|
|
20
|
+
# tools/ holds gen_api_reference.py and verify_help_examples.py, which regenerate and
|
|
21
|
+
# check docs_cpu/API_REFERENCE*.md from the tables in bitsandbytes_cpu_cli.py. The
|
|
22
|
+
# generated documents ARE shipped, so leaving the generators out would hand users the
|
|
23
|
+
# output of scripts they cannot run.
|
|
24
|
+
graft tools
|
|
25
|
+
# ...but not the Windows binaries inside it. `graft tools` takes the whole directory,
|
|
26
|
+
# and the four sector_*.exe disaster-recovery tools were 0.65 MB of a 1.36 MB sdist --
|
|
27
|
+
# nearly half its weight, on every platform, for binaries that cannot run on two of the
|
|
28
|
+
# three. Their .c sources stay in the sdist and in the repository.
|
|
29
|
+
global-exclude *.exe
|
|
30
|
+
global-exclude *.exe.manifest
|
|
20
31
|
include build_linux.sh
|
|
21
32
|
include build_termux.sh
|
|
22
33
|
include selftest_cpu.c
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: bitsandbytes-cpu-fork
|
|
3
|
-
Version: 0.50.2.
|
|
3
|
+
Version: 0.50.2.dev4
|
|
4
4
|
Summary: bitsandbytes with a pure-CPU training backend (AVX2 / NEON): 8-bit optimizers, fused GDN, gemm_8bit, disk balancer. No GPU required.
|
|
5
5
|
License-Expression: MIT
|
|
6
6
|
Project-URL: repository, https://github.com/Ganyvnanoaa09-0906/bitsandbytes-CPU
|
|
@@ -22,14 +22,100 @@ Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
|
22
22
|
Requires-Python: >=3.10
|
|
23
23
|
Description-Content-Type: text/markdown
|
|
24
24
|
License-File: LICENSE
|
|
25
|
-
Requires-Dist: torch<3,>=2.4
|
|
26
25
|
Requires-Dist: numpy>=1.17
|
|
27
26
|
Requires-Dist: packaging>=20.9
|
|
27
|
+
Requires-Dist: psutil>=5.9
|
|
28
28
|
Provides-Extra: test
|
|
29
29
|
Requires-Dist: pytest~=8.3; extra == "test"
|
|
30
|
-
Requires-Dist: psutil>=5.9; extra == "test"
|
|
31
30
|
Dynamic: license-file
|
|
32
31
|
|
|
32
|
+
> **This is the CPU fork** — `bitsandbytes-cpu-fork`, not upstream `bitsandbytes`.
|
|
33
|
+
> It replaces the CUDA kernels with a pure-CPU backend (AVX2 on x86-64, NEON on ARM64):
|
|
34
|
+
> 8-bit optimizers, fused Gated DeltaNet, `gemm_8bit`, block-wise 4/8-bit quantisation.
|
|
35
|
+
> No GPU, no CUDA toolkit, no NVIDIA driver. Full guide:
|
|
36
|
+
> [`docs_cpu/QUICKSTART.md`](docs_cpu/QUICKSTART.md) (中文) ·
|
|
37
|
+
> [`docs_cpu/QUICKSTART_EN.md`](docs_cpu/QUICKSTART_EN.md).
|
|
38
|
+
|
|
39
|
+
## Install
|
|
40
|
+
|
|
41
|
+
**`torch` is deliberately not a dependency.** On PyPI the name `torch` resolves to the
|
|
42
|
+
CUDA build, so declaring it made this CPU-only library download roughly 2.5 GB of
|
|
43
|
+
`nvidia-*` wheels — cublas, cudnn, nccl, nvshmem and thirteen more — onto machines with
|
|
44
|
+
no NVIDIA device at all. Measured on a clean Ubuntu install. `install_requires` cannot
|
|
45
|
+
express "the CPU build", because that lives on a different index, so install it first:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
pip install torch --index-url https://download.pytorch.org/whl/cpu
|
|
49
|
+
pip install bitsandbytes-cpu-fork
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
**Linux wheels.** This release ships two Linux x86_64 wheels: a native one
|
|
53
|
+
(`manylinux_2_39`) with the OpenMP-parallel kernels, and a portable one
|
|
54
|
+
(`manylinux_2_17`, single-threaded) for older distributions. pip picks the best one
|
|
55
|
+
for the host automatically. If neither matches your glibc, install from the sdist
|
|
56
|
+
(it compiles `csrc` with the local toolchain via `build_linux.sh`).
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
### Windows
|
|
60
|
+
|
|
61
|
+
A wheel is published with the CPU library already built in, so no compiler and no
|
|
62
|
+
Visual C++ Redistributable are needed:
|
|
63
|
+
|
|
64
|
+
```bat
|
|
65
|
+
pip install bitsandbytes-cpu-fork
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Linux
|
|
69
|
+
|
|
70
|
+
Only the source distribution is published. `pip` builds it, and `setup.py` runs
|
|
71
|
+
`build_linux.sh` for you, so the library is compiled against your own glibc rather than
|
|
72
|
+
shipped prebuilt. That needs a C++ compiler with OpenMP:
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
sudo apt install g++ libomp-dev # Debian / Ubuntu
|
|
76
|
+
sudo dnf install gcc-c++ libomp-devel # Fedora / RHEL
|
|
77
|
+
sudo pacman -S gcc openmp # Arch
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
If the toolchain is missing the build **stops and names that command**, rather than
|
|
81
|
+
producing a wheel that installs cleanly and then fails at `import bitsandbytes`.
|
|
82
|
+
|
|
83
|
+
To build by hand instead, or to check the kernels without torch:
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
bash build_linux.sh --selftest
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### Verify the install
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
python -m bitsandbytes
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
### Then ask it what it can do
|
|
96
|
+
|
|
97
|
+
`pip` installs a `bitsandbytes-cpu` command (also available as `bnb-cpu`). It is the
|
|
98
|
+
reference for this fork: what the hardware is, whether the kernels load, and **how to
|
|
99
|
+
call every feature it adds** — each entry carries the exact call, and every Python
|
|
100
|
+
example in it is executed before release.
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
bitsandbytes-cpu detect # CPU model, cores, SIMD, RAM, recommended thread count
|
|
104
|
+
bitsandbytes-cpu selftest # runs a 4-bit layer, an 8-bit optimizer step, the GDN kernel
|
|
105
|
+
bitsandbytes-cpu help # the whole reference
|
|
106
|
+
bitsandbytes-cpu help 8bitopt # one section: the 8-bit optimizer
|
|
107
|
+
bitsandbytes-cpu help 4bit # one section: 4-bit layers on a CPU
|
|
108
|
+
bitsandbytes-cpu help kernels # one section: the fused kernels, called directly
|
|
109
|
+
bitsandbytes-cpu doctor # which .dll/.so will load, and which symbols it has
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
Section keys: `intro start 4bit qlora 8bitopt kernels toolkit threads memory gdn disks
|
|
113
|
+
layers optim functional notes`. The same tables are published as
|
|
114
|
+
[`docs_cpu/API_REFERENCE.md`](docs_cpu/API_REFERENCE.md)
|
|
115
|
+
([English](docs_cpu/API_REFERENCE_EN.md)).
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
33
119
|
<p align="center"><img src="https://avatars.githubusercontent.com/u/175231607?s=200&v=4" alt=""></p>
|
|
34
120
|
<h1 align="center">bitsandbytes</h1>
|
|
35
121
|
<p align="center">
|
|
@@ -103,7 +189,7 @@ bitsandbytes has the following minimum requirements for all platforms:
|
|
|
103
189
|
<td>🟥 AMD GPU <br><code>cuda</code></td>
|
|
104
190
|
<td>
|
|
105
191
|
CDNA: gfx908, gfx90a, gfx942, gfx950, gfx1250<br>
|
|
106
|
-
RDNA: gfx103X, gfx110X, gfx115X, gfx120X
|
|
192
|
+
RDNA: gfx101X, gfx103X, gfx110X, gfx115X, gfx120X
|
|
107
193
|
</td>
|
|
108
194
|
<td>✅</td>
|
|
109
195
|
<td>✅</td>
|
|
@@ -168,7 +254,8 @@ bitsandbytes has the following minimum requirements for all platforms:
|
|
|
168
254
|
<td></td>
|
|
169
255
|
<td>🟥 AMD GPU <br><code>cuda</code></td>
|
|
170
256
|
<td>
|
|
171
|
-
|
|
257
|
+
CDNA: gfx908, gfx90a<br>
|
|
258
|
+
RDNA: gfx101X, gfx103X, gfx110X, gfx115X, gfx120X
|
|
172
259
|
</td>
|
|
173
260
|
<td>✅</td>
|
|
174
261
|
<td>✅</td>
|
|
@@ -238,20 +325,18 @@ extensions make pure-CPU LoRA / quantization / diffusion training practical.
|
|
|
238
325
|
|
|
239
326
|
### Install (Windows, no compiler needed)
|
|
240
327
|
|
|
241
|
-
The wheel bundles the prebuilt CPU kernel and its OpenMP runtime, so nothing has to
|
|
242
|
-
be built after installing:
|
|
243
|
-
|
|
244
328
|
```bash
|
|
245
|
-
pip install
|
|
329
|
+
pip install bitsandbytes-cpu-fork
|
|
246
330
|
```
|
|
247
331
|
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
332
|
+
The wheel bundles the prebuilt CPU kernel and its OpenMP runtime, so nothing has to
|
|
333
|
+
be built after installing; `pip` pulls `torch` and `numpy` itself. One wheel covers
|
|
334
|
+
every Python 3 version on 64-bit Windows. The import name is unchanged, so existing
|
|
335
|
+
code and the Transformers / PEFT / Diffusers integrations keep working as-is:
|
|
251
336
|
|
|
252
337
|
```python
|
|
253
338
|
import bitsandbytes as bnb # the fork, not upstream
|
|
254
|
-
print(bnb.__version__) # 0.50.2.
|
|
339
|
+
print(bnb.__version__) # 0.50.2.dev4
|
|
255
340
|
```
|
|
256
341
|
|
|
257
342
|
Building from source instead (any platform) is described in
|