Tudo o que se soube até hoje sobre as futuras consolas – Parte 4

Quarta parte da adaptação do post do utilizador  anexanhume, publicado no Resetera, e que é um apanhado de todos os rumores sobre as futuras consolas.

Caixas Negras

Trazendo equilibrio

A arquitectura Zen foi de transformação para a AMD, trazendo-lhe vários contratos empresariais, superioridades em muitas aplicações pesadas em tarefas simultâneas, e a renovação da adoração dos entusiastas com a elevação da mistica de Lisa Su (CEO da AMD). O salto tremendo no IPC face ao Jaguar ou Puma e outros como o Bulldozer, Excavator e Piledriver, existentes na altura da oitava geração trouxe a AMD para uma distância reduzida face à Intel no que toca à performance de CPUs para jogos. Seria injusto referir que a AMD trouxe paridade, mas com o Zen 2 a aumentar ainda mais entre 10 a 15% o número de instruções por ciclo de relógio (IPC) sobre o já obtido no Zen e Zen+, a realidade é que o desafio é real. Seria igualmente injusto relegar o Jaguar para algo como desastroso no que toca à  PS4 e Xbox One. Era o melhor que a AMD tinha na altura e que se adequava às características de performance e consumo de um APU monolítico. Possui processamento fora de ordem com suporte AVX, significando que para a altura era, pelo menos, relevante. Do seu lado, a AMD dedicou-se ao seu negócio de semi personalização, sendo que palavras recentes de Lisa Su dão a entender claramente que a AMD ainda está envolvida com a Microsoft e Sony nesse tipo de produção (algo confirmado do lado da Microsoft pela presença de Phil Spencer em palco na última apresentação AMD, e basicamente do lado da Sony pelos rumores da Navi, sucesso da PS4 e actividade dos seus engenheiros). A AMD comentou ainda que a parte da personalização continuará a ser parte fundamental da empresa no futuro que se segue, e que os contratos com ambas as empresas foram mexidos recentemente em 2018.

Uma análise à colocação de vagas para emprego dão a entender que pelo menos um dos designs personalizados da AMD estará em laboratório no primeiro quarto de 2019. Dado como assumido que a TSMC lançará ao consumidor produtos 7nm em 2019, o Zen 2 aparece na linha da frente para inclusão nas consolas de nova geração, saiam elas quando saírem. E há muito que é excitante. O desing Zen original aumentou o IPC em 50% sobre o Jaguar, o Zen + subiu isso em mais 5 ou 7% graças acima de tudo a melhorias nas caches. E se as previsões se mantiverem o Zen 2 ganhará ainda mais 10 a 15% em cima de tudo isso.



Sabemos que as velocidades de relógio não escalam tão bem a 7nm devido a desafios das interconexões, mas é quase seguro referir que 2.8 Ghz deverá ser a velocidade mínima de relógio dada a implementação no 2800E do Zen+ que está a essa velocidade num CPU de 8 núcleos com 16 Threads, com um TDP de 45 Watts. Escalar mais as velocidades de relógio poderia resultar num aumento linear de performance, mas retirando o design do “ponto de caramelo”. E isto é acima de tudo verdade dado onde queres estar no design de um APU: com o mesmo tipo de consumos da presente geração de consolas.

Automaticamente a ideia salta para uma configuração de 8 núcleos/16 threads (mantendo 4 núcleos por CCX) e isto porque já conhecemos um produto com esta configuração com 32MB de cache L3, num espaço de 70 mm^2. Isto seria 1/5 do espaço de uma PS4 ou Xbox original, deixando muito espaço para o GPU, controladores de memória e outros circuitos de input/output. Oito núcleos físicos também seria um caminho de maior facilidade de compatibilidade com o Jaguar de 8 núcleos. Depender de multi-threading simultâneo (SMT) pode complicar a coisa se se pretender compatibilidade, e para poupar 35 mm^2 no máximo, tal não parece vantajoso a longo prazo.

Mas a presença do SMT não deve ser ignorada. Com um pequeno aumento na área do silicone basicamente recebemos uma troca 1 para 1 na relação performance potência. Os “threads” extra podem muito bem ser colocados a uso em jogos e sistema operativo, especialmente em tarefas que não sejam criticas a nível de tempo. Aumentos na velocidade de relógio são outra perspectiva interessante dado que muitos jogos ainda adoram a performance num único “thread”. Se os criadores tivessem acesso a uma característica determinística de aumento das performances de um número de núcleos limitados, faria perfeito sentido.

Graças às entradas do compilador LLVM sabemos que a Sony está a trabalhar a fundo em fazer optimizações de compilação destinadas à arquitectura ZEN. Uma grande parte dos seus esforços está a ser gasta em optimizar operações de vectores (SEE, AVX, AVX2, AVX512), operações de manipulações de bits, e outras coisas que seria de esperar que optimizadores de baixo nível se centrem. Se olharmos com atenção vemos que estão tambem a trabalhar com ARM (arranque/background) e FreeBSD, o sistema operativo base da PS4/PS4. A AMD também está a colocar o seu peso aí.



Para quem está a re-verificar, sim, foi dito AVX512. A conjunto de extensões vectoriais tão falado em rumores e tão debatidos pela sua relevância em jogos apareceu em muitos registos que um engenheiro da Sony analisou ou submeteu. O Zen 2 foi anunciado como tendo o dobro da capacidade em virgula flutuante das arquitecturas Zen e Zen+, e isto deve-se a um aumento da capacidade de recepção de dados em bits. A AMD não comentou publicamente sobre se o Zen 2 suportará ou não o AVX512, mas presumivelmente irá faze-lo usando dois ciclos de relógio para executar uma instrução, tal como fazem agora com as operações AVX2 com uma largura de 128 bits no Zen e Zen+.

Será seguro assumir que tal será um beneficio para os programadores de videojogos. Será tambem um benefício dado que o emulador Open Source de PS3, o RPCS3 usa um conjunto de instruções AVX512 para ajudar a emular o processador Cell. E como a Sony já usou um emulador open source para a sua PS1 clássica, porque não ir buscar mais a esta fonte e despachar todos aqueles dispendiosos racks de PS3?

Vamos por as cartas na mesa e fazer algumas contas. Se o Zen representa um ganho de 50% no número de instruções por ciclo de relógio face ao Jaguar, e se o Zen 2 mete ainda mais 15% em cima disso, tudo o que falta fazer é escalar as velocidades de relógio de 1.6 para 2.8 Ghz para percebermos que os ganhos de performance deverão ser de 3X. E isto deve ser encarado pelo lado seguro pois as velocidades de relógio não devem ir abaixo disso e tudo o que tome partido do SMT irá ver ganhos de performance adicional, bem como qualquer trabalho com um peso significativo na virgula flutuante irá ver muito mais do que 15% de ganhos devido à “datapath” dupla do Zen. Tudo somado o ganho em performance de CPU deverá ser muito semelhante à vista entre a sexta e sétima geração de consolas, muito mais do que no pálido ganho entre a sétima e a oitava.

Uma vista do Infinity Fabric num CCX de 4 núcleos



Mark Cerny disse em tempos que um dos objectivos do design da PS4 era eliminar gargalos. Apesar de o Jaguar se ter conseguido portar muito bem na presente geração, a realidade é que ele está a reter a evolução dos jogos quando comparado com o PC. Um CPU com arquitectura Zen 2 no coração das próximas consolas seria um passo de gigante na rectificação dessa situação.

Quanto ao GPU ele é claramente uma das peças cujas especificações são mais relevantes numa consola, mesmo que a sua performance não seja critica para todos os aspectos da sua função técnica, ele é o ponto onde se focam todas as discussões sobre as capacidades da consola, e o usado para directamente informar os clientes da performance global da mesma. Nesse sentido no futuro a arquitectura Navi da AMD é um tópico em que muitos que estão a esperar pela próxima geração de consolas estão a focar o seu interesse .

Nesta altura temos de admitir que não se sabe muito sobre o Navi, mas vamos focar-nos no que se sabe. Sabe-se pelos mapas temporais (roadmaps) da AMD que o Navi será lançado na litografia de 7nm e será lançado em 2019. Sabe-se também que será um design monolítico e não um chiplet. Os pontos chave da sua arquitectura são a escalabilidade e o suporte de memória de próxima geração. E se próxima geração, pelos anúncios de trabalho da AMD, pode significar GDDR6, o conceito de escalabilidade está, para já, muito mais nebuloso.

Mas mais importante do que o que sabemos poderá ser o que não sabemos – A Navi será realmente ainda GCN? Numa dada altura a Navi parecia existir na arquitectura GCN, mas noticias mais recentes sugerem que ela é uma nova arquitectura. Dado o tempo que esteve em desenvolvimento e os rumores de elevada colaboração da Sony no seu desenvolvimento, é fácil perceber-se onde a narrativa acabaria. Mas no entanto esta situação parece conflituar com os últimos roadmaps conhecidos da AMD.



A tentativa de percepção do contexto da Navi levou muitos pensar no limite de 64 Compute Units do GCN, mas a AMD clarificou que tal não era o caso. No entanto as comparações de performance entre a Vega 56 e a Vega 64 mostram que há uma curva com retornos diminuídos para a arquitectura (basicamente os ganhos não crescem na mesma proporção nos limites superiores de CUs como nos inferiores). Se a Navi realmente estivesse limitada no mesmo tamanho e velocidades de relógio a sua performance máxima teórica seria entre 12 e 13 Tflops, assumindo que os cálculos aritméticos seriam essencialmente ditados pela sua herança GCN.

David Wang, da Radeon Technology Group também deu a conhecer que uma solução estilo Crossfire com múltiplos GPUs sofreria do mesmo tipo de problemas de performance que um sistema multi GPU tradicional, tornando este caminho pouco atractivo para a AMD, e em geral para as próximas consolas.

Ora se a Navi é um design CGN, não devemos à partida esperar um salto drástico das características e performances da Vega, pelo que é importante que se compreenda aquilo que distingue a Vega. Um Controlador de cache de alta largura de banda (HBCC) afirma lidar de forma inteligente com a a gestão da memória video (VRAM), impedindo frame buffers maiores do que o necessário. E isto é importante dado que os presentes títulos, a resoluções 4K, podem chegar a ter frame buffers de 11 GB.

No que toca aos primitive shaders. aqueles que são activados pelo próprio GPU geram as suas próprias chamadas de desenho (draw calls), potencialmente libertando o CPU. Algo comparável poderia ser os mesh shaders da arquitectura Nvidia Turing, mas dada a falta de documentação precisa é difícil comparar os dois.

O Draw-Stream Bit Rasterizing (DSBR) é algo que tenta tomar como emprestado algumas das vantagens do tiled rendering que se tornaram tão populares em aparelhos móveis ao descartar operações desnecessárias, melhorando a eficiência e o consumo energético. A Vega tambem possui Delta Color Compression (DCC) e Rapid Packed Math (RPM), sendo que ambos já estão presentes no GPU da PS4 PRO, sendo no entanto sub-utilizados. O RPM permite o uso de FP16 em operações de menor precisão, e pode dar aumentos de 10% ou mais em alguns casos.



A realidade é que há inúmeras alterações ao GCN desde que a PS4 e Xbox lançaram, e especialmente se tomarmos em conta que, apesar de alterações, os seus GPUS são GCN de primeira geração e o Vega é quinta geração. Daí ser importante ter uma perspectiva da evolução do GCN, nomeadamente aumentos de caches, melhorias de caches, integração do infinity fabric, avanços na voltagem e escalamento de frequências (AVFS), bem como o chamado clock-gating.

O grande problema da AMD nos GPUs existentes, e que não deverá acontecer com os modelos mais recentes a serem lançados em 2019 (caso da Radeon 7) é que grande parte destas características da VEGA foram lançadas com problemas, sendo que apenas algumas são utilizadas e mesmo assim apenas se forem especificamente chamadas. Muitas outras estão inutilizadas e sem suporte.

As boas notícias são que nas consolas a AMD pode rectificar todos estes problemas, e Microsoft e Sony podem trabalhar do seu lado para especificamente utilizar as características não utilizadas. É perfeitamente possível que muita da performance da Vega esteja na mesma dado os problemas nestas características, pelo que há certamente espaço para melhorias. E mais, ainda haverá muito que a Navi fará e que não se conhece, apesar que as patentes da AMD podem dar umas pistas.

Para começar temos os rumores de características especificas relacionadas com Inteligência Artificial. Se tal tem a ver com funções de remoção de ruido (auxiliar de Ray Tracing) ou mero treino não se sabe, mas seja como for tal parece ser um salto significativo. Outros exemplos incluem registos para ficheiros vectoriais, rasterização paralela de micro poligonos, descompressão de imagem baseada em regiões, alocação dinâmica de recursos de shaders, uso de compute shaders como vertex shaders (o Cerny está metido nesta tecnologia), tamanho variavel de wavefronts, exportação de pixel shaders fora de ordem, etc.
Algumas destas patentes devem estar já em efeito em GPUs AMD, mas o tema comum é simples: Melhor uso de recursos, melhor e mais eficiente uso da memória,  e manter o pipeline de funcionamento bem alimentado a tempo inteiro. A AMD também publicitou publicamente que desviou engenheiros da equipa do CPU ZEN para o Radeon Tecnology Group para especificamente se focar na melhoria das características de consumo energético, numa tentativa de aproximar a sua performance por Watt da existente nas placas Nvidia.

Uma patente significativa muda a forma como os buffers de memória são alocados em sistemas heterogéneos (memória única e partilhada) que incluem múltiplos utilizadores de memória, tais como o CPU e GPU. A PS4 sabe-se que sofre uma penalização na largura de banda global disponível quando o CPU pede dados em paralelo com o GPU, algo que esta situação pode resolver. A AMD tem várias outras patentes especificas para sistemas HSA semelhantes a esta. Os CPUs ZEN podem usar até 50 GB/s de largura de banda só por si, o que torna esta questão crucial para a performance do sistema.



Particular interesse vai para a arquitectura “Super SIMD” que traz memórias da VLIW que precedeu o GCN. O Super SIMD parece uma situação radicalmente diferente dos atuais designs GCN pelo que poderá não ser vista no NAVI, mas apenas na próxima geração AMD, mas recorde-se que nada ainda sabemos da Navi. E esta é uma tecnologia a ter-se em conta!

Tanto Sony e Microsoft estão também a trabalhar neste campo gráfico, de forma independente. Várias patentes apareceram sobre mitigação do efeito de “tearing”, remoção de chamadas de desenho desnecessárias, “displacement directed tesselation”, shading a ritmos variados, compressão de saídas de vertex shaders, detecção de bandas de cor imprecisas e correcção das mesmas. Aliás o Mark Cerny orgulhosamente referiu que muitos dos conceitos da Sony foram colocados em arquitecturas de GPUs AMD.

Há rumores persistentes que a AMD dedicou recursos significativos ao desenvolvimento da arquitectura Navi, especificamente para uso da Sony (2/3 da equipa de pesquisa). Apesar de parecer sensacionalista, o histórico de colaboração da Sony com a AMD, tanto nos APUs da PS4 como da PS4 PRO levaram a que as alterações da Sony passassem a fazer parte do DNA do GCN, e a prova dos esforços patenteada nesta colaboração são um ponto forte para se acreditar nesta história. A AMD atravessava uma fase má e a secção de personalização de hardware foi central para o seu renascimento, sendo que os benefícios de que o PC pode beneficiar da optimização consola são atractivos para a marca.

Se os rumores sobre a Navi forem verdadeiros, a Microsoft poderá até beneficiar do dinheiro que a Sony verteu no design. Não seria a primeira vez que uma consola da Microsoft beneficia dos esforços da Sony. O design do CPU Xenon da Xbox 360 possui muitas semelhanças com o Cell da PS3.
Mas outros benefícios fluem tambem no outro sentido. A Microsoft de forma extensa personalizou o CPU e o GPU da Scorpio da Xbox One X, ao ponto que o design deixar de possuir a designação “Jaguar”.
Mas é tempo de mais matemática. A AMD refere que há uma melhoria de 2x na densidade dos seus produtos ao passar-se de 14 nm para 7 nm. Para se testar isso olhamos para o design da Vega a 14 nm e que ocupa 484 mm^2 e 12.5 mil milhões de transistors. A versão de 7nm do Vega ocupa 331 mm^2 com 13.2 mil milhões de transístores (de notar que a contagem de transístores  inclui a adição de FP 64, INT 8, INT 4 e o infinity fabric 2.0). A Vega 14 nm tem 25.9 milhões de transístores por milímetro quadrado. A Vega 7 nm tem 39.9 milhões de transístores por milímetro quadrado, o que representa um aumento de densidade de 54% (nem tudo escala da mesma forma, tal como os controladores de memória).
No que toca a expectativas de performance, Lisa Su refere que a AMD teria produtos gráficos para competir em toda a gama. A Vega inicial não compete sequer com a RTX 2070 (veremos a Radeon 7 se consegue entrar nesse campo ao ser anunciada como competidora da RTX 2080, sem Ray Tracing), pelo que é interessante pensar-se sobre como se portará a Navi nesse campo.
Mas felizmente há rumores sobre a performance da Navi. Uma suposta RX 380 8 GB é referida como tendo um TDP de 150 w, com 48 CU e que se revela 15% mais rápida que a RX Vega 64. Se tal for verdade, removendo o consumo das memórias e outros, devemos estar no reino dos 120 W de TDP, o ideal para um APU que aponte para os 150 W, tl como acontece na presente geração de consolas. A fonte deste rumor estava correcta sobre o chiplet de Input Output usado no design do CPU de servidores da AMD, o Rome, pelo que o rumor sobre este GPU merece atenção.

CONTINUA

Fonte



 

 



error: Conteúdo protegido