Тестирование LLVM с подсветкой: возможно ли настроить количество потоков через `lit.cfg`? - PullRequest
0 голосов
/ 29 июня 2018

Интересно, можно ли настроить количество потоков для тестирования в файле lit.cfg.

lit предлагает флаг командной строки для указания количества потоков: llvm/utils/lit/lit.py -j1 <test directory>

Однако я не уверен, как это сделать в файле lit.cfg. Я хочу принудительно запустить все тесты в подкаталоге с -j1 - не уверен, возможно ли это.

Редактировать: для справки, я работаю над Swift codebase , который имеет большой набор тестов (4000+ тестов) с несколькими подкаталогами тестов. Я хочу запустить только один подкаталог с -j1, а остальные с числом потоков по умолчанию (-j12 для моей машины).

1 Ответ

0 голосов
/ 03 июля 2018

Я тоже давно об этом думал, но не думаю, что есть такой из-за этой строки здесь . Обычно время компиляции основного проекта превосходит lit время выполнения тестов.

Это легко изменить, но я бы посоветовал использовать конфигурацию вашей сборки для этого (например, make или cmake). Таким образом, make test может выполнить что-то вроде lit -j $(nproc) внизу.

Редактировать (после обновления OP):

Я не работал с репо swift, но, возможно, вы могли бы взломать свой путь. Одна вещь, которую я мог видеть, это то, что вы можете влиять на LIT_ARGS cmake переменную с помощью параметров, которые вы хотите, добавив к нему.

Теперь для принудительного выполнения одного процесса для определенного каталога вы можете добавить lit.local.cfg, который устанавливает флаг singleProcess . Кажется, это переопределяет многопоточное выполнение:

config.singleProcess = True
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...