aboutsummaryrefslogtreecommitdiffstats
path: root/build/scripts/link_exe.py
Commit message (Collapse)AuthorAgeFilesLines
* Fix separator in CUDA_ARCHITECTURESkickbutt2024-01-241-2/+3
|
* Use `CUDA_ARCHITECTURES` flag to prune architectureskickbutt2024-01-241-0/+56
| | | | | | | | | | | | | | | | | * Добавляю переменную `CUDA_ARCHITECTURES`, в которых указываю, для каких архитектур оставлять device-код в гпушных либах CUDA / cuDNN * Выставляю для неё разумные дефолты для тех архитектур, которые потенциально страдают от избыточного размера кода (сейчас это 11.4, потом можно будет расширить для других архитектур) * Пробрасываю эту переменную и путь до бинарника `nvprune` в скрипт линковки * Ищу и пруню гпушные либы Как проверить, что работает: * например, успешно собирается `ya make --build=release -DTENSORFLOW_WITH_CUDA -DCUDA_VERSION=11.4 -DCUDNN_VERSION=8.0.5 -DCUDA_ARCHITECTURES=sm_70 yweb/webdaemons/ocrdaemon` (с дефолтным `-DCUDA_ARCHITECTURES` падает по relocation overflow) * елси хочется посмотреть на изменение размеров, то можно собрать `ya make ml/zeliboba/libs/ynmt_lm/score/bin/ --build=relwithdebinfo -DCUDA_VERSION=11.4 -DCUDNN_VERSION=8.0.5` один раз с дефолтным значением, другой раз с `-DCUDA_ARCHITECTURES=sm_70,sm_80,compute_80` - размер бинаря уменьшится Особенности: * ~~Сейчас дефолт для каждой новой версии куды содержит в себе тупо все поддерживаемые архитектуры. Имеет смысл его порезать до чего-то более разумного~~ - порезал * Обход аргументов в обратном порядке сделан для того, чтобы эмулировать поведение линкера (для линкера важен порядок пробрасывания между либами для линковки и директориями, в которых их нужно искать) * ~~Сейчас артефакты прунинга кладутся рядом с оригинальными либами; возможно, стоит их складывать в отдельное место в build-директории, но я пока не разобрался как это делать; буду рад, если кто-то подскажет~~ уже неактуально - кладу в build_root * nvprune имеет свойство мусорить варнингом в stderr, когда прунит `libcudart_static.a` (это норма - там нет кода, который можно было бы попрунить); как вариант можно закостылить и не прунить `libcudart_static.a`, но я открыт к предложениям
* (no commit message)pg2023-11-301-6/+5
|
* `build/scripts` ya style --pyiaz16072023-11-301-2/+2
|
* (no commit message)pg2023-08-301-2/+4
|
* support explicit pic/piepg2023-08-171-1/+5
|
* merge partial clang16 supportpg2023-08-161-0/+3
|
* Add start-end markers of response file to link cmdtekireeva2023-06-151-0/+3
|
* add ymake export to ydbalexv-smirnov2023-06-131-0/+186
|
* Revert ymake build from ydb oss exportalexv-smirnov2023-03-281-174/+0
|
* add library/cpp/actors, ymake build to ydb oss exportalexv-smirnov2023-03-151-0/+174
|
* Let cmake export determine which build/scripts are mandatorythegeorg2022-08-191-130/+0
|
* Fix missing dep in build scriptssvidyuk2022-06-011-1/+1
| | | | ref:e2d05ce38be56e0783b84372504682f58fbb3c5c
* intermediate changesarcadia-devtools2022-03-171-0/+8
| | | | ref:4b4acf4c3b9e1212fd3c6ed880d7d81b5da0b227
* intermediate changesarcadia-devtools2022-03-151-1/+1
| | | | ref:ca7a95e8c9a9d780f96497136a152091d54e61b5
* intermediate changesarcadia-devtools2022-03-111-6/+46
| | | | ref:f1a76bb520860c96f863dde2f5dfa5e45b9ea67b
* Restoring authorship annotation for <tekireeva@yandex-team.ru>. Commit 2 of 2.tekireeva2022-02-101-11/+11
|
* Restoring authorship annotation for <tekireeva@yandex-team.ru>. Commit 1 of 2.tekireeva2022-02-101-11/+11
|
* Restoring authorship annotation for Aleksandr <ivansduck@gmail.com>. Commit ↵Aleksandr2022-02-101-27/+27
| | | | 2 of 2.
* Restoring authorship annotation for Aleksandr <ivansduck@gmail.com>. Commit ↵Aleksandr2022-02-101-27/+27
| | | | 1 of 2.
* Restoring authorship annotation for <spreis@yandex-team.ru>. Commit 2 of 2.spreis2022-02-101-1/+1
|
* Restoring authorship annotation for <spreis@yandex-team.ru>. Commit 1 of 2.spreis2022-02-101-1/+1
|
* Restoring authorship annotation for <workfork@yandex-team.ru>. Commit 2 of 2.workfork2022-02-101-6/+6
|
* Restoring authorship annotation for <workfork@yandex-team.ru>. Commit 1 of 2.workfork2022-02-101-6/+6
|
* Restoring authorship annotation for <dvshkurko@yandex-team.ru>. Commit 2 of 2.dvshkurko2022-02-101-18/+18
|
* Restoring authorship annotation for <dvshkurko@yandex-team.ru>. Commit 1 of 2.dvshkurko2022-02-101-18/+18
|
* Restoring authorship annotation for <somov@yandex-team.ru>. Commit 2 of 2.somov2022-02-101-5/+5
|
* Restoring authorship annotation for <somov@yandex-team.ru>. Commit 1 of 2.somov2022-02-101-5/+5
|
* Restoring authorship annotation for Mikhail Borisov ↵Mikhail Borisov2022-02-101-14/+14
| | | | <borisov.mikhail@gmail.com>. Commit 2 of 2.
* Restoring authorship annotation for Mikhail Borisov ↵Mikhail Borisov2022-02-101-14/+14
| | | | <borisov.mikhail@gmail.com>. Commit 1 of 2.
* intermediate changesDevtools Arcadia2022-02-071-0/+82
ref:cde9a383711a11544ce7e107a78147fb96cc4029