Noções básicas sobre afinidade
O posicionamento e a afinidade do processo de MPI podem resultar em melhorias significativas de desempenho para aplicativos MPI. O comando mpiexec
usa vários argumentos que permitem que os proprietários de trabalho controlem o posicionamento do processo de MPI, a afinidade e outros parâmetros de tempo de execução. Para obter mais detalhes sobre esses parâmetros, consulte o de referência de linha de comando do Windows HPC. O parâmetro affinity
permite que os proprietários de trabalho especifiquem que cada classificação de seu aplicativo de MPI deve ser bloqueada para um único núcleo (o que pode melhorar significativamente o desempenho de determinados aplicativos).
Se o agendador de trabalho definir afinidade, a configuração de afinidade especificada no comando mpiexec
será ignorada e os aplicativos poderão enfrentar degradação de desempenho. Defina a configuração do tipo de afinidade
Tipo de afinidade do agendador de trabalho
O tipo de afinidade determina como o agendador de trabalho interage com seus aplicativos para atribuir núcleos de processador a tarefas em um trabalho. Se o agendador de trabalho definir afinidade para uma tarefa, ele substituirá a afinidade definida pelo aplicativo. de Tipo de Afinidade tem as seguintes configurações:
Todos os trabalhos: o agendador de trabalho define a afinidade de todas as tarefas às quais um nó parcial é alocado (mesmo que o trabalho tenha uso exclusivo do nó). Isso garante que nenhuma das duas tarefas use o mesmo núcleo. Essa configuração é recomendada para aplicativos que executam muitas instâncias por nó, como varreduras paramétricas e trabalhos SOA.
trabalhos não exclusivos (recomendados): o agendador de trabalho define afinidade para todas as tarefas às quais um nó parcial é alocado, a menos que a tarefa esteja em um trabalho marcado como Exclusivo. Essa configuração é recomendada para trabalhos de MPI e aplicativos que são executados exclusivamente em um nó e gerenciam sua própria afinidade e para varreduras paramétricas não exclusivas e trabalhos SOA.
Nota
Você pode usar modelos de trabalho para especificar os tipos de trabalhos executados exclusivamente em nós.
Nenhum trabalho: o agendador de trabalho não define afinidade para nenhuma tarefa. As tarefas são executadas somente nos núcleos atribuídos a eles por seus aplicativos. Use essa configuração se os trabalhos de MPI encontrarem problemas quando o agendador de trabalho definir afinidade ou se seus aplicativos gerenciarem sua própria afinidade, mas nem sempre forem executados exclusivamente em um nó.
Referências adicionais
Configurar a de Serviço do Agendador de Trabalho do HPC