ToTTenTranz disse:
Já a dei:
A performance de um GPU não se mede com a quantidade de ROPs, shaders e ALUs. A eficácia de um gpu depende muito da gestão de memória.
Por alguma razão é que vês uma X1800XT a bater as 7900GTX no Oblivion, nos outdoors em zonas com muitas árvores (a zona do jogo que mais puxa pelas gráficas).
As 7900GTX têm 24 pixel shaders e TMUs ao passo que a X1800XT só tem 16.
Aqui cai por terra a teoria de que mais shaders e TMUs equivale forçosamente a mais performance.
Dizer que se tem um número grande de pipes, TMUs e ROPs é muito bonito no papel. É muito eficiente em marketing, para deixar as pessoas a dizer "ena que revolução, tantos shaders!"..
Mas quando chega à altura de programar e por as coisas a correr a eficácia do chip, gestão interna dos recursos acabam por vir ao de cima.
O Flipper oferece essa eficácia e o Xenos tambem.
Sabes para que serve a memória cache, qualquer um dos vários tipos ?
Para tentar compensar de algum modo as ineficiências internas da arquitectura dos chips (inerente à ISA básica).
Um exemplo primário disso mesmo foi o Pentium 4, cuja arquitectura criava uma latência tal que só com memória cache em grande quantidade era possível manter o chip a uma velocidade mínimamente aceitável.
Noas A64 é precisamente o contrário, a arquitectura eficiente pouco beneficia com mais memória cache, pois não existe tanta latência por clock.
Isso denota menos laxismo na concepção do chip, com TLB's eficientes, poucos stall's de instruções, enfim, mais aplicação na resolução dos problemas fundamentais em vez de criar "remendos" temporários que terão inevitavelmente de ser aumentados à medida que o chip se torna mais complexo.
Precisamente aquilo que a Intel copiou com o Conroe, que provavelmente nem precisava de ter 2 MB de cache unificada, não fosse o facto de depender de um controlador de RAM externo muito mais ineficiente, através do velhinho FSB GTL+, e precisar de mitigar de algum modo essa situação com cache L2 adicional.
Já o actual Celeron M denota essa fraqueza em relação ao Pentium M, onde a cache L2 menor faz de facto bastante diferença (precisa de ir mais vezes à RAM principal buscar dados)...
E, por favor, não me venhas com essa da gestão de memória.
Estar a comparar uma X1800 XT com uma 7900 GTX é muito interessante..., não fora o facto de que cada pixel shader da G70/G71 não ter absolutamente nada a ver com o equivalente nominal da R520/R580.
Já se viu como pouca vantagem trouxe à ATI ter um controlador de memória deste tipo numa arquitectura que não passa de DirectX9, e, portanto, sujeita a overhead da própria API de software DX9, para além de o nº de operações por pixel estar limitado de algum modo.
Só faz sentido ter algo tão complexo em GPU's DX10 ou superior.
Senão, como explicas que a X1800 XT tenha 335 milhões de transístores e a 7900 GTX apenas 278 Milhões, sendo fabricados na mesma fábrica a 90nm ?
A 7800 GTX já tinha 302 milhões, pelo que foi possível reduzir a complexidade do chip para 278 e aínda assim ser competitivo com a nova e monstruosa R580 de 384 milhões de transístores...
É o mesmo que comparar laranjas com maçãs.
São shader pipelines de concepção diferente, logo, de comparação impossível.
ToTTenTranz disse:
Chamar à EDRAM um "desperdício" é o mesmo que dizer que num CPU ter 2Mb de cache é um desperdício pois podiam por só 512Kb e gastar os transístores a mais em unidades FP. As coisas não funcionam assim.
Tem graça, ía jurar que foi precisamente isso que a MS quis na CPU da Xbox 360, pois inicialmente estava previsto um dual-core PPC com mais memória cache L2, e no fim decidiram-se por 3 cores muito simplificados (em relação aos G5) com apenas 1MB partilhado.
Ou seja, mais potência com menos latência = menor necessidade de cache L2 a servir de buffer para instruções que aínda não foram processadas e estão em "lista de espera".
A prova de que a menor complexidade estrutural resultou foi o facto de se ter retirado o suporte ao processamento Out-of-Order que existía no PPC G5.
Numa arquitectura estritamente in-order, as alturas onde a memória cache fica saturada aumentariam fortemente, mas o que se vê na Xbox é precisamente o contrário.
Não é precisa muita memória cache L2 para partilhar pelos 3 cores e 6 threads, pois estes foram (e bem) simplificados na sua operação, mitigando esse problema de data collision desde a raíz.