mirror of
https://ghfast.top/https://github.com/aeroxw/tick-stock-panel.git
synced 2026-09-12 16:44:15 +08:00
fix(packaging): support legacy Polars CPUs
This commit is contained in:
@@ -93,13 +93,13 @@ AUTH_PASSWORD=你的密码 # 至少 6 位;仅首次生效,已设过则不覆
|
||||
|
||||
---
|
||||
|
||||
## Docker 构建 Extras(可选)
|
||||
## 后端依赖 Extras(可选)
|
||||
|
||||
```ini
|
||||
BACKEND_EXTRAS= # 留空默认;legacy-cpu 兼容老 CPU
|
||||
```
|
||||
|
||||
老 VPS 无 AVX2/FMA 支持时设为 `legacy-cpu`,会给 Polars 切到 `rtcompat` 运行时;需回测则 `legacy-cpu backtest`。详见 [deployment.md → 老 CPU 兼容](./deployment.md#老-cpu-兼容avx2fma-缺失)。
|
||||
老 CPU 无 AVX2/FMA 支持时设为 `legacy-cpu`,会给 Polars 切到 `rtcompat` 运行时;需回测则 `legacy-cpu backtest`。Docker 构建和 `./dev.sh` / `.\dev.ps1` 都会读取此值并同步依赖。详见 [deployment.md → 老 CPU 兼容](./deployment.md#老-cpu-兼容avx2fma-缺失)。
|
||||
|
||||
---
|
||||
|
||||
|
||||
+6
-1
@@ -27,6 +27,8 @@ cp .env.example .env # 按需填 TICKFLOW_API_KEY(留空 = None 模式)
|
||||
```bash
|
||||
# 后端
|
||||
cd backend && uv sync --extra backtest # 含回测依赖
|
||||
# 老 CPU: uv sync --extra legacy-cpu
|
||||
# 老 CPU + 回测: uv sync --extra legacy-cpu --extra backtest
|
||||
uv run uvicorn app.main:app --reload --port 3018
|
||||
|
||||
# 前端
|
||||
@@ -69,13 +71,16 @@ Fork 本仓库后,手动触发 [Release 打包工作流](https://github.com/shy3
|
||||
如果运行时报 `avx2`/`fma` 缺失,或进程 `exit 132`,说明 CPU 不支持 AVX2 指令集(常见于老 VPS)。解决:
|
||||
|
||||
- **桌面客户端**:安装包已内置兼容内核,新老 CPU 通吃
|
||||
- **Docker / 源码**:在 `.env` 打开 `BACKEND_EXTRAS=legacy-cpu` 后重建,会给 Polars 切到 `rtcompat` 运行时
|
||||
- **Dev 源码启动**:在根目录 `.env` 设置后运行 `./dev.sh` 或 Windows 的 `.\dev.ps1`;即使已有 `.venv`,启动器也会同步兼容内核
|
||||
- **Docker**:在根目录 `.env` 设置后执行 `docker compose up --build`
|
||||
|
||||
```ini
|
||||
BACKEND_EXTRAS=legacy-cpu # 兼容老 CPU
|
||||
BACKEND_EXTRAS=legacy-cpu backtest # 兼容老 CPU + 回测依赖
|
||||
```
|
||||
|
||||
手动启动源码时,也可以在 `backend/` 目录直接执行 `uv sync --extra legacy-cpu`。不要设置 `POLARS_SKIP_CPU_CHECK`,它只会隐藏警告,实际执行不支持的指令时仍可能崩溃。
|
||||
|
||||
### 回测依赖说明
|
||||
|
||||
vectorbt → numba 体积较大,作为可选 extras(`uv sync --extra backtest`)。macOS / Intel 无预构建 wheel 时需 `brew install cmake` 现场编译。
|
||||
|
||||
Reference in New Issue
Block a user