Commit Graph

3 Commits

Author SHA1 Message Date
Stary 79266ffb4d
build: add memory-aware compile/link parallelism (#1718)
* build: add memory-aware compile/link parallelism

Auto-detect available memory and CPU cores at configure time to calculate
safe parallel job limits. With Ninja generator, creates separate job pools
for compilation (~1.5GB/job) and linking (~4GB/job) so high-core machines
can compile fast without OOM during linking.

Changes:
- New mooncake-common/limit_jobs.cmake module
- Include from common.cmake for all build modes
- Switch Dockerfile and CI workflows to Ninja
- User can override via -DPARALLEL_COMPILE_JOBS / -DPARALLEL_LINK_JOBS

Signed-off-by: staryxchen <staryxchen@tencent.com>

* fix(ci): remove sudo from Ascend CI install step

The Ascend CI job runs inside a Docker container as root, where sudo
is not available. This caused exit code 127 after a successful build.

Signed-off-by: staryxchen <staryxchen@tencent.com>

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Signed-off-by: staryxchen <staryxchen@tencent.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 22:33:21 +08:00
TzZtzt 41b1969e47
[Docker] fix(docker): add libcurl4 dependency to Dockerfiles (#1619)
Signed-off-by: TzZtzt <trafalgarz@outlook.com>
2026-03-06 13:58:53 +08:00
Teng Ma 1abb593ad8
[Build] update dockerfile and install mooncake from scratch (#1214)
* [Misc] add new dockerfile

* fix ci

* Add musa.Dockerfile

Signed-off-by: Xiaodong Ye <xiaodong.ye@mthreads.com>

* Update docker/mooncake.Dockerfile

* Apply suggestions from code review

* Fix Dockerfile issues: add submodule init, remove duplicate pip install, add newline

- Add missing git submodule update command in mooncake.Dockerfile
- Remove duplicate pip install command in mooncake.Dockerfile (was installing twice)
- Add missing newline at end of musa.Dockerfile

* Simplify Dockerfiles by removing unimportant steps

Removed unnecessary steps to streamline the build process:
- Remove separate pip upgrade (dependencies.sh handles this)
- Remove git submodule init (not needed for Docker builds from source)
- Remove bash -x verbose flag (reduces noise)
- Remove LD_LIBRARY_PATH setting (cmake install handles this)
- Remove venv creation in runtime (install directly to system Python)
- Remove WORKDIR /workspace in runtime (not needed)
- Remove unused packages: python3-distutils, python3-venv, python3-setuptools, curl, netcat
- Remove redundant pip upgrade in musa runtime

This reduces image size and build time while maintaining functionality.

* reduce size

---------

Signed-off-by: Xiaodong Ye <xiaodong.ye@mthreads.com>
Co-authored-by: Xiaodong Ye <xiaodong.ye@mthreads.com>
2026-02-25 17:24:35 +08:00