ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
23 июля
1234750 Топик полностью
Oman (27.08.2022 09:47, просмотров: 225) ответил Kceния на Мне run.sh не запустить - у меня Windows. А авторы проекта видимо писали его под OSX.
не совсем понимаю при чем тут OSX и Windows. 

Питон кроссплатформенный.

Строка

CUDA_DEVICE_ORDER=PCI_BUS_ID CUDA_VISIBLE_DEVICES=$device python Main.py -data $data -batch $batch -n_head $n_head -n_layers $n_layers -d_model $d_model -d_rnn $d_rnn -d_inner $d_inner -d_k $d_k -d_v $d_v -dropout $dropout -lr $lr -smooth $smooth -epoch $epoch -log $log

это просто вызов main.py с кучей параметров.

По простому выглядеть должно как:

python main.py -data data/data_so/fold1/ -batch 4 -n_head 4 ....

Единственный вопрос в синтаксисе вот этого(я не помню так ли это в винде делается):

CUDA_DEVICE_ORDER=PCI_BUS_ID CUDA_VISIBLE_DEVICES=$device

но тут просто устанавливаются значения двух переменных среды (CUDA_DEVICE_ORDER, CUDA_VISIBLE_DEVICES) для запуска приложения.

По этим именам переменных сразу кучу stackoverflow вопросов внятных есть. Можно хоть просто выставить в переменных среды, или добавить в main.py что-то типа в начале __main__

import os

os.environ["CUDA_DEVICE_ORDER"]="PCI_BUS_ID"

os.environ["CUDA_VISIBLE_DEVICES"]="0" # specify which GPU(s) to be used

ps: старый ноут с кудой на даче