2013/09/13

Samsung apressa-se a dizer que também terá Smartphones de 64bits

Embora tivessem surgido alguns rumores de que a Apple se preparava para lançar um CPU de 64bits no novo iPhone 5S, penso que a maioria das pessoas terá sido apanhada desprevenida, pois nada faria prever que o fizesse tão rapidamente. Talvez por isso a Samsung já tenha vindo a público dizer que nos seus próximos topos de gama também poderemos contar com CPUs de 64 bits, embora ainda possa demorar algum tempo.

Muitas pessoas assumem (erradamente) que um CPU de 64bits apenas faz sentido para endereçar mais que 4GB de memória - o mesmo limite que também obrigou a que nos desktops se migrasse para CPUs e sistemas operativos de 64 bits. Mas a verdade é que um CPU de 64bits pode ter muitas vantagens mesmo quando é usado com menos de 4GB de memória. Este novos chips são baseados na aquitectura ARMv8 - e que a seu tempo serão adoptados por todos os fabricantes - e a sua grande vantagem é incluírem mais e maiores registos.

Se se lembram de como funciona um CPU, saberão que os registos são os elementos fundamentais para o funcionamento de um CPU, e cada registo extra permite ampliar aquilo que se pode fazer sem recorrer às "lentas" memórias externas que prejudicam o desempenho. O inconveniente é que para tirar partido de tudo isto será necessário ter um sistema adaptado. No caso da Apple, já se apressou a ter um iOS7 com kernel e drivers nativos em 64bits, e facilitando a recompilação das apps para 64bits; e uma vez que todo o sistema de desenvolvimento e lançamento está sob o seu controlo, pode fazê-lo de forma mais rápida e simples.

No Android vamos ter que esperar para ver como isso irá acontecer (neste momento ainda nem sequer suporta 64bits) sendo provável que ainda se esteja a um ano de distância de nos começarmos a preocupar com isso: afinal, os fabricantes ainda vão ter que fazer render os novos Snapdragon acabados de lançar, e a Samsung só no final do ano terá um Exynos octa-core que realmente poderá funcionar em pleno.

Vai ser interessante colocar o novo Apple A7 de 64 bits à prova e ver que tal se comporta face aos melhores CPUs ARM de 32bits da actualidade. E aí veremos se todas as vantagens teóricas dos 64bits realmente se fazem notar na prática. Actualização: parece que sim.

15 comentários:

  1. Acho apenas um pouco ridículo o tipo de títulos que se vê por aí a dizer que isto é uma vitória da Apple... Não tem nada a ver!
    A ARM já tinha definido a sua arquitectura a 64-bits e o salto para 64 bits já estava planeado ocorrer em 2014. Alguém seria o primeiro mas quem é irrelevante.

    No fundo, isto não é uma luta entre Samsung e Apple mas sim entre ARM e Intel. Estou bastante interessado em ver como o SoC da Apple se compara com o Bay Trail da Intel.
    E se a ARM vai mesmo decidir aventurar-se na luta contra a Intel, quando esta a decidiu atacar em força.

    ResponderEliminar
    Respostas
    1. Obrigado por colocares algum bom senso nesta confusão toda. Quem ler os posts recentes daqui no AadM até fica com a ideia que 64bits fazem magia. O A7 será mais rápido, sim, mas a maior parte do benefício virá de uma nova geração de ARM e processo de fabrico melhorado, tal como tem acontecido nos cpus anteriores.

      Será que se esqueceram da transição para amd64 há 10 anos? Apesar de também ter sensivelmente o dobro dos registos, não foi por recompilar para 64bits que magicamente ficou mais rápido. Se não se tiver cuidado, *até acontece o oposto*. Isto porque nos programas que *realmente* precisam de cpu, costumam ter partes de código em asm. Ora este asm precisa de ser reescrito para 64bits, ou voltar ao código "genérico" mais lento.

      A questão só ficará devidamente desmistificada quando os ARMv8 chegarem ao android e a comunidade fizer benchmarks com o mesmo software em builds de 32bits e 64bits. Mas até lá, um pouco de moderação, amigo Carlos!...

      Eliminar
    2. @Tiago

      Moderação? Eu estou precisamente a chamar a atenção para esses aspectos do 32 vs 64bits. (E até já disse que muito provavelmente este ano de transição vai fazer com que quem aposte no 5S vá servir de "beta tester" para resolver os eventuais problemas que forem surgindo no iOS7 64bits, apps de 64 bits, etc.)

      Eliminar
    3. Na verdade eu devia ter escrito isto no post do 5c/5s, então o meu comentário parece que veio do nada. Mas referia-me a frases como "Uma mudança que duplica os registos internos disponíveis, e que teoricamente duplica o desempenho." e "Com mais registos e mais "largos", o A7 pode processar o dobro da informação à mesma frequência" seguido de "a Apple fez o trabalho de casa, com o iOS7 e todas as apps de origem a virem nativamente compiladas para 64 bits".

      Para começar dá logo a entender que se toda a gente se esforçar muito até se consegue realmente o dobro de velocidade, o que é impossível excepto em benchmarks triviais de multiplicação de inteiros que não fazem nada de útil. Mas mesmo para lá disso, parece que está tudo a postos para ficarmos com o telemóvel mais rápido em tudo, dado que a apple já fez o trabalho de casa, e só falta os dos developers recompilarem e voilá. A realidade é que vai dar trabalho aos developers para realmente tirar partido do cpu, e as aplicações típicas de telemóvel não são onde os 64bits mais brilham. E não estou a falar de beta testing de bugs de 64bits, estou a falar da tal performance teórica onde se apoia o marketing.

      E em relação ao post onde estamos a comentar: "Vai ser interessante colocar o novo Apple A7 de 64 bits à prova e ver que tal se comporta face aos melhores CPUs ARM de 32bits da actualidade."

      Não vai ser assim tão interessante porque mesmo os melhores cpus da actualidade são de uma geração diferente e é normal que sejam piores, independentemente dos bits. Só será uma comparação justa de análise aos 64bits quando se tiver a mesma aplicação a correr no mesmo cpu com builds de 32bits e 64bits, como referi no comentário anterior.

      Posto isto, saúdo a apple por ter iniciado a era dos 64bits dos telemóveis (apesar de não ter sido a apple a inventá-los), mas com moderação.

      Eliminar
    4. Tiago, acho que o Carlos Martins escreveu um texto bem ponderado e a explicar as potenciais vantagens mas que nem tudo está disponível agora.

      Estava mais a criticar o sensacionalismo de outros sites, como o Pplware ou mesmo sites estrangeiros.

      Para esclarecer melhor o que pretendo dizer: esta chegada dos 64-bits ao iPhone não interessa á guerra Android/iOS, ou á guerra Apple/Samsung. Diz respeito isso sim á guerra ARM/Intel e não podia ser melhor novidade para a ARM no dia em que os novos Atom Bay Trail arrasaram com os Tegra 4.

      Eliminar
    5. @Tiago,

      Aquilo da Apple ter feito o "trabalho de casa" tem a ver com o facto de eles terem tudo nas mãos deles: podem criar o chip à sua medida, optimizar o iOS para tirar o máximo partido dele (kernel, drivers, etc, como disseram ter feito), e lançar as ferramentas para que os developers também o façam.

      O Google não terá tanta facilidade nisso, uma vez que pode lançar um Android a 64 bits, mas caberá aos parceiros optimizar aquilo para os seus chips específicos - basta olhar para o caso dos big.LITTLE, que já tem causado problemas suficiente para que se tire partido dele. (E o mesmo se aplica a qualquer parceiro; Samsung, Sony, etc... podem mexer numas coisas, mas outras são da responsabildade do próprio Google - esta divisão tornará mais difícil uma transição rápida para os 64 bits - tal como aconteceu nos desktops).

      Quanto à comparação, o que me interessa é mesmo comparar as coisas como elas são. Penso que nenhum utilizador está preocupado em saber se tem um Facebook compilado a 64 bits ou não - o que quer saber é se é rápido ou lento. Daí eu estar interessado em saber que tal é que esses ganhos "teóricos" do A7 se vão fazer notar (ou não) face a um Snapdragon 800, por exemplo.

      Imagino até que muitas das suas vantagens possam a não se fazer vir a notar em nada visível em termos do desempenho, mas poderão vir a fazer-se notar na autonomia (sendo mais poupado, por exemplo). Como disse... acho que vai ser interessante comparar.

      Eliminar
  2. Claro, até porque o nuclep dp SoC da Apple é 100% igual a todos os outros Arm da mesma arquitectura, aqui a ciencia está em saber aproveitar os recursos.

    ResponderEliminar
  3. Já há testes de benchmarks do iPhone 5s contra os actuais topo de gama (feitos pelo site GFX Bench) e bate-os a quase todos à excepção do Xperia Z Ultra no teste com renderização off-screen em Full HD. Já no teste com a renderização feita directamente na tela, o iPhone 5S ocupa o topo da tabela.
    http://img.ibxk.com.br/2013/9/materias/27033300912101747.jpg
    http://img.ibxk.com.br/2013/9/materias/27033300912101719.jpg

    ResponderEliminar
    Respostas
    1. On-screen é normal que os bata. A resolução do iPhone é bastante inferior á do G2 e Xperia Z Ultra. Nem sequer é 720p, quanto mais Full HD.
      Não que isto seja uma crítica relevante porque continuo a achar que ecrãs 720p são mais que suficientes para smartphones destes e Full HD trás mais problemas do que vantagens (mais consumo de energia, mais pixeis para os GPUs usarem...).

      Eliminar
    2. Este comentário foi removido pelo autor.

      Eliminar
    3. É fazer benchmarks para sistemas de 64 bits ! Logo se vê em que lugar fica o iPhone 5s ! Agora sujeitar, estrangular o iPhone 5s a testes para 32 bits é o mesmo que dizer, a um Ferrari que só dá o máximo numa pista de corridas "Olhe, venha aqui correr numa rua estreitinha" :)

      Não digo que não tenha que correr numa rua estreitinha (as apps de 32 bits), agora é preciso ver é com apps de 64 bits. Claro que não é: "Veja lá a diferença entre o acesso ao seu Facebook em 32 bits e em 64 bits. É, por exemplo em jogos. Não é por acaso que na keynote foi usado, para demonstrar as vantagens do sistema de 64 bits o Infinity Blade 3 ! Confessem lá - estavam a dar a Apple assim para o acabado, não estavam ? :)

      Eliminar
    4. Podem tirar os pontos de exclamação :) São a brincar. Mas tenho-me divertido bastante a ler o que escreve o pessoal da Samsung que foi apanhado com as calças na mão.

      P.S. Sei perfeitamente que o bom desempenho do Infinity Blade 3 na keynote não se deve só ao sistema de 64 bits.

      Eliminar
  4. para android n será tao problematico pq o dalvic e bionic abstraem isso aos Devs.
    agora kem usar NDK vai ter q partir pedra

    ResponderEliminar
  5. há 10 anos atrás viu-se que no mainstream os processadores 64 bits não vingaram para o mundo dos utilizadores, não trouxeram nenhuma vantagem abismar, e a chatisse que foi ter aplicações de 32 e 64; a resposta estava na utilização de mais cores, e mais rápidos, mais até do que 1 só core muito rápido; continuo a achar que é mais marketing do que será na ralidade quando tudo for estandardizado... a 64 bits nos SoC. o mesmo se passou com as consolas desde a génese com a corrida aos bits e viu-se que a resposta não estava em ter processadores com mais bits...
    a história repete-se de novo?! será mesmo uma esmagadora melhoria?! não acredito.

    ResponderEliminar