{"id":424,"date":"2026-09-05T22:00:48","date_gmt":"2026-09-06T01:00:48","guid":{"rendered":"https:\/\/www.linuxpro.com.br\/2026\/09\/como-funcionam-placas-de-video\/"},"modified":"2026-09-08T05:02:38","modified_gmt":"2026-09-08T08:02:38","slug":"como-funcionam-placas-de-video","status":"publish","type":"post","link":"https:\/\/www.linuxpro.com.br\/en\/2026\/09\/como-funcionam-placas-de-video\/","title":{"rendered":"Como funcionam as placas de v\u00eddeo"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" alt=\"Mascote do LinuxPro encaixando placa de video no slot\" src=\"\/wp-content\/uploads\/2026\/09\/placas-de-video-v3.webp\" width=\"1052\" height=\"652\" \/><\/p>\n<p>Quantos c\u00e1lculos uma placa de v\u00eddeo faz por segundo para desenhar um frame de <em>Cyberpunk<\/em> ou para treinar uma rede? O canal <strong>Branch Education<\/strong> desmontou uma RTX 3090 \u2014 no sentido literal \u2014 e reconstruiu o die <strong>GA102<\/strong> em 3D. Este texto segue o v\u00eddeo <a href=\"https:\/\/www.youtube.com\/watch?v=h9Z4oGN89MU\">How do Graphics Cards Work? Exploring GPU Architecture<\/a>. A gera\u00e7\u00e3o Blackwell j\u00e1 est\u00e1 na rua; a li\u00e7\u00e3o de arquitetura \u00e9 a mesma.<\/p>\n<p><!-- more --><\/p>\n<div style=\"position:relative;padding-bottom:56.25%;height:0;overflow:hidden;margin:1.5em 0\">\n<iframe src=\"https:\/\/www.youtube.com\/embed\/h9Z4oGN89MU\" title=\"How do Graphics Cards Work? Exploring GPU Architecture \u2014 Branch Education\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen style=\"position:absolute;top:0;left:0;width:100%;height:100%;border:0\"><\/iframe>\n<\/div>\n<h2>A escala<\/h2>\n<p>Tr\u00eas \u00e2ncoras do v\u00eddeo:<\/p>\n<ul>\n<li><em>Super Mario 64<\/em> (1996): ~<strong>100 milh\u00f5es<\/strong> de c\u00e1lculos por segundo.<\/li>\n<li><em>Minecraft<\/em> (2011): ~<strong>100 bilh\u00f5es<\/strong>.<\/li>\n<li>RTX 3090: mais de <strong>36 TFLOPS<\/strong>. A 4090, citada no mesmo v\u00eddeo, sobe para <strong>82,58 TFLOPS<\/strong>.<\/li>\n<\/ul>\n<p>Se cada um dos 8 bilh\u00f5es de humanos fizesse uma multiplica\u00e7\u00e3o por segundo, faltariam ~4.400 planetas Terra para igualar uma GPU topo de linha. O sil\u00edcio cabe numa moeda.<\/p>\n<h2>CPU \u00e9 jato, GPU \u00e9 navio cargueiro<\/h2>\n<p>Os dois s\u00e3o processadores. A filosofia \u00e9 o oposto:<\/p>\n<pre data-no-translation=\"\"><code class=\"language-text\" data-no-translation=\"\">CPU  \u2014 jato\npoucos n\u00facleos (8\u201324) | lat\u00eancia baixa | cache L2\/L3 enorme\npreditor de desvio | controle flex\u00edvel | kernel, disco, rede\n\nGPU  \u2014 navio cargueiro\nmilhares de n\u00facleos (10.496 na 3090) | vaz\u00e3o (throughput)\ncontrole compartilhado | a mesma conta em milh\u00f5es de dados\n<\/code><\/pre>\n<p>A CPU decola e pousa em milhares de aeroportos: tarefa sequencial, imprevis\u00edvel. A GPU leva dezenas de milhares de cont\u00eaineres entre dois portos fixos: milh\u00f5es de v\u00e9rtices, pixels ou pesos de rede sofrendo a <em>mesma<\/em> opera\u00e7\u00e3o. \u00c9 o mesmo recorte do post <a href=\"\/en\/2026\/09\/gpu-vs-tpu-como-funcionam-chips-ia\/\">GPU vs TPU<\/a> \u2014 aqui o zoom \u00e9 o die de consumo, n\u00e3o o acelerador de datacenter.<\/p>\n<h2>Por dentro do GA102 (Ampere)<\/h2>\n<p>A 3090 usa o <strong>GA102<\/strong>: Samsung 8 nm custom, <strong>28,3 bilh\u00f5es<\/strong> de transistores, 628 mm\u00b2. Hierarquia r\u00edgida:<\/p>\n<pre data-no-translation=\"\"><code class=\"language-text\" data-no-translation=\"\">GA102\n  7 GPC  (Graphics Processing Clusters)\n    12 SM por GPC  \u2192  84 SM no sil\u00edcio inteiro\n      4 parti\u00e7\u00f5es \/ warp schedulers por SM\n        32 CUDA cores por parti\u00e7\u00e3o  (128 por SM)\n        1 Tensor Core por parti\u00e7\u00e3o  (4 por SM)\n      1 RT Core por SM\n\nGA102 cheio: 10.752 CUDA | 336 Tensor | 84 RT\n<\/code><\/pre>\n<p>As placas 3080 \/ 3080 Ti \/ 3090 \/ 3090 Ti saem do <em>mesmo<\/em> projeto. Na fotolitografia, poeira e defeito de wafer matam um SM. Em vez de jogar fora 628 mm\u00b2, a NVIDIA desliga o bloco a laser \u2014 <strong>binning<\/strong>:<\/p>\n<ul>\n<li><strong>3090 Ti:<\/strong> sil\u00edcio perfeito, 10.752 CUDA.<\/li>\n<li><strong>3090:<\/strong> 10.496 (2 SM off).<\/li>\n<li><strong>3080 Ti:<\/strong> 10.240 (4 SM off).<\/li>\n<li><strong>3080:<\/strong> 8.704 (16 SM off).<\/li>\n<\/ul>\n<h2>O CUDA core \u00e9 um FMA<\/h2>\n<p>Cada n\u00facleo CUDA tem ~410 mil transistores. O circuito que importa \u00e9 o <strong>FMA<\/strong> (Fused Multiply-Add), uma opera\u00e7\u00e3o por ciclo de clock:<\/p>\n<pre data-no-translation=\"\"><code class=\"language-text\" data-no-translation=\"\">Resultado = A \u00d7 B + C\n<\/code><\/pre>\n<p>\u00c9 a espinha da gr\u00e1fica 3D e da IA \u2014 o mesmo MAC do <a href=\"\/en\/2026\/09\/o-que-e-uma-rede-neural\/\">neur\u00f4nio<\/a> and <a href=\"\/en\/2026\/09\/gpu-vs-tpu-como-funcionam-chips-ia\/\">Tensor Core \/ MXU<\/a>. No Ampere, metade dos caminhos \u00e9 FP32; a outra metade faz FP32 ou INT32 no mesmo ciclo. Contas mais caras (divis\u00e3o, raiz, seno, cosseno) caem nas <strong>SFU<\/strong> \u2014 s\u00f3 4 por SM.<\/p>\n<h2>GDDR6X, PAM-4 e o PAM-3 da GDDR7<\/h2>\n<p>Milhares de n\u00facleos sem dado ficam parados. A RAM da CPU (DDR4\/DDR5) anda num barramento de 64 bits, uns 50\u201380 GB\/s. A 3090 leva <strong>24 GB de GDDR6X<\/strong> (Micron) num barramento de <strong>384 bits<\/strong>, ~<strong>936 GB\/s<\/strong> (o v\u00eddeo arredonda para 1 TB\/s).<\/p>\n<pre data-no-translation=\"\"><code class=\"language-text\" data-no-translation=\"\">CPU + DDR5          GPU + GDDR6X\nbarramento 64-bit   barramento 384-bit\n~60 GB\/s            ~1 TB\/s\ncaminh\u00e3o de entrega porto de cont\u00eaineres\n<\/code><\/pre>\n<p>Computador n\u00e3o \u00e9 s\u00f3 0 e 1 nas trilhas. Para n\u00e3o dobrar o clock (calor, ru\u00eddo):<\/p>\n<ul>\n<li><strong>PAM-4 (GDDR6X):<\/strong> quatro n\u00edveis de tens\u00e3o. Cada s\u00edmbolo carrega 2 bits (<code data-no-translation=\"\">00<\/code>, <code data-no-translation=\"\">01<\/code>, <code data-no-translation=\"\">10<\/code>, <code data-no-translation=\"\">11<\/code>).<\/li>\n<li><strong>PAM-3 (GDDR7):<\/strong> tr\u00eas estados (\u22121, 0, +1). Codifica 3 bits em 2 d\u00edgitos tern\u00e1rios \u2014 decoder mais simples, mais toler\u00e2ncia a ru\u00eddo, menos energia.<\/li>\n<\/ul>\n<h2>SIMD, o chap\u00e9u de cowboy e o \u201cembarrassingly parallel\u201d<\/h2>\n<p>Desenhar um mundo 3D \u00e9 um problema <strong>embara\u00e7osamente paralelo<\/strong>: quase n\u00e3o custa fatiar em milhares de peda\u00e7os independentes. O chap\u00e9u do v\u00eddeo tem ~14.000 v\u00e9rtices (X, Y, Z) e 28.000 tri\u00e2ngulos:<\/p>\n<ol>\n<li><strong>Model space:<\/strong> v\u00e9rtices na origem do objeto (0, 0, 0).<\/li>\n<li><strong>World space:<\/strong> transla\u00e7\u00e3o, rota\u00e7\u00e3o, escala \u2014 cada v\u00e9rtice \u00d7 matriz 4\u00d74.<\/li>\n<li>Cena com 5.000 objetos e ~8 milh\u00f5es de v\u00e9rtices: a <em>mesma<\/em> instru\u00e7\u00e3o em milh\u00f5es de n\u00fameros. Isso \u00e9 <strong>SIMD<\/strong> (Single Instruction, Multiple Data).<\/li>\n<\/ol>\n<h2>De SIMD para SIMT \u2014 e de onde veio o \u201cwarp\u201d<\/h2>\n<p>At\u00e9 ~2016 o warp de 32 threads marchava em lockstep, falange grega. No SIMT moderno cada thread tem o pr\u00f3prio program counter e registradores. Um <code data-no-translation=\"\">if\/else<\/code> que parte o warp ao meio (<strong>warp divergence<\/strong>) n\u00e3o trava o SM inteiro: os dois caminhos andam, depois reconciliam no L1 de 128 KB por SM.<\/p>\n<p>O nome <strong>warp<\/strong> n\u00e3o veio do <em>Star Trek<\/em>. Veio da tecelagem: o tear de Jacquard (1804) escolhia os fios de urdidura (<em>warp threads<\/em>) em paralelo, com cart\u00e3o perfurado.<\/p>\n<p>The <strong>GigaThread Engine<\/strong> espalha os blocos de threads pelos SM livres. \u00c9 o despachante que faz 10 mil n\u00facleos parecerem um s\u00f3 programa.<\/p>\n<h2>SHA-256, ASIC e Tensor Core<\/h2>\n<p>A mesma m\u00e1quina serve para mais do que jogo.<\/p>\n<p><strong>Minera\u00e7\u00e3o de Bitcoin.<\/strong> Cada tentativa de SHA-256 (nonce diferente) \u00e9 independente da anterior. A 3090 gerava ~95 milh\u00f5es de hashes\/s. ASIC dedicado passa de 250 trilh\u00f5es\/s: colher versus escavadeira. GPU para Bitcoin morreu.<\/p>\n<p><strong>Tensor Cores e DLSS.<\/strong> Em vez de escalar par a par, o Tensor Core faz matriz inteira em ponto flutuante misto numa instru\u00e7\u00e3o:<\/p>\n<pre data-no-translation=\"\"><code class=\"language-text\" data-no-translation=\"\">D = A \u00d7 B + C\n<\/code><\/pre>\n<p>\u00c9 o alicerce de rede neural e transformer no sil\u00edcio de consumo \u2014 o mesmo MatMul que o post de <a href=\"\/en\/2026\/09\/gpu-vs-tpu-como-funcionam-chips-ia\/\">GPU vs TPU<\/a> coloca no MXU sist\u00f3lico da TPU, e que o crash course de <a href=\"\/en\/2026\/09\/deep-learning-para-iniciantes\/\">deep learning<\/a> trata como a conta do treino. No Linux, o atalho pr\u00e1tico de usar essa conta sem comprar cluster \u00e9 o <a href=\"\/en\/2026\/09\/rodando-ia-local-no-linux-com-ollama\/\">Ollama<\/a>.<\/p>\n<h2>References<\/h2>\n<ul>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=h9Z4oGN89MU\">Branch Education \u2014 How do Graphics Cards Work?<\/a><\/li>\n<li><a href=\"\/en\/2026\/09\/gpu-vs-tpu-como-funcionam-chips-ia\/\">GPU vs TPU: how AI chips work<\/a><\/li>\n<li><a href=\"\/en\/2026\/09\/o-que-e-uma-rede-neural\/\">O que \u00e9 uma rede neural?<\/a><\/li>\n<li><a href=\"\/en\/2026\/09\/deep-learning-para-iniciantes\/\">Deep Learning para iniciantes<\/a><\/li>\n<li><a href=\"\/en\/2026\/09\/rodando-ia-local-no-linux-com-ollama\/\">IA local no Linux com Ollama<\/a><\/li>\n<\/ul>\n<p>A placa de v\u00eddeo n\u00e3o \u00e9 \u201cmilhares de CPUs pequenas\u201d. \u00c9 um porto: FMA em massa, mem\u00f3ria larga demais para o DDR da CPU, e um despachante (GigaThread) que s\u00f3 funciona enquanto o problema se parte sozinho. O Branch Education mostrou o porto por dentro. O resto \u2014 DLSS, LLM, minera\u00e7\u00e3o morta \u2014 \u00e9 o mesmo navio com carga diferente.<\/p>","protected":false},"excerpt":{"rendered":"<p>Quantos c\u00e1lculos uma placa de v\u00eddeo faz por segundo para desenhar um frame de Cyberpunk ou para treinar uma rede? O canal Branch Education desmontou uma RTX 3090 \u2014 no sentido literal \u2014 e reconstruiu o die GA102 em 3D. Este texto segue o v\u00eddeo How do Graphics Cards Work? Exploring GPU Architecture. A gera\u00e7\u00e3o &#8230; <a title=\"Como funcionam as placas de v\u00eddeo\" class=\"read-more\" href=\"https:\/\/www.linuxpro.com.br\/en\/2026\/09\/como-funcionam-placas-de-video\/\" aria-label=\"Read more about Como funcionam as placas de v\u00eddeo\">Read more<\/a><\/p>","protected":false},"author":0,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[115,2],"tags":[153,134,116,152],"class_list":["post-424","post","type-post","status-publish","format-standard","hentry","category-ia","category-linux","tag-cuda","tag-gpu","tag-ia","tag-nvidia"],"_links":{"self":[{"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/posts\/424","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/comments?post=424"}],"version-history":[{"count":2,"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/posts\/424\/revisions"}],"predecessor-version":[{"id":1126,"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/posts\/424\/revisions\/1126"}],"wp:attachment":[{"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/media?parent=424"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/categories?post=424"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/tags?post=424"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}