Pergunta

Como estou compilando meu código C++ em uma caixa de servidor (32 ou 64 núcleos no total), existe uma maneira de ajustar as opções do compilador para acelerar os tempos de compilação?Por exemplo.para dizer ao compilador para compilar arquivos .cpp independentes usando vários threads.

Foi útil?

Solução

Sun Studio inclui suporte de compilação paralela na versão dmake incluída. Ver O manual do DMake Para mais detalhes.

Outras dicas

Isso depende de qual conjunto de ferramentas você está usando.

Se você estiver usando GNU Make, adicione -j 32 à sua invocação do make para dizer ao Make para iniciar 32 jobs (por exemplo) em paralelo.Apenas certifique-se de não esgotar a RAM e, como resultado, sobrecarregar seu arquivo de troca.

use algo como boost geléia, que faz esse tipo de multithreading para você - e da minha experiência muito mais eficientemente do que fazer multi-threaded.

O compilador C++ da Sun também possui um -xjobs opção que faz com que o compilador bifurque vários threads internamente.Para que isso seja eficiente, você provavelmente teria que passar todos os arquivos .cc para uma única invocação do CC.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top