Existem algumas diferenças, no entanto, elas não são necessariamente de hardware ou especificações. Observe que essas são todas as informações que obtive em fóruns ou comunicados à imprensa; portanto, leve tudo isso com um pouco de sal.
O primeiro é a "escalabilidade e confiabilidade" ( fonte ). O K20 foi projetado para se sentar em um sistema de cluster e funcionar a todo vapor 24/7. O Titan é mais projetado para jogos, portanto, será executado nesse ciclo de trabalho, mas poderá sofrer problemas de vida útil a longo prazo se usado dessa maneira.
Os pilotos também são diferentes, mas não tenho certeza das principais diferenças. A diferença de foco no design das placas provavelmente leva a ganhos de desempenho relativamente pequenos para as placas Tesla nesta frente.
"Alguns recursos exclusivos da Tesla incluem:
- NVIDIA GPUDirect RDMA para desempenho InfiniBand
- Hyper-Q para MPI (o Hyper-Q para CUDA Streams é suportado na GeForce GTX TITAN)
- Proteção ECC para todos os registros e memórias internas e externas
- Ferramentas suportadas para gerenciamento de GPU e cluster, como Bright Computing, Ganglia. "( Fonte )
Isso aponta para o fato de que a principal diferença é sua escalabilidade. Se você deseja rodar em uma área de trabalho em seu escritório, seria difícil argumentar contra um Titan no K20 pela diferença de preço. Se você precisar do desempenho extra de vários K20, encontre um centro de HPC e ganhe tempo com seus servidores.
Editar:
Depois de analisar um pouco mais o ECC, estou atualizando esta resposta para apontar as implicações de tê-lo no K20 e não no Titan. A seguinte informação é uma paráfrase de informação encontrada aqui .
O ECC está verificando erros na DRAM e se registra na GPU. Erros leves são quando um bit é transferido / armazenado incorretamente. Quanto mais rápidos e próximos os circuitos, maior a probabilidade de um erro leve. Se você estiver resolvendo um conjunto de ODEs acoplados ou resolvendo um sistema linear, um único número desativado em um bit poderá alterar significativamente os resultados de uma maneira não reproduzível. A maioria dos RAMs e caches padrão na CPU são verificados por esses erros usando o ECC.
As GPUs, por outro lado, geralmente não possuem ECC, embora seu barramento de memória seja muito mais rápido do que os da CPU. Isso ocorre porque, se um pixel na tela estiver um pouco desativado para um quadro, a qualidade do programa não será reduzida. Esses erros também não se propagam. Portanto, muitos bens imobiliários (e custos) podem ser salvos pulando esse recurso. Essa complexidade extra provavelmente causa uma grande parte do custo extra da linha Tesla.