You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+3Lines changed: 3 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -184,6 +184,8 @@ make -f Makefile.windows cuda NATIVE_CPU=OFF JOBS=16
184
184
185
185
The Windows script configures `build/windows-cuda-release` by default and builds `audiocpp_cli`. CUDA presets enable CUDA, CUDA graphs, OpenMP, Ninja, `/utf-8`, `/EHsc`, MSVC OpenMP SIMD support with `/openmp:experimental`, and native CPU optimization by default. The CPU preset uses the same MSVC/Ninja/OpenMP setup without requiring CUDA. CUDA presets auto-detect the local GPU CUDA architecture when `nvidia-smi` is available. Pass `-NativeCpu OFF` or `NATIVE_CPU=OFF` to use portable CPU kernels.
186
186
187
+
For Windows prebuilt release zips and CPU compatibility profiles, see [docs/windows_build.md](docs/windows_build.md).
188
+
187
189
Useful variants:
188
190
189
191
```powershell
@@ -588,6 +590,7 @@ The Python-reference side of these tests usually requires more time-consuming se
588
590
## Projects
589
591
590
592
-[Pocket TTS Browser Engine](https://github.com/jjmlovesgit/pocket-tts-browser-engine) uses audio.cpp to bring fully local PocketTTS voices into Chrome and Edge through the browser TTS API.
593
+
-[GuideAnts](https://github.com/Elumenotion/GuideAnts) uses audio.cpp as the default local AI stack path for basic ASR and TTS, with planned reusable skills for audio.cpp scenarios and model configurations.
| Fast |`-CpuArch native`| You build for your own machine or machines with very similar CPUs. | Fastest, but may use AVX512 or other host-specific instructions. |
44
+
| Balance |`-CpuArch avx2`| You want a good default for most modern Windows PCs. | Usually close to native on many systems, more compatible than native. |
45
+
| Portable |`-CpuArch baseline`| You want the broadest compatibility. | Slowest, avoids AVX/AVX2/AVX512 selection. |
46
+
47
+
`-NativeCpu ON/OFF` is still available for compatibility, but release packaging should prefer `-CpuArch`.
48
+
49
+
## Prebuilt Release Zips
50
+
51
+
Use the package script to build binaries, copy runtime DLLs, generate a package README, and create zips:
52
+
53
+
```powershell
54
+
.\scripts\package_windows_prebuilt.ps1 -Package all -Profile balance -Jobs 16
55
+
```
56
+
57
+
For CUDA packages, the package script uses a multi-architecture CUDA default derived from the installed CUDA Toolkit instead of the local GPU auto-detect path. This makes release zips more suitable for unknown Windows machines. Pass `-CudaArchitectures auto` only for a local machine-specific package.
58
+
59
+
Package choices:
60
+
61
+
```powershell
62
+
.\scripts\package_windows_prebuilt.ps1 -Package cpu -Profile balance -Jobs 16
63
+
.\scripts\package_windows_prebuilt.ps1 -Package cuda -Profile balance -Jobs 16
64
+
```
65
+
66
+
Release profiles:
67
+
68
+
```powershell
69
+
.\scripts\package_windows_prebuilt.ps1 -Package all -Profile fast -Jobs 16
70
+
.\scripts\package_windows_prebuilt.ps1 -Package all -Profile balance -Jobs 16
71
+
.\scripts\package_windows_prebuilt.ps1 -Package all -Profile portable -Jobs 16
72
+
```
73
+
74
+
Generated zips are written under `build/prebuilt`:
75
+
76
+
```text
77
+
build/prebuilt/audiocpp-windows-cpu-balance.zip
78
+
build/prebuilt/audiocpp-windows-cuda-balance.zip
79
+
```
80
+
81
+
## Choosing a Release Profile
82
+
83
+
For public releases, `balance` is the recommended default. It avoids native CPU selection while still using AVX2-class kernels for reasonable performance on modern Windows machines.
84
+
85
+
Use `fast` only when you are comfortable with a machine-specific package. If the build machine has AVX512, the resulting binary may require AVX512.
86
+
87
+
Use `portable` when compatibility matters more than speed. It disables llamafile SGEMM in addition to using the baseline CPU arch, because that is the safest path for unknown user machines.
88
+
89
+
## Runtime Requirements for Users
90
+
91
+
CPU package:
92
+
93
+
- 64-bit Windows
94
+
- Model files downloaded separately
95
+
96
+
CUDA package:
97
+
98
+
- 64-bit Windows
99
+
- NVIDIA GPU with compute capability 7.5 or newer
100
+
- NVIDIA driver 580 or newer
101
+
- Model files downloaded separately
102
+
103
+
The package script copies MSVC/OpenMP runtime DLLs into both packages. The CUDA package also copies the CUDA DLLs used by this build, so users should not need to install the CUDA Toolkit or Visual Studio Build Tools.
104
+
105
+
The CUDA package is intended for RTX 20/30/40/50 series GPUs and similar NVIDIA datacenter GPUs. Older GPUs such as GTX 10-series Pascal cards or V100-class Volta cards are not covered by the CUDA 13 package; use the CPU package or build a separate package with an older CUDA Toolkit if those GPUs must be supported.
0 commit comments