usando cpu i7 “gamer” em um cluster HPC

6

Estou executando o modelo climático do WRF. Isso é um aplicativo altamente paralelo e altamente ram.

Eu preciso construir um cluster HPC para isso. Eu uso interconexão de 10GB infiniband.

O WRF não depende da contagem de núcleos, mas da largura de banda da memória. É por isso que um Core i7 3820 ou 3930K tem um desempenho melhor do que os Xeons de alto desempenho E5-2600 ou E7

Parece que as universidades usam o xeon E5-2670 para o WRF. Custa cerca de US $ 1500. Fp_rates Spec2006 O banco WRF mostra $ 580 i7 3930K executa o mesmo com 1600MHz de RAM.

O interessante é que o i7 pode suportar até 2400MHz, fazendo um grande aumento de desempenho para o WRF. Então, realmente supera o xeon. Consumo de energia é um pouco maior, mas ainda menos de 20 € por ano. Mesmo incluindo a parte adicional que vou precisar (PSU, infiniband, case), o i7 ainda é 700 € / cpu mais barato que o Xeon.

Então, é correto usar hardware "gamer" em um cluster HPC? ou devo fazer pro com xeon?

(Esta não é uma aplicação crítica. Eu posso lidar com o tempo de inatividade. Eu acho que não preciso de ECC?)

    
por user1219721 05.12.2012 / 15:14

4 respostas

10

Fizemos isso no mundo financeiro de alta frequência por um curto período (próximo ao HPC, dada a arquitetura de aplicação com a qual eu estava trabalhando) ...

Por volta do início de 2010, eu estava implantando sistemas de jogos i7 "de soquete único, rack-chassied e 3U com" 10GbE Solarflare (com OpenOnload UDP message kernel-bypass) e / ou interconexões Infiniband.

Eu não tive nenhum gerenciamento IPMI / out-of-band, nenhum gerenciamento de energia, fontes de alimentação únicas e nenhuma peça hot-swappable. Usamos SSDs e discos SAS internos em pontos diferentes, mas o disco não era crítico para os nós de computação. Os sistemas operacionais eram o Fedora Linux com um kernel altamente customizado e ajustado.

Isso funcionou como prova de conceito e foi um resquício até que percebemos como nossos aplicativos comerciais reagiriam na produção com dados em tempo real. No entanto, como as coisas cresceram, isso se tornou um pesadelo de gestão ...

Problemas como resfriamento, aquecimento / espaço / densidade do centro de dados (essas coisas eram caixas de 3U), suporte e gerenciamento remoto acabaram matando o esforço. Embora a CPU nunca tenha falhado tecnicamente, todos os outros componentes tem problemas! . E isso foi com apenas um ciclo de 8 horas de uso diário de produção ...

O que fizemos a longo prazo?

Nós abandonamos o computador do jogador e utilizamos hardware de servidor apropriado. Sim, essa era uma empresa financeira, por isso não tínhamos limitações orçamentárias, mas eu ainda precisava estar consciente dos preços, considerando a escala potencial de um aplicativo não comprovado. Há bons servidores em todas as faixas de preço e, se você planeja aumentar a escala, os negócios podem ser resolvidos com os fabricantes. Você não acha que os grandes grupos de laboratórios de pesquisa da HPC pagam preço de varejo por equipamento, não é? Nem nós ...

Então, se você quiser fazer isso, pense no quadro geral. Se você está pensando apenas em usar a CPU de nível de desktop em um hardware de nível de servidor, isso funcionará ... Mas eu não recomendaria isso para uso em tempo integral.

Se você conhece os problemas de limitações e disponibilidade da CPU, só posso oferecer um ponto de dados para consideração.

    
por 05.12.2012 / 16:42
6

O i7 não pode usar RAM com buffer ECC e não pode ser instalado em configurações de soquete duplo ou quádruplo. Isso parece ser razão suficiente para não usá-lo - mas é claro, suas necessidades podem ditar o contrário.

    
por 05.12.2012 / 15:18
2

Pessoalmente, eu ainda me inclinaria para o Xeon, pois ele é projetado para suportar mais carga simultânea por um longo período de tempo. Se você estiver executando um trabalho intensivo da CPU durante um longo período de tempo, digamos, horas ou semanas, o Xeon tem um tempo médio de falha muito maior do que o i7 faz.

Diferente disso, eu adia a resposta do @ MDMarra para o carregamento do servidor.

    
por 05.12.2012 / 15:32
0

That's a ram intensive, highly parallel application.

Parece que a CPU por núcleo não é a preocupação, tanto quanto o número de núcleos e a quantidade de RAM que você pode colocar em uma caixa, para aumentar a escala mais rapidamente. Com isso em mente, talvez você queira analisar os Opterons de 16 núcleos em uma configuração de dual-cpu . Isso pode não fazer DDR3-2400, mas você pode enchê-lo com 256GB de DDR3-1600 distribuídos por esses núcleos de 32 cpu.

    
por 05.12.2012 / 17:29