Sim, a execução detalhada reduzirá a velocidade de seus aplicativos.
Quanto depende da aplicação.
Toda impressão no terminal exigirá tempo de processamento extra. No caso de usar printf () ou qualquer uma de suas irmãs, essa é uma quantidade bastante pesada de processamento desperdiçado.
Além disso, o terminal precisa lidar com esses dados. Há uma quantidade limitada de espaço no buffer entre o aplicativo e o terminal, e o canal IO será bloqueado até que haja espaço suficiente no referido buffer para realmente enviar os dados. O aplicativo geralmente não poderá continuar enquanto esse bloqueio estiver ocorrendo. 1 1
Além disso, o ato de exibir o texto de depuração no terminal consumirá ciclos de processamento. Novamente, isso depende da aplicação (a quantidade de depuração), do programa do terminal (fontes usadas, efeitos, etc.) e até do driver do Windows X em uso (aceleração de hardware, etc.).
O time
programa pode ser usado para determinar com bastante precisão quanto tempo um comando levou para ser executado. A execução do mesmo programa duas vezes no tempo, uma vez com depuração e outra sem, mostrará a diferença. Sugiro executar o comando uma vez antes de executar os testes para garantir que o cache seja o mesmo para as duas execuções de teste do comando. Você não deseja distorcer os resultados fazendo com que a segunda execução seja muito mais rápida, porque a maioria dos dados foi armazenada em cache pela primeira execução agora.
1 No caso de um aplicativo multithread, apenas o thread que executa a saída de depuração será realmente bloqueado.
tar xvf file.tar > /dev/null
vs.tar xf file.tar
? Redirecionar para/dev/null
deve tirar seu terminal disso.