mirror of
https://github.com/ggml-org/llama.cpp.git
synced 2026-09-17 20:31:47 +02:00
tests : add fusion baseline README and broaden fusion CI triggers (#28893)
* tests : add README for updating the per-backend fusion baselines Assisted-by: pi:llama.cpp/Qwen3.8-27B * ci : trigger fusion on changes to test-llama-archs.cpp and src/models the dummy models and their architectures drive the fusion baselines, so a change to either can alter the per-fusion counters and should re-run the fusion job. Assisted-by: pi:llama.cpp/Qwen3.8-27B * tests : merge the fusion build commands in the README assisted-by: pi:llama.cpp/Qwen3.8-27B * pi : require explicit permission before posting PR/issue comments assisted-by: pi:llama.cpp/Qwen3.8-27B
This commit is contained in:
@@ -9,7 +9,9 @@ on:
|
|||||||
'.github/workflows/fusion.yml',
|
'.github/workflows/fusion.yml',
|
||||||
'ggml/**',
|
'ggml/**',
|
||||||
'tests/fusion/**',
|
'tests/fusion/**',
|
||||||
'tests/test-fusion.cpp'
|
'tests/test-fusion.cpp',
|
||||||
|
'tests/test-llama-archs.cpp',
|
||||||
|
'src/models/**'
|
||||||
]
|
]
|
||||||
|
|
||||||
pull_request:
|
pull_request:
|
||||||
@@ -18,7 +20,9 @@ on:
|
|||||||
'.github/workflows/fusion.yml',
|
'.github/workflows/fusion.yml',
|
||||||
'ggml/**',
|
'ggml/**',
|
||||||
'tests/fusion/**',
|
'tests/fusion/**',
|
||||||
'tests/test-fusion.cpp'
|
'tests/test-fusion.cpp',
|
||||||
|
'tests/test-llama-archs.cpp',
|
||||||
|
'src/models/**'
|
||||||
]
|
]
|
||||||
|
|
||||||
concurrency:
|
concurrency:
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ Pull requests (PRs):
|
|||||||
- For the AI usage disclosure section, write "YES. pi:llama.cpp/[MODEL]"
|
- For the AI usage disclosure section, write "YES. pi:llama.cpp/[MODEL]"
|
||||||
- If `PI_MODEL_NAME` env var is not set, ask the user to tell you what model was used and write it in place of [MODEL]
|
- If `PI_MODEL_NAME` env var is not set, ask the user to tell you what model was used and write it in place of [MODEL]
|
||||||
- Always create the pull requests in draft mode
|
- Always create the pull requests in draft mode
|
||||||
|
- Never reply to review comments or post comments on issues/PRs without explicit permission from the user
|
||||||
|
|
||||||
Commits:
|
Commits:
|
||||||
- On every commit that you make, include a "Assisted-by: pi:llama.cpp/[MODEL]" tag
|
- On every commit that you make, include a "Assisted-by: pi:llama.cpp/[MODEL]" tag
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
# Fusion baselines
|
||||||
|
|
||||||
|
Per-device baselines for `test-fusion`, one CSV per backend (e.g. `MTL.csv`). Rows are
|
||||||
|
`arch,moe,mode,label,count`. Regenerate a CSV whenever fusion patterns change.
|
||||||
|
|
||||||
|
## Update a baseline
|
||||||
|
|
||||||
|
```sh
|
||||||
|
cmake -B build -DCMAKE_BUILD_TYPE=Release -DGGML_METAL=ON # enable the target backend
|
||||||
|
cmake --build build --config Release --target test-llama-archs --target test-fusion -j
|
||||||
|
|
||||||
|
rm -rf build-ci-models && mkdir -p build-ci-models
|
||||||
|
./build/bin/test-llama-archs -o build-ci-models
|
||||||
|
|
||||||
|
./build/bin/test-fusion --models build-ci-models --device MTL0 --record MTL.csv
|
||||||
|
```
|
||||||
|
|
||||||
|
## Validate
|
||||||
|
|
||||||
|
```sh
|
||||||
|
./build/bin/test-fusion --models build-ci-models --device MTL0 --check MTL.csv
|
||||||
|
```
|
||||||
|
|
||||||
|
Non-zero exit means a row differs from the baseline. Use `--model FILE` to run a single
|
||||||
|
architecture. Note `--check` only sees present rows — a fusion that stops matching is not
|
||||||
|
reported, so diff the recorded CSV to catch removed patterns.
|
||||||
Reference in New Issue
Block a user