Jonathan Martins escreveu:
Ola pessoal,
Tenho aqui duas maquinas, uma com dois processadores Intel(R) Xeon(R)
CPU 5140 @ 2.33GHz 8GB ram disco rigido 80GB SAS e outra com dois
processadores quad Intel(R) Xeon(R) CPU E5345 @ 2.33GHz 8GB de ram e
disco rigido SAS 80GB, as duas com 4MB de cache. A quad é bem melhor,
em tese, que a 5140. As duas estao com debian etch, kernel
2.6.18-4-amd64. Os 8GB de ram estão reconhecidos corretamente, tudo
certinho. Essa máquina é utilizada para cálculos pesados, baseados em
aplicaćões feitas em fortran. "rodando" aplicaćões semelhantes nas
duas máquinas estou percebendo que a quad E5345 está mais lenta que a
5140, mas teoricamente a quad é bem superior! O uso o compilador intel
fortran 9.1. Isso não é estranho? Gostaria de ouvir a opinião de
colegas sobre como entender o uso dos processadores no quad core, já
que cada pastilha tem 4 nucleos, é como se fossem processadores em
paralelo? Se eu utilizar uma aplicaćão serial essa aplicaćão vai
utilizar apelas um dos processadores e ou outros ficarão ociosos?
Vejam a saida do top de cada um dos processadores
E5345
Cpu(s): 0.0%us, 0.0%sy, 25.1%ni, 74.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
5140
Cpu(s): 0.0%us, 0.0%sy, 75.0%ni, 25.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mesmo rodando uma aplicaćão serial, para os processadores elas são
distribuidas paralelamente? Se ela utiliza apenas um processador, tem
como fazer essa paralelizaćão, como se fosse um cluster? Alguém tem
alguma sugestão para eu investigar o porquê do desempenho mais baixo
do quad core em relaćão a um dual core, sendo que o resto do hardware
é semelhante (inclusive a taxa de transferência de dados do disco
rigido, 7200rpm)?
Grato pelos comentários e sugestões.
Olá,
Vê-se pelas linhas das CPUs que todo o processamento está me "nice"
(xx.x%ni), o que não é bom se realmente seu programa está rodando, pois
"qualquer" outro processo ganhará prioridade de execução. Nota-se que no
5140 o não-processamento (idle) está em 25,0% (25.0%id) e no E5345 está
em 74,9% (74.9%id), o que significa que o 5140 está trabalhando mais
(75%) que o E5345 (25%), porém, a grosso modo, o E5345 tem o dobro do
poder de processamento se o 5140 for de 1 núcleo ou 4x se for de 2
núcleos. Supondo que o 5140 seja de 2 núcleos (não vou procurar saber
agora), então, comparando com o E5345, este estaria com 38% versus 25%,
sendo portanto mais rápido. Supondo que o 5140 seja de 1 núcleo, então,
comparando com o E5345, este estaria com 19% versus 25%, sendo portanto
mais lento. Creio que tenha dado para entender a idéia a grosso modo.
Acho que deve colocar o processo em nível usuário com prioridade mais
alta, isso seria um ganho, porém vê-se que o processamento não chega a
100%, o que implica que o gargalo não é o processamento e sim outra
coisa, provavelmente inerente à placa mãe, memória, HD, etc.
Quanto ao programa seqüencial, este é alternado entre as CPUs, mas não
tem suas partes executadas em paralelo, o que implica que este programa
terá (teoricamente) o mesmo tempo de processamento em 1 CPU de
velocidade X como em n CPUs de mesma velocidade.
--
Atenciosamente,
Junior Polegato
Um peregrino de problemas; Um pergaminho de soluções!
Página Profissional: http://www.juniorpolegato.com.br
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]