Roberto Colistete Jr.

Blog sobre computação científica e móvel : Mathematica, Python, CUDA, smartphone & tablets, Linux, etc

Archive for julho \27\UTC 2012

Escolhendo placa-de-vídeo e computador para cálculos em GPU com CUDA

Posted by robertocolistete em 27/07/2012

De 2007 para cá ficou muito acessível a computação paralela para GPU (Graphical Processing Units) usando CUDA (Compute Unified Device Architecture), que é uma arquitetura proprietária da NVidia e compatível somente com placas-de-vídeo da marca NVidia. A placa-de-vídeo se comunica com a CPU do computador e tem seu próprio processador (GPU) e memória.

Em Março de 2012 foi lançada a família Kepler das GPU’s NVidia, a anterior é a família Fermi. Ambas são recomendadas pois suportam cálculos de precisão dupla, muito comuns em aplicações científicas. A nomenclatura da NVidia é muito confusa, logo recomenda-se sempre pesquisar na Internet (além dos sites da NVidia citados acima, tabela do NotebookCheck, GPU-Review, etc) sobre a placa-de-vídeo em questão para saber os detalhes em termos de :

  • número de núcleos (em inglês “cores”), atualmente o mínimo é de 48 (p.e., GeForce GT 610) nos modelos de 2012, até 1536 (na GeForce GTX-680, vide matéria minha anterior);
  • velocidade da GPU, até família Fermi tinha shader speed com o dobro da core speed, agora na Kepler é a mesma frequência (mas quadruplicaram o número de núcleos). A core speed é da ordem de centenas de MHz;
  • memória : tamanho (GB), tipo (DDR3 ou GDD5 que é mais rápida), velocidade (centenhas de MHz até 6 GHz), tamanho em bits do barramento (64 a 384 bits), largura de banda (em GB/s, desde poucas dezenas a algumas centenas);
  • capacidade computacional (CC), sendo 2.0/2.1 para Fermi e 3.0 para Kepler;
  • potência dissipada (W);
  • tipo de saída de vídeo, etc.

Há 3 famílias de placas-de-vídeo/GPU’s da NVidia, em termos crescente de profissionalismo científico :

  • NVidia GeForce : optimizadas para velocidade em jogos e cálculos com precisão simples (SP, Single Precision, ou FP32), tem baixo custo e fácil disponibilidade nas versões de desktop e notebook;
  • NVidia Quadro : orientadas para workstations de visualização, têm drivers e firmwares optimizados para visualização (CAD/CAM, OpenGL, etc), mais memória (até 6GB na Quadro 6000), maior estabilidade (clock mais baixo e memórias mais testadas e com menor chance de gerar erros nos resultados), memória ECC (com correção de erros) nas Quadro 5000 e 6000, precisão dupla (DP, Double Precision, ou FP64) com desempenho melhorado nas Quadro 4000, 5000 e 6000, potência dissipada reduzida (Quadro 2000 com 192 núcleos dissipa 60 W), menor tamanho ocupando menos slots, etc. Vide tabela comparativa detalhada das Quadro. Tem preço bem maior que as GeForce com mesmo número de núcleos;
  • NVidia Tesla : optimizada para desempenho em computação científica de precisão dupla (caso das Teslas Fermi), maior estabilidade (clock mais baixo e memórias mais testadas e com menor chance de gerar erros nos resultados), memória ECC (com correção de erros), mais memória (até 6GB na Tesla C2070/2075), GPU Direct (duas ou mais GPU’s se comunicam diretamente, sem passar pela CPU), potência reduzida, suporte profissional da NVidia, etc. Tem preço bem maior que as GeForce com mesmo número de núcleos.

Para cálculos científicos em CUDA, o que se deve analisar para se escolher uma GPU com CUDA ? Vejamos :

  1. a frequência da necessidade de calcular em precisão dupla (15 algarismos) no lugar de simples (7-8 algarismos);
  2. o desempenho em GFlop/s de pico em SP e DP, às vezes via relação de desempenho DP/SP da placa-de-vídeo;
  3. o custo-benefício de desempenho em SP e DP;
  4. necessidade de memória RAM e de largura de banda em função dos tipos de problemas a serem resolvidos na GPU;
  5. a necessidade das famílias Quadro e Tesla para se ter baixíssima taxa de erro nos resultados, também em função do tipo de cálculos.
GPU Família Núcleos DP/SP GFlop/s DP GFlop/s SP Banda GB/s Preço R$
GeForce GT 540M Fermi   96 1/12  22  258  29 R$200 no notebook
GeForce GT 430 Fermi   96 1/12  22  269  26  200
GeForce GT 640M Kepler  384 1/24  20  480  29 R$400 no notebook
GeForce GT 640 Kepler  384 1/24  29  691  29  400
GeForce GTX 560 Ti Fermi  384 1/12 105 1263 128 1.000
GeForce GTX 580 Fermi  512  1/8 200 1581 192 2.100
GeForce GTX 680 Kepler 1536 1/24 129 3090 192 2.500
GeForce GTX 590 Fermi 2×512 1/8 311 2488 328 4.000
GeForce GTX 690 Kepler 2×1536 1/24 234 5.622 385 5.200
Quadro 600 Fermi   96 1/12  21  246  26  700
Quadro 2000 Fermi  192 1/12  40  480  42 2.400
Quadro 4000 Fermi  256  1/2 243  486  90 3.300
Quadro 5000 Fermi  352  1/2 359  718 120 8.500
Tesla C2050 Fermi  448  1/2 515 1030 144 7.000
Tesla C2075 Fermi  448  1/2 515 1030 144 12.800

Tabela comparativa de GPU’s NVidia com valores parcelados no Brasil pesquisados em 07/2012.

Comentários sobre a tabela acima :

  • sim, a GeForce GTX 680 realiza 3 TeraFlop/s de pico em SP (trilhões de cálculos de ponto flutuante em precisão simples por segundo) !
  • sim, a Tesla C2050/70/75 calcula 0,5 TeraFlop/s de pico em DP (trilhões de cálculos de ponto flutuante em precisão dupla por segundo) ! No teste nbody (do CUDA Toolkit) que eu rodei alcançou 489 TeraFlop/s em SP e 245 TeraFlop/s em DP;
  • para efeitos de comparação, um núcleo de uma CPU Intel Core i7 tem desempenho de pico entre 10 e 23 GFlop/s (SP ou DP), porém isso é dificilmente alcançado;
  • GTX 590 e GTX 690 são basicamente duas GTX 580 e GTX 680 juntas, respectivamente;
  • a geração Kepler tem baixa (1/24) relação DP/SP, logo se precisão dupla for essencial é às vezes melhor continuar na família Fermi por enquanto;
  • embora o número de núcleos tenha quadruplicado (p.e., GT 540M x GT 640M) na família Kepler, o desempenho em SP é aprox. 2x e o mesmo em DP;
  • as Quadro e Tesla são imbatíveis em precisão dupla, mas a relação custo x benefício precisa ser analisada;
  • a Tesla K10 da família Kepler não foi incluída pois não foi encontrada no Brasil e por ter desempenho fraco em DP, tanto que mesmo no exterior não foi adotada como sucessora das Tesla Fermi. Tem duas GPU’s da GTX 680, i.e., 2 x 1536 núcleos, 190 GFlop/s em DP, 4.577 GFlop/s em SP, 1/24 de DP/SP, 320 GB/s, preço em torno de US$2.500;
  • a Tesla K20 da família Kepler será lançada no final de 2012, com promessa de 1,5 TeraFlop/s em DP, aí sim será uma substituta melhor que as Tesla 20xx Fermi atuais;
  • para cálculos de precisão simples, a relação custo x benefício de uma GeForce Kepler chega a ser 10-15x melhor que uma Quadro/Tesla;

Daqui em diante nesse artigo eu vou focar em hardware sugerido para programação de GPU usando CUDA, atualmente e no Brasil. Abordarei computadores notebooks e desktops novos, bem como adicionar placa-de-vídeo NVidia a computador desktop já existente.

Comecemos pelos notebooks, onde os valores citados são parcelados e em lojas de renome. Vemos que a partir de R$2 mil há bons modelos com NVidia GeForce:

1) Apple MacBook (Air e Pro) alternam placas-de-vídeo Intel, AMD ATI e NVidia. Por exemplo, os MacBook (inclusive Air) de 2010 tinham GeForce 320M. Atualmente só o MacBook Pro (15,4″, Core i7QM) a partir de R$7.999 tem GeForce GT 650M (512MB/1GB GDDR5, 384 núcleos, Kepler);

2) Asus :

3) Dell :

4) LG P430 (14″, Core i7M) a partir de R$2.249, com GeForce GT 520M (1GB, 48 núcleos, Fermi);

5) Samsung :

6) Sony :

Quanto a computadores desktops novos com placas-de-vídeo NVidia, há muitas lojas pequenas e médias que montam configurações dedicadas para “gamers”, em que a fonte de energia e gabinete precisam ser adequados à potência consumida pela placa-de-vídeo (desde 60 a 300W). Citarei as lojas maiores e com valores parcelados :

1) Dell :

2) FirstPlace : tem várias configurações já prontas, de R$2 mil a R$22 mil, permitindo personalizá-las, com a linha gamer (NVidia GeForce) e a linha de workstations profissionais (usando as NVidia Quadro e Tesla). Citarei algumas configurações (que têm CPU, RAM, etc bem diferentes) :

3) X5 Computadores : tem mais de uma centena de configurações prontas, com GeForce, Quadro (600, 2000, 4000 e 6000) e Tesla (C2075), variando de R$2,5 mil a R$75 mil (à vista).

Adição de placa-de-vídeo NVidia a computador desktop já existente. Como isso implica normalmente em mudar a fonte e gabinete do computador para placas-de-vídeo que consomem acima de 75W (limite de um slot PCI-E), vou evitar tais pesados gastos e sugerir somente aquelas com menos de 70W de consumo máximo (aí basta abrir o gabinete e colocar a placa-de-vídeo no slot PCI-E) :

Conclusão : para quem quer iniciar no mundo de computação paralela de GPU & CUDA, o custo básico é uns R$200 quer seja adicionando uma placa-de-vídeo NVidia em computador desktop usado ou a mais no preço de um notebook ou desktop novo. E para cálculos da ordem de TFlop/s, sai por R$3 mil em diante um computador desktop completo.

Anúncios

Posted in CUDA | 6 Comments »

Astronomia em smartphones e tablets

Posted by robertocolistete em 26/07/2012

Há vários softwares de astronomia cada vez mais interessantes para serem usados em smartphones e tablets. Alguns deles realmente são bem mais úteis que as versões de PC desktop ou notebook, pois fazem uso de GPS, acelerômetro, magnetômetro, giroscópio, etc para saber a posição/orientação do usuário segurando o smartphone/tablet orientado para o céu, tal que a tela mostra o céu atrás do celular/tablet com realidade aumentada, indicando estrelas, planetas, etc.

Alguns sugestões minhas de tais softwares de astronomia por sistema operacional móvel :

1) Android :

2) iOS : não sou usuário, logo repasso sugestões dos sites iPhoneNess e AppCraver;

3) Maemo 5 (Fremantle) do Nokia N900 :

4) MeeGo (Harmattan) do Nokia N9/N950 :

5) Symbian :

Desses softwares, eu tenho instalados : MoonCalc, StarFinder e Stellarium-N9 no Nokia N9; Google SkyMap e SkEye Planetarium no Asus Transformer; Orrery e Stellarium no Nokia N900.

Posted in Android, iOS, Maemo 5 Fremantle, MeeGo, Nokia N9, Smartphones, Symbian, Tablets | 3 Comments »

Nokia 808 PureView à venda no Brasil por R$1.999

Posted by robertocolistete em 25/07/2012

Finalmente desde 24/07/2019 o Nokia 808 PureView está à venda no Brasil. Acreditem, a América do Latina foi a última região mundial a receber o Nokia 808 PureView.

O preço : R$1.999 em 12x. Por enquanto só nas lojas físicas da Nokia no Brasil e na loja Nokia online. Detalhe que o site da Nokia, bem como a loja online da Nokia, não colocam o Nokia 808 em destaque… mas sim o Nokia Lumia 900 (com Windows Phone 7)… razões elopianas, obviamente.

R$1.999 é caro ? Sim, como os smartphones topo-de-linha no Brasil (R$2.099 no Samsung Galaxy SIII e R$1.999 no iPhone 4S). Porém deve-se lembrar que o Nokia 808 na Europa, EUA, etc está uns US$50-200 mais caro que tais smartphones concorrentes. Eu esperava o Nokia 808 por uns R$2.200-2.400 no Brasil. Menos mau.

Mais sobre esse smartphone com fantásticos 41 MPixels nas matérias anteriores “Mais sobre Nokia 808 PureView” e “Nokia 808 PureView : 41 MPixels no celular !“. Matérias diversas na mídia internacional sobre o Nokia 808, AllAboutSymbian, Gadgeteria, The Verge, GSMArena, Engadget. Essas matérias mostram que as imagens e filmes (em Full HD a 30 qps) do Nokia 808 não tem comparação com outros smartphones e só são piores que câmeras de R$2-4 mil em diante no Brasil.

(Adicionado em 31/07/2012) Matéria do site DPReview (Digital Photograph Review), um site sério sobre fotografia digital, que não perdoa e quase nunca cita câmera de smartphones. Resultado da análise : câmera do Nokia 808 Pureview no mínimo compete com as câmeras DSLR médias em termos de qualidade de imagem.

Dica para compensar ponto fraco do Symbian Belle : instale o Opera Mobile como navegador web, é bem melhor que o nativo em termos de desempenho.

Posted in Smartphones, Symbian | Leave a Comment »

Chegou a atualização PR1.3 para o Nokia N9 (MeeGo Harmattan)

Posted by robertocolistete em 08/07/2012

Há poucos dias (03/07/2012) saiu a atualização PR1.3 (40.2012.21-3) para o Nokia N9 (MeeGo Harmattan), para grande número de países (incluindo Brasil) de uma vez.

Essa é uma atualização esperada há meses, a última PR1.2 foi lançada em 27/02/2012 e tinha muitos novos recursos, mas a PR1.3 é basicamente correção de muitos (1000 ?!) bugs e optimizações diversas (dizem que a interface ficou mais rápida), segundo o change log oficial. Vide mais detalhes no tópico no Talk Maemo.org sobre a PR1.3 e no blog da Nokia.

Atualização PR1.3 do MeeGo Harmattan para o Nokia N9 versão do Brasil.

(Atualizado em 19/07/2012) A PR1.3 é incompatível com certas modificações do MeeGo Harmattan, como Inception 0.1.x (que burla o Aegis permitindo o N9 quase ser um N900 em termos de liberdade para chroot, overclocking, rodar programas sem credenciais, etc), OverClocking (OC), FasterN9, N9Qtweak, etc. Mas 4h depois da PR1.3 saiu a versão 0.2 do Inception, compatível com a PR1.3 ! Várias modificações do MeeGo Harmattan já rodam na PR1.3. O OverClocking via Opptimizer compatível para PR1.3 demorou 2 semanas, ficou disponível em 17/07/2012.

(Atualizado em 20/07/2012) Quem tem instalado o Inception e Opptimizer e quer instalar a PR1.3, deve primeiro desinstalá-los, reinicializar, instalar a PR1.3 e instalar as novas versões do Inception e Opptimizer. Fiz isso e tenho agora a PR1.3 feita via OTA funcionando 100%, sem problemas.

Para quem quer instalar, a recomendação é fazer o tradicional backup, desabilitar os repositórios de desenvolvimento e de terceiros, desinstalar modificações do MeeGo (Inception, Overclocking, etc), colocar para carregar e deixar assim enquanto faz download de 203,1 MB da PR1.3 mais uns 40MB de novas versões de alguns softwares nativos (Twitter, Facebook, Nokia Link, Nokia Maps, Nokia Music, Nokia Store, Nokia Drive e AccuWeather) e depois instala e reinicializa. Ou seja, use rede WiFi e de boa velocidade para atualizar PR1.3 e os softwares.

Posted in MeeGo, Nokia N9, Smartphones | 5 Comments »

Asus Transformer TF-101 com atualização 9.2.1.27 do Android 4.0.3

Posted by robertocolistete em 08/07/2012

Entre 4 e 5 de Julho saiu a atualização 9.2.1.27 do Android 4.0.3 para o Asus Transformer TF-101, dessa vez as versões US e WW (World Wide) saíram juntas, i.e., já saiu no Brasil.

Tal atualização é basicamente correção de bugs e pequenas optimizações, vide artigo do Android Police. Veja também discussões no Asus Transformer Forum.

Fiz no meu Transformer e não notei diferenças, inclusive o eterno bug do GMail continua (de vez em quando fecha sozinho).

Posted in Android, Tablets | 2 Comments »

 
%d blogueiros gostam disto: