Pull requests / #1532
#1532 prefill: guard atomic::wait/notify_all so GCC 10 builds again (#1488)
open · @nekomario28 · 0 comentarios · En GitHub
Descripción
## Summary - `Stager` (from #1057) waits on `std::atomic<int>::wait` / `notify_all` — a C++20 **library** feature libstdc++ only ships from GCC 11. GCC 10 passes `CMAKE_CXX_STANDARD 20` yet fails at the three call sites in `src/prefill/prefill.cpp`, so Ubuntu 20.04 (focal, GCC 10 is the newest packaged compiler) and Debian 11 cannot build 0.1.40.2+. - Guard all three call sites with `__cpp_lib_atomic_wait`: toolchains without it take the pre-#1057 yield spin, and the `notify_all()` calls are skipped on that path — they only wake threads blocked in `wait()`, which cannot exist there. - Keeps the documented "GCC < 11 builds" configuration working; behavior on GCC 11+ is unchanged. Fixes #1488 (implements the reporter's suggested option 2; no minimum-version bump needed since the spin fallback restores the old behavior). ## Test plan - [x] `g++ -std=c++20 -fsyntax-only` on `prefill.cpp` via the HIP compat include path (wait path): clean - [x] same file with `#undef __cpp_lib_atomic_wait` injected after the includes (fallback path): clean - [ ] CI: HIP/CUDA build jobs green - [ ] Reporter's GCC 10 environment (Ubuntu 20.04): build reaches past `strata_prefill`
En el sitio
Enlaces a install, modelos, releases.