Updated CK/AITER Cmake Build - #666
Conversation
Claude WalkthroughIntent. The CK/AITER fused-attention kernel source-build ( Key changes.
Walkthrough. Both source-build branches now write their outputs to a single canonical location ( The Testing. No tests added — this is a pure build-system change. Verification is implicit: an incremental Notes for reviewers.
Generated by Claude. To request a code review, comment |
|
Reviewed the CK/AITER cmake refactor that moves the QoLA / CK-JIT kernel build from configure-time Verdict: Approach is sound. Single-file diff, no behavior change for the prebuilt / Findings: one minor point posted inline on the CK-JIT Copyright headers: OK — the touched file's AMD line is already |
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
|
That is nice improvement. Indeed, a lot of script driven builds run at configure stage. One concern - will moving it to build run different modules/submodules building in parallel? It may be speed improvement but on the other hand can result in build failure due to OOM |
Are you referring to the installation of AOTriton? That is indeed a risk since it'll launch in parallel with whatever other aspects of the |
| # turn re-triggers the custom command below via its DEPENDS. | ||
| set(__CK_KEY_FILE "${__CK_KERNELS_DIR}/ck_build_key.txt") | ||
| file(GENERATE OUTPUT "${__CK_KEY_FILE}" | ||
| CONTENT "jit=${__USE_CK_JIT}\narchs=${GPU_ARCHS_STR}\nbf16=${CK_FUSED_ATTN_FLOAT_TO_BFLOAT16_DEFAULT}\nextra=$ENV{CK_JIT_EXTRA_CACHE_KEY}\naiter=${AITER_SHA}\n") |
There was a problem hiding this comment.
If make __USE_CK_JIT a condition for rebuild, it makes sense to add NVTE_CK_JIT_DIR, NVTE_AITER_SOURCE_DIR, etc. Or may use different approach: changing of envs that affect build command requires configure. Build runs building based on files content like regular make.
Also, build should depend on QoLA files and AITER hash
Description
Updated the cmake build for CK/AITER FA backend to include QoLA/ck-jit builds as a custom command for proper inclusion in build graph, including proper dependency graphing and caching.
Fixes # (issue)
Type of change
Changes
Please list the changes introduced in this PR:
Checklist: