Привет! С текущими настройками лимитов новый rocm[1] никогда не соберется, даже под x86_64. Крутить что во флагах сборки там бесполезно, т.к. принцип сам принцип сборки потребляет много памяти - clang собирает объектный код с байткодом для всех поддерживаемых gpu, а потом запускает lld который все это часами линкует с pgo/lto. поэтому нужно просто дать больше памяти и cpu на сборочнице + убрать timeout на сборку (или хотя бы увеличить его до 5 часов). Пока текущая ситуация это blocker как для обновления пакетов которые уже в сизифе, так и для добавления новых (например rocblas и всего хозяйства для работы pytorch) 1. https://packages.altlinux.org/en/tasks/412669/
Результат проверки актуальности Состояние: Лимиты подняты: llvm-rocm и тяжёлые rocm-подзадания собраны (built) на x86_64 и aarch64 в задании 412669. Рекомендация: закрыть (FIXED)
на самом деле не лимиты подняты, а Глебом проведены работы по оптимизации сборочных серверов.
Что именно и какие оптимизации сделаны мне неведомо, поэтому данный баг будет закрыт, когда нужные пакеты соберутся (именно rocblas или rccl). В таске ссылке этих пакетов нет, т.к. я их убрал из-за проблем, описанных здесь (см. https://git.altlinux.org/tasks/402972/logs/events.11.1.log)
г-на замдиректора, нужна ваша резолюция, как собирать это дальше https://github.com/ROCm/TheRock/blob/main/docs/environment_setup_guide.md ... Resource Utilization ROCm is a very resource hungry project to build. The compiler/amd-llvm component alone involves linking multi-gigabyte binaries that can consume 4-8 GB of RAM per link job, and LLVM's configure+bootstrap phase is especially memory-intensive. On systems with a high core:memory ratio (e.g., 16+ cores with 32 GB RAM), Ninja's default nproc-level parallelism will frequently exceed available memory and get killed by systemd-oomd or the kernel OOM killer. Disk space You will need sufficient storage (200GB+) for a full source build. This scales with the number of GPU targets (THEROCK_AMDGPU_FAMILIES) and any downstream framework builds (e.g. PyTorch). Fetching sources alone (via fetch_sources.py) requires roughly 30GB, before any build output. ... Choosing the right -j for your system RAM Cores Recommended -j Notes 16 GB 8+ -j4 Link steps will saturate RAM 32 GB 16 -j8 Leaves headroom for system + linker 32 GB 20+ -j8 to -j10 More cores than RAM can safely serve 64 GB+ any -j16 or higher Link jobs still peak at ~8 GB each также вся сборка therock основана на git submodules, которые сборочница не поддерживает. Ну а держать это в виде сотни тарболлов то еще извращение. Предлагаю вам нанять студента за еду, бомжа за бутылку, за бесплатно это никто в дистрибутив собирать as-is не будет.