Comparação de desempenho do servidor antigo [fechado]

0

Dado o preço decrescente do hardware de servidor desativado mais antigo, estou pensando em comprar um para usar em minha pesquisa em casa. Eu vou estar executando Linux, PostgreSQL, Neo4j e R-Server nele. Eu considero isso principalmente como meu servidor de banco de dados, mas de vez em quando eu posso fazer algum cálculo pesado nele. O ponto mais importante é que eu quero que ele esteja disponível sem interrupção e deixe-me acessar os dados remotamente, manter minhas operações funcionando durante a noite e manter meus dados seguros.

Eu dei uma olhada no hardware disponível e parece um Proliant de 5ª geração, uma 3ª geração. PowerEdge, ou equivalente, pode ser obtido por 150-400 $, dependendo da configuração. Isso deve me dar armazenamento RAID + 16 a 32GB de RAM + 8 núcleos reais que estão em algum lugar entre 2,5 a 3GHz: Parece potência suficiente para mim.

O problema é que eu tenho dificuldade em comparar o desempenho dessas feras mais velhas com os computadores mais modernos. A maioria dos benchmarks de consumidor final parece focar em gráficos, jogos, etc ... que são irrelevantes para um servidor sem cabeça. Dados meus casos de uso (citados acima), quais parâmetros devo analisar? A questão é que não quero que esse servidor tenha um desempenho inferior ao meu computador desktop atual (Quad Core i7 2.5 GHz + 12 GB de RAM) nas áreas em que ele é usado.

P.S. É de onde a ideia surgiu originalmente: link

    
por retrography 23.02.2015 / 23:14

1 resposta

1

O desempenho depende muito do tipo de carga de trabalho que você deseja fazer. Mesmo para um servidor de banco de dados, depende muito da consulta que você faz. Infelizmente o Quad Core i7 não significa muito, já que existem várias gerações diferentes de chips sob a marca i7.

Em geral, eu achei os resultados de benchmark no phoronix-test-suite informativos para obter a estimativa / expectativa do parque de bola para o hardware.

A menos que a CPU seja muito lenta, e não a RAM o suficiente, o gargalo de desempenho do db geralmente é limitado ao disco, especialmente se você tiver um banco de dados grande e consultas mais ou menos aleatórias que invocam muito tempo de busca no disco. Os discos rígidos foram o link mais lento em muitos aplicativos já há alguns anos.

O RAID contribuirá de alguma forma para aumentar o throughput de armazenamento em massa, mas, mesmo assim, você obtém algumas vezes o desempenho em um único disco, mas pode fazer toda a diferença, mas dificilmente revolucionário. É por isso que as pessoas passaram a armazenamento em estado sólido ou discos RAM.

Eu tinha um servidor db essencialmente rodando em um disco RAM, só precisava de um bom no-break e fazer backups de disco regulares (a cada minuto, incrementais). Funcionou bem, porque eu tinha memória RAM suficiente para manter o banco de dados inteiro. Mesmo sem ir para as medidas drásticas de fazer um disco RAM, o cache do sistema operacional lhe dará a maior parte do aumento de desempenho se você tiver RAM suficiente.

A computação média em desktops não demanda muita largura de banda de memória, mas para um banco de dados ocupado e para um processamento sério de números, descobri que o próximo gargalo de desempenho é realmente vinculado à memória. Os processadores são tão rápidos que ficam sentados esperando pela RAM muitas vezes. A ideia é que você consiga mais chips, mais núcleos, em um clock maior da CPU. Uma configuração dual core dual cpu quase sempre superará uma CPU quad-core única da geração com o mesmo clock, porque cada CPU terá seu próprio banco de RAM.

Em termos de CPU, você está olhando para uma melhora de desempenho de 5 a 10% da força bruta no clock para o clock entre gerações. Então, some os núcleos físicos, multiplique pelo clock, depois ajuste para sua geração para obter a expectativa de desempenho do pacote de bolas.

Se você pretende recompilar o software específico para o hardware e o software / compilador pode usar os recursos adicionais da nova CPU, então pode ser uma questão diferente. Para algumas das cargas de trabalho (matemáticas) que eu faço, minha caixa dual Xeon E5-2670 v2 é três vezes o clock-for-clock sobre a caixa i7-920, sim, isso é um total de 14+ vezes mais rápido no geral!

Talvez seja melhor fazer uma pesquisa / avaliação rápida das necessidades de sua aplicação primeiro. Verifique a taxa de transferência do disco, a carga da CPU, a interrupção da CPU, o uso da RAM / troca / troca de dinheiro. Então você terá algo para procurar ao decidir sobre o novo sistema. (Caso você não saiba, a carga da CPU sempre parecerá alta mesmo quando estiver aguardando a RAM ou o disco. Uma fraude rápida, mas não totalmente precisa, é executar algo totalmente intensivo da CPU, como o SETI @ home etc, em o plano de fundo com a prioridade mais baixa. Então você pode separar a boa carga com a carga normal, qualquer que seja a boa carga que seja ocupada, sua carga normal está esperando por algo.)

Em geral, procure um sistema com mais soquetes e plugues, sejam soquetes de CPU, soquetes de DIMM ou canais SATA, etc. etc. Fazer paralelamente realmente acelera as coisas com a configuração correta.

    
por 24.02.2015 / 11:53