[CMake] Potentially duplicated srcs in llama_runner build
Open
@larryliu0820 is already working on this.
Since May 5, 2025.
good first issue
module: build/install
triaged
- Dominant language
- Python
- Stars
- 5k
- Forks
- 1.2k
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 581
Description
🐛 Describe the bug
For example
set(_llama_runner__srcs
examples/models/llama/runner/runner.cpp
examples/models/llama/tokenizer/llama_tiktoken.cpp
extension/evalue_util/print_evalue.cpp
extension/llm/runner/text_decoder_runner.cpp
extension/llm/runner/text_prefiller.cpp
extension/llm/sampler/sampler.cpp <--------------------
extension/llm/tokenizers/src/bpe_tokenizer_base.cpp
extension/llm/tokenizers/src/hf_tokenizer.cpp
extension/llm/tokenizers/src/llama2c_tokenizer.cpp
extension/llm/tokenizers/src/pre_tokenizer.cpp
extension/llm/tokenizers/src/re2_regex.cpp
extension/llm/tokenizers/src/regex.cpp
extension/llm/tokenizers/src/tiktoken.cpp
extension/llm/tokenizers/src/token_decoder.cpp
extension/llm/tokenizers/third-party/llama.cpp-unicode/src/unicode-data.cpp
extension/llm/tokenizers/third-party/llama.cpp-unicode/src/unicode.cpp
extension/tensor/tensor_ptr.cpp
extension/tensor/tensor_ptr_maker.cpp
)
set(_extension_llm_runner__srcs
extension/data_loader/file_data_loader.cpp
extension/data_loader/mmap_data_loader.cpp
extension/llm/runner/text_decoder_runner.cpp
extension/llm/runner/text_prefiller.cpp
extension/llm/sampler/sampler.cpp <------------ again!
extension/tensor/tensor_ptr.cpp
extension/tensor/tensor_ptr_maker.cpp
)
and even
set(_llava_runner__srcs
"${CMAKE_CURRENT_SOURCE_DIR}/llava_runner.cpp"
"${EXECUTORCH_ROOT}/extension/llm/sampler/sampler.cpp" <-----
"${EXECUTORCH_ROOT}/extension/llm/tokenizers/src/llama2c_tokenizer.cpp"
)
Note that we might build llava and llama runner into the same target, for example here
https://github.com/pytorch/executorch/blob/306430825c2ffe2061221a197904e2f79e628998/extension/android/CMakeLists.txt#L137-L141
Versions
main 306430825c2ffe2061221a197904e2f79e628998
cc @larryliu0820 @jathu
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.