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.