Como executo vários arquivos .bat que estão em subpastas

1

Sou novo em supercomputadores, recentemente criei uma instância do Amazon EC2 com 128 CPUs e servidor da Microsoft 2012. Eu tenho uma pasta com 100 subpastas, em cada subpasta existe um arquivo .bat. Como executo todos os 100 arquivos .bat ao mesmo tempo? Também existe um comando específico que eu tenho que usar para atribuir cada processamento de arquivo .bat a uma CPU, para que eu possa executar todos eles ao mesmo tempo, garantindo processamento rápido (processamento paralelo). Peço desculpas se estou usando o erro terminologia, como mencionei, sou novo em supercomputação e processamento paralelo.

    
por Julia_arch 06.08.2016 / 21:39

1 resposta

1

Para criar um script para executar vários outros scripts, tente:

dir /s /b *.bat

Isso listará todos os arquivos em lote em todos os seus subdiretórios. Você pode canalizar a saída desse comando para um arquivo de lote, por exemplo:

dir /s /b *.bat > runall.bat

Isso cria runall.bat. Edite runall.bat e use uma macro para prefixar cada linha com "start", então:

c:\Users\KDM\Script\go.bat

torna-se:

start c:\Users\KDM\Script\go.bat

A execução do arquivo BAT recém-criado iniciará cada um dos seus arquivos BAT em um prompt de comando separado. Deixe o SO cuidar da alocação justa dos processadores.

Eu não tenho certeza que isso vai conseguir completamente o que você quer, no entanto. Tenho a sensação de que você está atrás de algo mais esperto. Além disso, o número de processadores de lado, você ainda tem a limitação de que você está apenas executando em um pedaço finito de hardware. Quero dizer, você pode dividir 1 CPU em 128 CPUs virtuais, se você quiser, mas você ainda tem apenas 1 CPU.

    
por 07.08.2016 / 11:00