Pull requests / #3374
#3374 [Engine] verify_q8: fix the CUDA 12.0/12.1 build (host call to device-only __half_as_ushort)
open · @yudhanjaya · 0 comentarios · En GitHub
Setup & installServer & APIAMD / HIPNVIDIA / CUDA
Descripción
Fixes #3368 (also reported in the closed #2926). **What it changes:** `verify_q8` (the `STRATA_Q36_VERIFY=1` debug path in `src/qwen35/q36_engine.cu`) printed the half bits with `__half_as_ushort(...)`. That function is `__device__` only in CUDA 12.0/12.1, so nvcc rejects the call from host code and the whole engine fails to build. The bits are now copied out of the `__half` with `memcpy`. Same value, same output. **What it leaves alone:** only the debug print in that one function. No kernel, no default path, no other backend file is touched; the default path is byte-identical (the changed lines run only with `STRATA_Q36_VERIFY=1` and a mismatch). **How I checked:** nvcc 12.0.140, Ubuntu, `arch=compute_86` and `compute_89` (RTX 3060 + RTX 4080 SUPER): `./update.sh` rebuilt the engine without error and reports engine 0.1.45.3. **Not tested:** HIP and SYCL builds; running with `STRATA_Q36_VERIFY=1`; CUDA 12.1+ (the error is the same one in #2926).
En el sitio
Enlaces a install, modelos, releases.