Tesla (microarquitetura)
Tesla Uma placa da linha NVIDIA Tesla , que usa, obviamente, a microarquitetura Tesla.
Lançamento
novembro de 2006
Processo de fabricação
90 nm, 80 nm, 65 nm, 55 nm e 40 nm
História
Predecessor
Curie
Sucessor
Fermi
Status de suporte
Encerrado
Foto de Nikola Tesla, epônimo da arquitetura
Tesla é o codinome de uma microarquitetura de GPU desenvolvida pela Nvidia , e lançada em 2006, como sucessora da microarquitetura Curie . Foi nomeado em homenagem ao engenheiro elétrico pioneiro Nikola Tesla . Como a primeira microarquitetura da Nvidia a implementar shaders unificados, ela foi usada nas séries GeForce 8 , GeForce 9 , GeForce 100 , GeForce 200 e GeForce 300 de GPUs fabricadas coletivamente em 90 nm, 80 nm, 65 nm, 55 nm, e 40 nm. Também estava na GeForce 405 e nos módulos de computação Quadro FX, Quadro x000, Quadro NVS e Nvidia Tesla .
Tesla substituiu as antigas microarquiteturas de pipeline fixo , representadas na época da introdução pela série GeForce 7 . Ele competiu diretamente com a primeira microarquitetura de shader unificada da AMD chamada TeraScale , um desenvolvimento do trabalho da ATI no Xbox 360 que usava um design semelhante. Tesla foi seguido por Fermi .
Foi sucedida pela microarquitetura Fermi .
Visão geral
Tesla é a primeira microarquitetura da Nvidia a implementar o modelo de shader unificado . O driver suporta a arquitetura Direct3D 10 Shader Model 4.0 / OpenGL 2.1 (drivers posteriores têm suporte para OpenGL 3.3). O design é uma grande mudança para a NVIDIA na funcionalidade e capacidade da GPU, sendo a mudança mais óbvia a mudanças das unidades funcionais separadas (pixel shaders , vertex shaders ) nas GPUs anteriores para uma coleção homogênea de processadores de ponto flutuante universais (chamados de "processadores de fluxo"), que pode executar um conjunto mais universal de tarefas.
GPU NVIDIA G80
A foto da GPU GT200 encontrada nas placas NVIDIA GeForce GTX 280, baseadas na microarquitetura Tesla
A arquitetura de shader unificada da GeForce 8 consiste em vários processadores de fluxo . Ao contrário da abordagem de processamento vetorial adotada com unidades de shader mais antigas, cada SP é escalar e, portanto, pode operar apenas em um componente por vez. Isso os torna menos complexos de construir, ao mesmo tempo que são bastante flexÃveis e universais. As unidades de shader escalar também têm a vantagem de serem mais eficientes em vários casos, em comparação com as unidades de shader vetoriais da geração anterior, que dependem de combinação e ordenação de instruções ideais para atingir o rendimento. O menor rendimento máximo desses processadores escalares é compensado pela eficiência e pela execução deles em alta velocidade de clock (tornada possÃvel por sua simplicidade). A GeForce 8 executa as diversas partes de seu núcleo em diferentes velocidades de clock (domÃnios de clock), semelhante à operação das GPUs anteriores da Série GeForce 7 . Por exemplo, os processadores stream da GeForce 8800 GTX operam a uma freqüência de 1,35 GHz enquanto o restante do chip opera a 575 MHz.[ 1]
A GeForce 8 executa uma filtragem de textura significativamente melhor do que seus predecessores, que usavam várias otimizações e truques visuais para acelerar a renderização sem prejudicar a qualidade da filtragem. A linha GeForce 8 renderiza corretamente um algoritmo de filtragem anisotrópica independente de ângulo junto com completa filtragem de textura trilinear . O chip G80 , embora não seja seu irmão menor, está equipado com muito mais capacidade aritmética de filtragem de textura do que a série GeForce 7 . Isso permite filtragem de alta qualidade com um impacto de desempenho muito menor do que anteriormente.[ 1]
A NVIDIA também introduziu novos métodos de anti-aliasing de borda poligonal, incluindo a capacidade dos ROPs da GPU de executar anti-aliasing multisample (MSAA) e iluminação HDR ao mesmo tempo, corrigindo várias limitações das gerações anteriores. A GeForce 8 pode executar MSAA com formatos de textura FP16 e FP32. GeForce 8 suporta renderização HDR de 128 bits, um aumento em relação ao suporte de 64 bits das placas anteriores. A nova tecnologia anti-aliasing do chip, chamada amostragem de cobertura AA (CSAA), usa Z, cor e informações de cobertura para determinar a cor final do pixel. Esta técnica de otimização de cores permite que CSAA 16X pareça nÃtido e nÃtido.[ 2]
Desempenho
O alegado poder de processamento teórico de precisão única para placas baseados em Tesla fornecido em FLOPS pode ser difÃcil de alcançar em cargas de trabalho do mundo real.[ 3]
No G80/G90/GT200, cada Streaming Multiprocessor (SM) contém 8 processadores Shader (SP, ou Unified Shader, ou CUDA Core) e 2 unidades de função especial (SFU). Cada SP pode realizar até duas operações de precisão simples por clock: 1 Multiplicação e 1 Soma, usando uma única instrução MAD . Cada SFU pode realizar até quatro operações por clock: quatro instruções MUL (Multiplicação). Portanto, um SM como um todo pode executar 8 MADs (16 operações) e 8 MULs (8 operações) por clock, ou 24 operações por clock, o que é (relativamente falando) 3 vezes o número de SPs. Portanto, para calcular o desempenho teórico MAD+MUL de dupla emissão em operações de ponto flutuante por segundo [FLOPSsp+sfu , GFLOPS ] de uma placa gráfica com contagem de SP [n ] e frequencia de shader [f , GHz], a fórmula é: FLOPSsp+sfu = 3 × n × f .[ 4] [ 5]
No entanto, aproveitar o desempenho de dois problemas como MAD+MUL é problemático:
A emissão dupla do MUL não está disponÃvel no modo gráfico no G80/G90,[ 6] embora tenha sido muito melhorado no GT200.[ 7]
Nem todas as combinações de instruções como MAD+MUL podem ser executadas em paralelo no SP e no SFU, porque o SFU é bastante especializado, pois só pode lidar com um subconjunto especÃfico de instruções: multiplicação de ponto flutuante de 32 bits, funções transcendentais, interpolação para parâmetro mistura, recÃproca, raiz quadrada recÃproca, seno, cosseno, etc.[ 8]
O SFU pode ficar ocupado por muitos ciclos ao executar essas instruções, caso em que fica indisponÃvel para instruções MUL de emissão dupla.[ 4]
Por estas razões, para estimar o desempenho de cargas de trabalho do mundo real, pode ser mais útil ignorar o SFU e assumir apenas 1 MAD (2 operações) por SP por ciclo. Neste caso a fórmula para calcular o desempenho teórico em operações de ponto flutuante por segundo passa a ser:FLOPSsp = 2 × n × f .
O poder teórico de processamento de precisão dupla de uma GPU Tesla é 1/8 do desempenho de precisão única no GT200; não há suporte de precisão dupla no G8x e G9x.[ 9]
Chips
G80
G84
G86
G92
G92B
G94
G94B
G96
G96B
G96C
G98
C77
C78
C79
C7A
C7A-ION
ION
GT200
GT200B
GT215
GT216
GT218
C87
C89
Ver também
Referências
↑ a b Wasson, Scott. NVIDIA's GeForce 8800 graphics processor Arquivado em 2007-07-15 no Wayback Machine , Tech Report, 8 November 2007.
↑ Sommefeldt, Rys.NVIDIA G80: Image Quality Analysis , Beyond3D, 12 December 2006.
↑ «Beyond3D - NVIDIA GT200 GPU and Architecture Analysis» . www.beyond3d.com
↑ a b Anand Lal Shimpi & Derek Wilson. «Derek Gets Technical: 15th Century Loom Technology Makes a Comeback - NVIDIA's 1.4 Billion Transistor GPU: GT200 Arrives as the GeForce GTX 280 & 260»
↑ Anand Lal Shimpi & Derek Wilson. «G80: A Mile High Overview - NVIDIA's GeForce 8800 (G80): GPUs Re-architected for DirectX 10»
↑ Sommefeldt, Rys. NVIDIA G80: Architecture and GPU Analysis - Page 11 , Beyond3D, 8 November 2006
↑ «Technical Brief NVIDIA GeForce GTX 200 GPU Architectural Overview» (PDF) . Maio de 2008. p. 15. Consultado em 11 de novembro de 2023 . The individual streaming processing cores of GeForce GTX 200 GPUs can now perform near full-speed dual-issue of multiply-add operations (MADs) and MULs (3 flops/SP)
↑ Kanter, David (8 de setembro de 2008). «NVIDIA's GT200: Inside a Parallel Processor» . Real World Tech . p. 9
↑ Smith, Ryan (17 de março de 2015). «The NVIDIA GeForce GTX Titan X Review» . AnandTech . p. 2
GeForce Series nForce Tecnologias