Cell… O antigo processador da PS3 que nunca foi explorado convenientemente.

O Cell foi a grande causa do menor sucesso da Playstation 3. Mas o certo é que ele era um processador super capaz, e que ainda hoje em dia tem potencialmente a capacidade de bater o o que de melhor se faz a nível de processadores.

Quando do lançamento da PS3, a Sony referia-se ao Cell como sendo uma espécie de super computador.

Os anos passaram-se e a promessa de super computador gorou-se. A PS3 passou e nunca chegamos a ver nada na Playstation que revolucionasse, algo que a Xbox 360 não pudesse acompanhar, ou algo que ainda hoje seja impossível de emular.

A realidade é que o Cell nasceu… e morreu… sem nunca se ter conseguido explorar o seu total potencial.

O Cell era tremendamente potente. A forma como funcionava tornavam-no mais próximo das capacidades de GPGPU de um GPU do que de um CPU a nível da capacidade de processamento, e isso quer dizer que ele era pura e simplesmente um monstro para a altura. Tão poderoso que Michael van der Leeuw, co-director da Guerrilla Games disse numa entrevista recente que ele O cell era mais poderoso que os atuais CPUs topo de gama da Intel.



Mesmo os CPUs de desktop de hoje em dia, os mais rápidos que a Intel oferece, não são tão poderosos como o CPU Cell, mas é muito dificil tirar a performance do Cell. Penso que estava muito à frente do seu tempo, uma vez que o seu funcionamento é mais aproximado daquilo que vemos nos GPUs actuais, mas não estava muito bem balanceado e era muito dificil de ser usado. Estava muito acima em termos de capacidade, mas muito abaixo em termos de facilidade de uso, mas o certo é que era extremamente visionário.

O grande problema do Cell passava essencialmente por dois factores.

  • Requeria processamento paralelo em vários núcleos, algo que na altura era algo muito, mas muito pouco explorado.
  • Os vários núcleos não comunicavam entre si, e a gestão dessa comunicação basicamente não existia, tendo de ser programada manualmente no PPE (o núcleo Power PC).

Estas duas situações criavam aos programadores uma complexidade que, especialmente para a época, era demasiada. Basicamente era uma usina de performance, mas obtê-la era um processo complicado e frustrante, sendo que o Cell morreu sem que alguma vez tivesse sido devidamente explorado.

Van der Leeuw refere ainda sobre o Cell:



A PlayStation 3 tinha uma carrada de capacidade.

Fazer uso dela e retirar a performance da PS3 era dificil porque tinhas os SPUs e a sua performance não era fácil de obter. Tinhas de escrever uma carrada de código de uso especial. Mas uma vez isso feito tinhamos a  fisica, os ragdols e muitas outras coisas que experimentamos, e era excelente. Mas infelizmente isso demorava muito tempo. E era preciso uma equipa com elevada perícia para o fazer.

Basicamente a arquitectura x86 não é, mesmo actualmente, mais capaz que o Cell. No entanto a vantagem que possui é a sua extrema facilidade de uso que permite que a sua capacidade seja obtida sem grande esforço. O resultado é que, mesmo que menos poderoso, os resultados podem até ser superiores, pois a potência que há é fácil de ser obtida.

Basicamente a complexidade do Cell que sempre impediu o uso da sua capacidade total, e a facilidade de uso do x86 é o que permite a emulação do Cell nos processadores x86. Porque a nível de potência teórica pura o Cell se usado apenas com funções CPU nunca poderia ser emulado pelos sistemas actuais.

Num comentário ao artigo original de Van der Leeuw, alguem refere que o que é dito é falso e que forma alguma o Cell se poderia bater com a sua workstation de 4.49 Ghz e 16 núcleos. Mas por incrível que possa parecer, a realidade é só uma: Nenhum processador actual é rápido ou potente o suficiente para interceptar um GPU e servir de co-processador ao seu trabalho! Mas o Cell era! E só isso mostra a sua performance. Foi aliás neste tipo de tarefas que o poder do Cell foi usado maioritáriamente, uma vez que o GPU da PS3 deixava algo a desejar a nível de performances, e não fosse o Cell, a PS3 teria ficado muito em segundo plano face à Xbox 360. Resumidamente, mesmo que inferior em potencia teórica face a alguns processadores atuais, o cell possuia capacidades que os atuais não possuem. E era isso que o tornava uma besta de performance e daí a referência a ainda hoje ser superior ao que de melhor se faz.

Como grande vantagem do Cell ficou a experiência na sua programação, algo que é agora extremamente útil no uso do GPGPU e no multi núcleo. Várias técnicas de programação foram desenvolvidas e experimentadas com a PS3 devido ao Cell, e estão agora maturadas o suficiente para poderem ser usadas de forma directa e sem necessidade de experimentação.



newest oldest
Notify of
By-mission
Visitante
By-mission

Lembro que na altura de 2004 a idéia era usar apenas o Cell sem um GPU para renderizar os jogos… Digo aqueles primeiros dvikits tinha unicamente o Cell e nada mais… Com o anúncio da Xbox 360 a Sony se viu encurralada, não só oque a console tinha era proporcionalmente mais potente como era mais fácil de programar e aos 45 minutos do segundo tempo a Sony se viu obrigada a comprar uma caríssima e fraca GPU NVIDIA que na altura deve ter feito um rio de dinheiro nas costas da Sony…
Mesmo assim a Sony teve uma boa parcela de culpa pois se tens uma uma tecnologia extremamente nova para a época instruções em japonês complicaram ainda mais as vidas dos devs… Fora o enorme subsídio para a console.
Falando em dinheiro Sony Toshiba e IBM devem ter morrido verdadeiras fortunas para desenvolver o Cell pois com excessão de alguns protótipos de tv nunca foi usado para outra coisa além da PS3.

Horas se hoje a PS4 é a menina dos olhos da Sony a PS3 deve ter dado um senhor prejuízo com desenvolvimento, subsídio e ter de enviar equipes japonesas aos estúdios para estes tentarem entender o Cell um verdadeiro bicho de sete cabeças (1 CPU e 7 SPUs).

Carlos Zidane
Visitante
Carlos Zidane

Boa By Mission! Informações legais pra complementar o artigo. Não sabia dessa parte onde o RSX estava fora.

Apesar de todos os problemas tenho carinho enorme por este console, foi uma época de auge pra mim no prazer de jogar.

By-mission
Visitante
By-mission

Aquela apresentação do icômico dualshock bumerangue era parte da visão do Ken Kutaragi. Se olhares para a PS3 unicamente com o Cel ele estaria em 256 Gflops de potência. Se este fosse lançado com o Cell seria uma tareada frente ao Xbox mas sairia em 2005 e até com alguma vantagem no preço face o Xbox.

bruno
Visitante
bruno

By-mission… tens provas de que isso realmente ocorreu? Eu ja me deparei com esse rumor ha bastante tempo, mas a nocao que tenho e que nao passou de um rumor..

A nocao que tenho e que o atraso no lancamento da PS3 se deveu a problemas com a drive bluray.

By-mission
Visitante
By-mission

Opa boa tarde a todos!
Conforme fui lendo os comentários aqui no site vejo que devia ter colocado a fonte do que mencionei, pois realmente não lembrava onde tinha lido sobre sobre a PS3 ser lancado unicamente com o Cell e sem GPU, bom aqui está, foi no documentário da Nauthdog da IGN.
Boa leitura a todos!

https://ca.ign.com/articles/2013/10/08/playstation-3-was-delayed-originally-planned-for-2005

https://www.ign.com/articles/2013/10/04/rising-to-greatness-the-history-of-naughty-dog

Carlos Zidane
Visitante
Carlos Zidane

Agora sim By Mission. Desculpe qualquer coisa, mas como foram levantadas dúvidas pelo pessoal eu me lembrei das discussões que andam acontecendo por conta de rumores.
Na Eurogamer mesmo o povo tá brigando de faca por conta dos boatos da próxima geração, onde um afirma de pé junto uma coisa e outro jura valendo a vida o contrário.
Mas o pessoal aqui é mais sensato aleluia.

By-mission
Visitante
By-mission

Os caixistas estão empovorosos com artigo da Digital Foundry acreditar nos 12Tflop’s RDNA e assim assumindo que a Xbox séries X é mais potente que a PS5.

Carlos Zidane
Visitante
Carlos Zidane

By Mission, sim, o pessoal do Xbox costuma ser bem emotivo por qualquer relance de inferioridade ou superioridade técnica. E o compromisso com a realidade passa longe como a órbita de Plutão. É bem cômico… E trágico kk.
Mas o pessoal PS não deixa nada barato, aí vira rinha de galo.

Carlos Zidane
Visitante
Carlos Zidane

Boa tarde Mário, os pontos principais de controvérsia parecem ser;
– 12 ou menos Tflop
– RDNA ou GCN nas declarações do Phil Spencer sobre 8x One S e 2x o One X
– O preço, como seria possível algo como um GPU de topo num console com algo superior a uma 5700 XT + NvME + RT por preços populares
– Sobre os 2 GHz de GPU dentro de espaço limitado
– Lockhart
– Formato do Series X e até mesmo do devkit do PS5 em V
– RDNA 1.0 ou 2.0
– Quem anuncia preço e specs primeiro e como isso será determinante, além de possíveis manobras de subsídio

Cada torcida defende rumores e teorias que mais convém, mas certezas mesmo é que está todo mundo a deriva com o jogo das empresas.

Edit: faz muito bem em não ler, eu ocasionalmente entro pra ver o “termômetro do povo” mas lá é um “Gamevicio” com seus gladiadores que ofendem a mãe se você discordar

By-mission
Visitante
By-mission

Opa tranquilo @Carlos Zidane sempre tem que se questionar mesmo…
O caso foi que li essa matéria a muito tempo atrás e realmente não lembrava do onde li mas sim do conteúdo… Mas está certo tem que se ter alguma fonte. Só demorei a encontrar por ser um assunto antigo e na época eu li em uma revista de papel mesmo.

Shin
Visitante
Shin

Se você for olhar gerações de consoles um design de arquitetura ganha e com isso uma nova geração é baseado nele. Isso só não valeu para o PS1, o PS1 ganhou a geração mas todos os consoles posteriores foram diferentes dele, até o PS2. Tanto Xbox como GC tinham heranças na arquitetura do Panasonic M2, a diferença fundamental é que no fim do dia a Microsoft estava com um sistema gráfico. A Sony que começou a tocar o projeto Cell com a IBM e Hitachi desde 2001 viu que para responder a Microsoft no prazo eles precisavam adotar um sistema gráfico externo, olharam o bem sucedido sucesso entre Microsoft e Nvidia e adotaram o sistema gráfico da Nvidia. Só que a Microsoft já estava um grau a frente nisso quando deixa a Nvidia e vai adotar um sistema gráfico da ATI. A ATI já tinha Shaders Unificados e isso gerou o transtorno Cell.

O que tornou complexo o trabalho é que os desenvolvedores precisavam usar Cell+RSX com as SPEs emulando código gráfico programado apenas para alcançar a perfomance do Xenos. Se você pensar no Cell apenas como uma interface lógica era só benefícios mas era 48SPE para o Xbox 360 contra 8 Vertex Shader para o RSX. Então, embora fosse 8x mais que o primeiro Xbox o poder de sombreamento do RSX era inferior a metade do 360.

Veja por exemplo no Beyond3D forum uma parte do relato desse desenvolvedor.
https://forum.beyond3d.com/threads/rsx-vertex-input-limited-fkatct.36804/

“Sou um programador de 360 ​​/ PS3 por profissão, focado em gráficos e otimização. É bastante raro eu publicar, mas acabei de sair de uma longa crise e tenho navegado nos fóruns mais do que o normal para relaxar. Aliás, a maior parte dessa crise foi gastamos tentando fazer com que o PS3 correspondesse à taxa de quadros do 360. Ele fica aquém, mas atinge 30fps, então estamos bem.

A imagem do Gran Turismo postada acima é uma boa chance, mas é uma prova do talento da equipe de desenvolvimento, não apenas do hardware. Os shaders de vértice / pixel são escritos em HLSL e podem ser compilados para rodar no PS3 / 360, embora você possa ajustá-los para se adequarem ao console. Acho que o que quero dizer aqui é que, se você pegar o mesmo modelo 3D do veículo e os mesmos shaders que o tornam bonito e compilar / executá-los no 360, ele terá o mesmo visual e funcionará em uma taxa de quadros maior do que no PS3 . Isso ocorre porque o gpu do PS3 não é tão bom quanto o 360 “.

Embora o Xbox 360 tivesse um raster um pouco mais limitado, o sombreamento era muito mais avançado e permitia o dobro de texturas e efeitos. Isso colocou um par de diferença nos jogos, uma complexidade grande no desenvolvimento que a Sony precisou diluir com uma mistura de amostras de design melhor nos seus jogos próprios, a criação de ferramentas e métodos já com soluções pre definidas e muita publicidade.

Usando o Cell dava ao RSX o que hoje conhecemos nas GPUs modernas como acelerador de descarte de primitivas. Em uma configuração PPE+SPE+RSX cada SPE poderia selecionar um conjunto de primitivos com base na localização do espaço de tela, e com isso o que era passado para a GPU era um prepasse com a geometria compilada. Isso permitia modelos 20 a 30% mais detalhados que no Xbox 360 também permitia testes físicos e fragmentos melhores, exemplo God of War 3. Um exemplo é como o Cell poderia representar mais poder que o Jaguar do PS4 em simulações.
http://media.redgamingtech.com/rgt-website/2014/10/ubisoft-cloth-simulation-ps4-vs-ps3.jpg

Você poderia usar PPE+RSX+SPE adotando um modelo de pós processamento. Isso tornava o sistema melhor com Deferred Shaders, permitindo que o Cell colha a informação de Luz e sombras e reenvie a GPU como componente Offpass. Essa foi a solução mais apoiada na maioria dos jogos mas limitava o console a renderizar a no máximo 30fps devido ao tamanho muito maior do pipeline.

No fim você estava sempre perdendo e gastando tempo de produção para resolver problemas da arquitetura ao invés de problemas do jogo.

O Cell fez a Sony perder aquela geração a nível de desenvolvimento e por isso vemos a nova geração com duas APUs então dessa vez a Sony ganha pois investe mais a GPU e no Bus externo, a Microsoft perde por investir mais em computação frontal e bus interno. Como produto disso temos o Xbox One X que começa onde o PS4 e PS4pro pararam e a nova geração é sobre continuar o One X mas com o olhar naquilo que a Nvidia fez nos últimos anos.

Fernando
Visitante
Fernando

Uma ótima explicação técnica do por que o Cell foi um grande erro e como o PS4 foi um grande acerto em abandonar as arquiteturas exóticas.

bruno
Visitante
bruno

Curiosamente a MS optou pro arquiteturas exoticas ao ir buscar 3 PPUs para o CPU da 360.

bruno
Visitante
bruno

Shin, esse exemplo do beyond e de 2006, precisamente na mesma altura em que Gabe Newell decidiu queixar-se sobre a PS3 e o tipo queixa-se de ter que programar partes graficas para os SPUs. Pelas reaccoes que tens a historia dele, ves perfeitamente que muita gente o acusa de se estar a queixar de nao poder programar genericamente para o PC.Mas basicamente e o motivo pelo qual no inicio muita gente teve dificuldade em habituar-se ao CPU. o facto de o ter que usar para calculo de geometria quando estavam habituados a faze-lo somente no GPU.

Ora os SPUs do cell nao sao o tipico core generico de um CPU mas unidades de calculor vectorial, logo lida com primitivas e geometria entre outras coisas, enquanto o RSX estava reservado para os processos shader (ou sombreamento como tu te referes) e rasterizacao. O que descreves depois basicamente o foi o ganho/perda que ocorreu quando os unified shaders chegaram. Alias, a analise aos unified shaders por sites profissionais referem isso mesmo. Basicamente os unified shaders eram versateis na medida em que concentravam em si todas as funcoes que antes vinham me stream processors, ou shader processors especializados.. O ganho, e que no fim a versatilidade permitia potencialmente mais unidades dedicadas a um certo tipo de processamento do que no cado dos stream processores especializados.

Sobre o bem sucedido sucesso da parceria MS/nVidia, a Xbox original gerou perdas a MS (dai a empresa ter optado por AMD na 360) a consola so vendeu 21 milhoes de unidades e so durou 4 anos no mercado… onde esteve o bem sucedido sucesso?

Sobre a Xbox original, ela nao estava equipada com o cpu intel e um gpu nVidia? Ao que tenho entendido, o seu hardware quase exclusivamente PC sem muita especializacao… de onde e que veio essa hisotoria do Panasonic M2?

Vou so dizer isto – o erro de muita gente na comparacao PS3 e PS4 e considerar o CELL apenas um CPU. Nao.. tem que o comparar com o APU na sua totalidade. O CELL foi o primeiro processador heterogene do mercado. Ele inspirou a AMD criar a inha fusion que resultou nos APUs atuais. A comparacao correta e Jaguar vs PPU e GPU vs SPUsCell + RSX. As compute units, comparam-se ao SPUs.

Carlos Zidane
Visitante
Carlos Zidane

Ótimos comentários como sempre Shin.
Pena alguma coisa soar estranha como questões relacionadas ao Switch, mas no geral muito interessante.

daniel
Visitante
daniel

Ele fala de sacanagem, para não parecer muito técnico sempre kkk.
Mas o Shin tem um conhecimento de hardware muito aprofundado, não há como negar, manja demais.

Shin
Visitante
Shin

E o Tegra X1 ele é como o miniCell, a Sony inicialmente tinha o objetivo de fazer versões compacta do Cell para futuras gerações do PSP mas o advento de computação sobre GPU fizeram eles abandonar essa idéia. A Nvidia obtém o Project Denver para disputar com a Intel no mercado de notebooks mas, uma vez que pretendia usar patentes Via acabou ameaçada pela Intel, acabou fazendo isso nos compactos onde o primeiro produto foi o Zune da Microsoft, um fiasco. Depois de tentar convencer a Sony que recusou e preferiu Qualcomm exatamente porque esta comprou a divisão Mobility da ATi e fundou suas GPUs Adreno, a Nvidia conseguiu um acordo com a Motorola que fez a linha Atrix com seu hardware. No fim a Nvidia perdeu espaço por que seus chips não eram eficientes e Denver é arremessado para a computação e eles fazem seu sistema de jogo os Shields o que atrai a Nintendo que viu qie as patentes que havia comprado da empresa do Doutor Wei, ex dono da ArtX que foi comprada pla ATi , e então pertencia a AMD não teria mais benefícios em fazer.um hardware em casa. Por isso a Nintendo vai atrás da Nvidia pois eles tinha essa arquitetura completa capaz de ser portabilizada.

O Tegra X1 ele tem a abordagem de usar os CUDAs dividido os SMs em operações de computação desassociada dos gráfico e isso permite ARM+CUDA+Gráficos. Isso permite que eles interprete arquiteturas não nativas a custa dos gráficos e por isso o Switch acaba ganhando rapidamente muito ports de todo tipo de sistema, até do PS3, assim como o Shield TV na mão de hacks virou uma poderosa ferramenta de emulação.

Portanto, podemos ver o futuro dos Tegra agora, com suas novas arquiteturas Tegra Xavier e o recente anunciado AGX Orin. Orin será um Tegra com 12 núcleos ARM Hercules e 32SMs Ampere, além de possuir um bloco dedicado a DLA. O que Orin pretende é conquistar poder equivalente a Drive Pegasus em um único par de chips.
https://images.anandtech.com/doci/12598/Orin_Roadmap_Car_678x452.png

Isso realmente me lembra do que a Sony estava pretendendo inicialmente com o Cell, em ter não apenas um processador mas 2 onde o Co-Processador viria com TMUs e ROPs, para um framebuffer e ambos estariam ligados por um Link dedicado. É exatamente o que a Nvidia está fazendo aqui, ligando dois Orin via NVLink. E se a Nintendo for esperta e continuar apoiando a Nvidia, Orin pode gerar um descendente para caber em um dispositivo portátil. Esse descendente pode permitir a Nintendo integrar um barramento proprietário para comunicação NVlink e permitir que um segundo chip seja usado (isso foi cogitado no TX1 mas e impossível na atualidade).

Desse modo, eles podem criar um futuro console que tenha um bom desempenho portátil mas se expanda ao ser aclopado. Algo que a Nintendo patenteou como divisão suplementar.
http://cdn3.dualshockers.com/wp-content/uploads/2015/12/Nintendo-Patent-Image-2.png

E esta é uma Feature tanto do DX12 como Vulkan, a compatibilidade de multi processamento assimétrico em sistema multi GPU.
https://cdn.wccftech.com/wp-content/uploads/2015/05/2QPXH2I.jpg

Como a Nintendo vai precisar provocar um salto geracional mais acentuado pois o Tegra X1 apenas dobrou a eficiência frente ao Wii U. Podemos entender que o salto geracional da Nintendo na próxima geração possivelmente será maior que entre o Wii e o Wii U. E se você pensar que o Wii U já superava o PS3 e o X360 em muitos recursos recursos, vai entender que em algum momento dos próximos 5 anos a Nintendo vai colocar no mercado uma plataforma quase ou tão poderosa como os consoles da próxima gen e o fará sem perder a portabilidade.

bruno
Visitante
bruno

Sim… O APU das actuais consolas tb é uma versão do cell. E muito mais desenvolvida que o regra X1