Pergunta

Estou à procura de um hardware, que deve correr cerca de 256 computacionalmente intensivas em tempo real tarefas simultâneas em modo de 24 horas (uma aplicação C de multi-threaded). Cada tarefa leva cerca de 40-50 Mflops, então todas as tarefas exigem cerca de 10 GFLOPS. velocidade da CPU-RAM é insignificante. Todas as tarefas devem ser geridos por um Kernel Linux (32 bits, com SMP).

Eu estou procurando uma solução one-mainboard com uma CPU multi-core (se as houver CPU). Se tal CPU não existe, então eu preciso de uma solução mulit-socket placa-mãe (com múltiplas CPUs).

Você pode por favor me recomendar qualquer solução profissional CPU / Mainboard que irá satisfazer essas exigências? É também muito importante que não há problemas com Linux Kernel (2.6.25). Sem virtualização, não precisa em grande RAM ou cache da CPU. Eu também preferiria arquitetura Intel e estabilidade bem provado. Eu ainda tenho dúvidas de que é viável a todos.

Agradecemos antecipadamente.

UPDATE: Eu acho que encontrei uma resposta certa aqui aqui .

Foi útil?

Solução

UltraSPARC T2 tem 8 núcleos com 8 threads cada. Integrado de memória de alta largura de banda e IO. A T5140 carrega dois deles para 128 segmentos de hardware.

O desempenho bruto máximo teórico dos 8 unidades de ponto flutuante é 11 Giga aleta por segundo (Gflops / s). A enorme vantagem sobre outras implementações, porém, é que 64 threads podem compartilhar as unidades e, assim, podemos alcançar um percentual extremamente elevado de pico teórica. As nossas experiências alcançada cerca de 90% do 11 Gflop / s. - ( http://blogs.oracle.com/deniss/entry/floating_point_performance_on_the )

Outras dicas

  1. Alugue alguns nós do Amazon EC2.

  2. Atualização : Como cerca de PS3 de então? A NASA usa-los para seus motores de simulação.

  3. Talvez usar CPU + GPU em servidores comerciais?

  4. Build-a em torno FPGAs : hoje em dia, algumas variantes incluem processadores que pode rodar o Linux.

Mesmo que você nos deu as especificações que você acha que precisa, nós pode ser capaz de ajudá-lo melhor se você nos dizer o que a aplicação se destina a realizar, e como ele foi implementado.

Pode haver uma maneira melhor para dividir o trabalho para cima ou para lidar com ele, em vez de sua solução atual.

Não arquitetura Intel, mas estes run linux e tem 64 núcleos em um único die.

TILEPro64

Obter um monte de máquinas de quatro ou oito núcleos e dividir o processamento em máquinas usando algum tipo de grade ou agrupamento software. Talvez ter um olhar para Beowulf .

Como você mencionou, 10GFlops não é exatamente a ser espirrou no modo em uma única máquina, vai ser caro. Há também o problema que você faz quando as quebras de máquinas, é improvável que você tem uma segunda máquina de similar disponível spec. Se você construir um cluster usando hardware commodity, você está um pouco mais resistente e é mais fácil de encontrar máquinas de substituição.

MFLOPS e GFLOPS são indicadores muito pobres de quão bem um programa pode ser executado em qualquer CPU. Estes dias, cache de pegada é muito mais importante; talvez precisão da previsão ramo também.

Não há quase nenhuma maneira de medir o desempenho de uma determinada aplicação em diferentes arquiteturas sem realmente dar uma olhada. E mesmo assim, você não pode ter uma boa idéia se você fosse o suficiente azar de inconscientemente construir com opções de compilador que arruinaram sua pegada de cache, ou usados, uma biblioteca de threading ruim, ou qualquer um de uma centena de outras coisas.

Eu vejo você preferir intel, mas se você precisar de um chip, que novamente irá sugerir o processador Cell - seu desempenho teórico máximo é 25GFlops arount - Kernel 2.6.25 apoio teve para já.

Você poderia tentar um playstation pré-slim 3 para experimentar com (que iria custar-lhe pouco) ou obter-se uma solução baseada em servidor em torno de US $ 8K - você terá que re-escrever e afinar seus segmentos de tomar advabtage dos SPU co-processadores lá, mas você poderia conseguir suas necessidades computacionais sem suar a camisa com uma única célula (1 PPC núcleo + 8 do SPU)

NB .: com um playstation 3, você teria apenas 6 co-processadores disponíveis - mas você não visto para estar em um orçamento com este projeto - Então, você poderia pelo menos tentar kit de desenvolvimento de células da IBM, que oferece um emulador, para ver se você pode codificar a sua solução para rodar nele.

Thre são produtos celular disponível comercialmente, tanto como servidores autônomos em forma de lâmina fábrica, e PCI Express add-on placas para estações de trabalho de PC de Mercury Computer Systems: http://www.mc.com/microsites/cell/products. aspx? id = 6986

Mercury não lista todos os preços no site, mas os seens de preços para ser em torno do previoulsy mencionado U $ 8000,00 para estas placas PCI Express.

A PlayStation 3 videogame pode ser comprado por cerca de U $ 300,00 - e lhe permitiria protótipo seu aplicativo e verificar se ele é até o desempenho necessário. (Eu mesmo tenho um e ter Fedora 9 em execução, embora eu fiz isso como um AMADOR e não têm, até agora, usou-o para todos os cálculos - Eu também tinha reunido um cluster machinne Playstation-3 12 para Molecular simulações no Universidade local. a aplicação que correm não aproveitar o multimedia SPU de, enquanto eu estava em contato com o então. Mas, mesmo assim, com clock de 3,5 GHz que tiveram melhor desempenho do que o padrão, s imlarly preço, PC, mesmo considerando da PS3 custam 5x maior por aqui)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top