Como eu determino o meu afunilamento ao executar testes de unidade?

0

Eu tenho uma solução muito grande, com 11k + testes de unidade, e no meu desktop demora cerca de 30 minutos para executá-los; no meu laptop leva 60 minutos.

OBSERVAÇÃO: já troquei o HDD por SSD e ele não aumentou.

Diferenças em máquinas

Processador

  • Desktop: Intel Xeon W3550 a 3,07 GHz (8 núcleos)
  • Laptop: APU AMD A10-5745M com Radeon HD Graphics (4 núcleos)

RAM

  • Desktop: 6 GB
  • Laptop: 6 GB (atualizável para 16 GB)

OBSERVAÇÃO: Não sei como determinar mais especificações sobre a RAM, então a orientação é apreciada se for necessário.

Pergunta

Tudo bem, então, armado com essa informação, ao executar meus testes de unidade, como eu determinaria se a RAM ou o processador é o gargalo? Como dito acima, a RAM é atualizável, e acredito que o processador é um pouco, mas marginalmente.

    
por Mike Perrenoud 28.05.2014 / 18:17

1 resposta

1

Acho que uma boa maneira de responder à sua pergunta é usando o método KISS: Keep It Super Simple .

Como você está comparando 2 computadores, sempre haverá pequenas coisas (velocidade da RAM, velocidade do FSB, tempo de hardware, processos em segundo plano, fragmentação do disco rígido, fabricante da placa-mãe) que afetarão a velocidade com que as soluções serão concluídas. Na maioria das vezes, essas pequenas coisas irão apenas equivaler a uma mudança de 0,1% a 5% no resultado final (tornando-se insignificante).

Deixando as pequenas coisas de lado, vamos comparar as duas especificações de hardware que você listou:

Quanto à memória, tanto a área de trabalho quanto o laptop têm a mesma quantidade de memória RAM (6 GB). Se você colocar mais memória no laptop, tenho certeza de que veria uma pequena diminuição no tempo de conclusão da solução. Aumentar a quantidade de RAM dará ao SO um pouco mais de folga para armazenar as informações necessárias e as informações que você está executando em sua solução. Dependendo do software que você está usando e do tipo de solução que você está executando, você pode ver desde um aumento de 5% até um aumento de 200%. Mas como você não forneceu essa informação, eu não posso dizer com certeza.

Mas, como os dois computadores têm a mesma quantidade de memória, o programa em execução no computador 1 não conseguirá obter vantagem usando mais memória do que o outro computador. Por este motivo, a memória não é o problema aqui e é um ponto discutível.

Quanto ao processador, os dois computadores são muito diferentes nesse aspecto. O computador de mesa tem um processador Intel Xeon de 8 núcleos, enquanto o laptop está preso a um processador AMD de 4 núcleos. Em termos de velocidade de cada processador, a Intel tem um clock de 3,06 GHz, enquanto a AMD tem um clock de 2,9 GHz. Enquanto isso não daria ao desktop uma grande vantagem, ele dá uma pequena vantagem.

O grande problema aqui é o fato do processador Intel ter 8 núcleos, enquanto o AMD possui apenas 4. Por isso, a Intel pode processar 2 vezes mais informações na mesma quantidade de tempo que a AMD. Isso faz com que o processador Intel seja 2 vezes mais rápido que o processador AMD. É também por isso que o processador Intel concluiu a tarefa duas vezes mais rápido que o processador AMD.

Em conclusão, eu diria que o processador AMD no laptop é o maior gargalo que você está procurando. Quando você compara duas coisas, lembre-se de que as partes que são as mesmas podem ser retiradas da equação para que você possa se concentrar apenas nas coisas diferentes.

P.S. Embora a memória e o processador em uma área de trabalho sejam quase sempre atualizáveis, somente a memória de um laptop pode ser atualizada. 95% dos processadores de laptop não podem ser atualizados.

    
por 28.05.2014 / 20:00