{"code":"var Component=(()=>{var u=Object.create;var d=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var g=Object.getPrototypeOf,v=Object.prototype.hasOwnProperty;var b=(o,e)=>()=>(e||o((e={exports:{}}).exports,e),e.exports),q=(o,e)=>{for(var i in e)d(o,i,{get:e[i],enumerable:!0})},s=(o,e,i,n)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let r of p(e))!v.call(o,r)&&r!==i&&d(o,r,{get:()=>e[r],enumerable:!(n=h(e,r))||n.enumerable});return o};var f=(o,e,i)=>(i=o!=null?u(g(o)):{},s(e||!o||!o.__esModule?d(i,\"default\",{value:o,enumerable:!0}):i,o)),k=o=>s(d({},\"__esModule\",{value:!0}),o);var t=b((G,c)=>{c.exports=_jsx_runtime});var B={};q(B,{default:()=>l});var a=f(t());function m(o){let e={a:\"a\",blockquote:\"blockquote\",code:\"code\",em:\"em\",h2:\"h2\",h3:\"h3\",img:\"img\",li:\"li\",ol:\"ol\",p:\"p\",pre:\"pre\",span:\"span\",strong:\"strong\",table:\"table\",tbody:\"tbody\",td:\"td\",th:\"th\",thead:\"thead\",tr:\"tr\",ul:\"ul\",...o.components};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(e.p,{children:\"O novo Mac Studio da Apple chega a 512GB de mem\\xF3ria unificada. O enquadramento da imprensa \\xE9 que isso coloca modelos de escala de fronteira em cima da mesa. Isso \\xE9, em linhas gerais, verdade \\u2014 e tamb\\xE9m \\xE9 a resposta a uma pergunta que a maioria das pessoas que compra um Mac n\\xE3o est\\xE1 fazendo.\"}),`\n`,(0,a.jsxs)(e.p,{children:[\"A pergunta que elas est\\xE3o fazendo \\xE9 mais espec\\xEDfica e mais \\xFAtil: \",(0,a.jsx)(e.strong,{children:\"dado o que eu quero rodar, quanta mem\\xF3ria eu realmente preciso comprar?\"}),\" A mem\\xF3ria unificada vem soldada ao encapsulamento do chip. Voc\\xEA tem uma \\xFAnica chance de responder isso, no momento da compra, para toda a vida \\xFAtil da m\\xE1quina.\"]}),`\n`,(0,a.jsx)(e.p,{children:\"A boa not\\xEDcia \\xE9 que isso \\xE9 aritm\\xE9tica, n\\xE3o uma quest\\xE3o de opini\\xE3o. Este artigo faz essa aritm\\xE9tica.\"}),`\n`,(0,a.jsx)(e.p,{children:(0,a.jsx)(e.img,{alt:\"Mem\\xF3ria unificada e LLMs locais no Mac\",src:\"/images/blog/mac-unified-memory-local-llm-how-much-ram-m5-ultra-512gb-guide-2026/hero.webp\",width:\"1024\",height:\"541\"})}),`\n`,(0,a.jsx)(e.h2,{id:\"principais-conclus\\xF5es\",children:\"Principais Conclus\\xF5es\"}),`\n`,(0,a.jsxs)(e.ul,{children:[`\n`,(0,a.jsxs)(e.li,{children:[(0,a.jsx)(e.strong,{children:\"Dois n\\xFAmeros decidem tudo.\"}),\" A \",(0,a.jsx)(e.em,{children:\"capacidade\"}),\" de mem\\xF3ria decide se um modelo consegue carregar. A \",(0,a.jsx)(e.em,{children:\"largura de banda\"}),\" de mem\\xF3ria decide a velocidade com que ele gera texto. Elas s\\xE3o independentes, e uma m\\xE1quina pode ser forte em uma e fraca na outra.\"]}),`\n`,(0,a.jsxs)(e.li,{children:[(0,a.jsx)(e.strong,{children:\"Estime os pesos como par\\xE2metros \\xD7 bytes por par\\xE2metro.\"}),\" Na quantiza\\xE7\\xE3o de 4 bits isso equivale a aproximadamente 0.55 bytes por par\\xE2metro, ent\\xE3o um modelo de 70B precisa de cerca de 38GB antes do contexto.\"]}),`\n`,(0,a.jsxs)(e.li,{children:[(0,a.jsx)(e.strong,{children:\"O macOS n\\xE3o deixa a GPU usar toda a sua RAM.\"}),\" Existe um teto n\\xE3o documentado controlado por \",(0,a.jsx)(e.code,{children:\"iogpu.wired_limit_mb\"}),\". Em um Mac de 32GB voc\\xEA n\\xE3o tem 32GB dispon\\xEDveis para o modelo.\"]}),`\n`,(0,a.jsxs)(e.li,{children:[(0,a.jsx)(e.strong,{children:\"Os n\\xFAmeros de destaque de IA da Apple descrevem o processamento de prompt, n\\xE3o a gera\\xE7\\xE3o de texto.\"}),\" Essas duas etapas t\\xEAm gargalos diferentes. Leia a reda\\xE7\\xE3o com aten\\xE7\\xE3o.\"]}),`\n`,(0,a.jsxs)(e.li,{children:[(0,a.jsx)(e.strong,{children:\"A capacidade do M5 Ultra n\\xE3o \\xE9 novidade.\"}),\" O M3 Ultra j\\xE1 oferecia 512GB em 2025. O que mudou foi a largura de banda: de 819GB/s para 1.2TB/s.\"]}),`\n`]}),`\n`,(0,a.jsx)(e.h2,{id:\"os-dois-n\\xFAmeros\",children:\"Os Dois N\\xFAmeros\"}),`\n`,(0,a.jsx)(e.p,{children:\"Quase toda decis\\xE3o ruim de compra de um Mac para IA vem de tratar esses dois n\\xFAmeros como se fossem um s\\xF3.\"}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"A capacidade \\xE9 uma parede.\"}),\" Se o modelo mais o seu contexto n\\xE3o couber na mem\\xF3ria, ele n\\xE3o roda. N\\xE3o existe degrada\\xE7\\xE3o suave no Apple silicon como existe em uma GPU discreta, que pode transbordar para a RAM do sistema \\u2014 em um Mac, a mem\\xF3ria unificada \",(0,a.jsx)(e.em,{children:\"\\xE9\"}),\" a RAM do sistema, e assim que voc\\xEA excede o que o macOS vai entregar \\xE0 GPU, ou o carregamento falha, ou voc\\xEA cai para algo muito mais lento.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"A largura de banda \\xE9 um limite de velocidade.\"}),\" Para gerar um token, um modelo denso l\\xEA todo o seu conjunto de pesos a partir da mem\\xF3ria. A cada token. Isso significa que o teto te\\xF3rico de velocidade de gera\\xE7\\xE3o \\xE9 a largura de banda de mem\\xF3ria dividida pelo tamanho do modelo, e nenhuma quantidade de n\\xFAcleos de GPU muda isso.\"]}),`\n`,(0,a.jsx)(e.p,{children:\"\\xC9 por isso que uma m\\xE1quina pode comportar um modelo de 200GB e ainda assim parecer inutiliz\\xE1vel, e por que um modelo pequeno em uma m\\xE1quina modesta pode parecer instant\\xE2neo.\"}),`\n`,(0,a.jsx)(e.h2,{id:\"capacidade-o-que-cabe\",children:\"Capacidade: O Que Cabe\"}),`\n`,(0,a.jsx)(e.p,{children:\"Os pesos s\\xE3o o custo dominante, e s\\xE3o previs\\xEDveis:\"}),`\n`,(0,a.jsx)(a.Fragment,{children:(0,a.jsx)(e.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,a.jsx)(e.code,{children:(0,a.jsx)(e.span,{className:\"line\",children:(0,a.jsx)(e.span,{children:\"memory for weights \\u2248 parameters \\xD7 bytes per parameter\"})})})})}),`\n`,(0,a.jsx)(e.p,{children:\"Bytes por par\\xE2metro depende da quantiza\\xE7\\xE3o:\"}),`\n`,(0,a.jsxs)(e.table,{children:[(0,a.jsx)(e.thead,{children:(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.th,{children:\"Precis\\xE3o\"}),(0,a.jsx)(e.th,{children:\"Bytes por par\\xE2metro\"}),(0,a.jsx)(e.th,{children:\"Uso t\\xEDpico\"})]})}),(0,a.jsxs)(e.tbody,{children:[(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"FP16 / BF16\"}),(0,a.jsx)(e.td,{children:\"2.0\"}),(0,a.jsx)(e.td,{children:\"Treinamento, fidelidade m\\xE1xima\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"8-bit (Q8)\"}),(0,a.jsx)(e.td,{children:\"~1.0\"}),(0,a.jsx)(e.td,{children:\"Infer\\xEAncia quase sem perdas\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"4-bit (Q4_K_M)\"}),(0,a.jsx)(e.td,{children:\"~0.55\"}),(0,a.jsx)(e.td,{children:\"O padr\\xE3o pr\\xE1tico\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"3-bit\"}),(0,a.jsx)(e.td,{children:\"~0.42\"}),(0,a.jsx)(e.td,{children:\"Perda de qualidade percept\\xEDvel\"})]})]})]}),`\n`,(0,a.jsx)(e.p,{children:\"Os K-quants de 4 bits ficam, na m\\xE9dia, um pouco acima de 4 bits quando voc\\xEA inclui os metadados de escala, e \\xE9 por isso que o n\\xFAmero honesto \\xE9 0.55, e n\\xE3o 0.50. Aplicando isso:\"}),`\n`,(0,a.jsxs)(e.table,{children:[(0,a.jsx)(e.thead,{children:(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.th,{children:\"Tamanho do modelo\"}),(0,a.jsx)(e.th,{children:\"4-bit\"}),(0,a.jsx)(e.th,{children:\"8-bit\"}),(0,a.jsx)(e.th,{children:\"FP16\"})]})}),(0,a.jsxs)(e.tbody,{children:[(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"8B\"}),(0,a.jsx)(e.td,{children:\"4.4 GB\"}),(0,a.jsx)(e.td,{children:\"8 GB\"}),(0,a.jsx)(e.td,{children:\"16 GB\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"14B\"}),(0,a.jsx)(e.td,{children:\"7.7 GB\"}),(0,a.jsx)(e.td,{children:\"14 GB\"}),(0,a.jsx)(e.td,{children:\"28 GB\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"32B\"}),(0,a.jsx)(e.td,{children:\"17.6 GB\"}),(0,a.jsx)(e.td,{children:\"32 GB\"}),(0,a.jsx)(e.td,{children:\"64 GB\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"70B\"}),(0,a.jsx)(e.td,{children:\"38.5 GB\"}),(0,a.jsx)(e.td,{children:\"70 GB\"}),(0,a.jsx)(e.td,{children:\"140 GB\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"120B\"}),(0,a.jsx)(e.td,{children:\"66 GB\"}),(0,a.jsx)(e.td,{children:\"120 GB\"}),(0,a.jsx)(e.td,{children:\"240 GB\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"235B\"}),(0,a.jsx)(e.td,{children:\"129 GB\"}),(0,a.jsx)(e.td,{children:\"235 GB\"}),(0,a.jsx)(e.td,{children:\"\\u2014\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"400B\"}),(0,a.jsx)(e.td,{children:\"220 GB\"}),(0,a.jsx)(e.td,{children:\"400 GB\"}),(0,a.jsx)(e.td,{children:\"\\u2014\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"671B\"}),(0,a.jsx)(e.td,{children:\"369 GB\"}),(0,a.jsx)(e.td,{children:\"671 GB\"}),(0,a.jsx)(e.td,{children:\"\\u2014\"})]})]})]}),`\n`,(0,a.jsx)(e.h3,{id:\"depois-some-o-contexto\",children:\"Depois, some o contexto\"}),`\n`,(0,a.jsxs)(e.p,{children:[\"O KV cache armazena as chaves e valores de aten\\xE7\\xE3o de cada token da conversa, e cresce linearmente com o comprimento do contexto. O tamanho por token varia bastante conforme a arquitetura \\u2014 modelos que usam grouped-query attention s\\xE3o bem mais baratos nesse quesito do que designs mais antigos \\u2014 mas uma faixa razo\\xE1vel \\xE9 \",(0,a.jsx)(e.strong,{children:\"0.1 MB a 0.5 MB por token\"}),\".\"]}),`\n`,(0,a.jsxs)(e.p,{children:[\"Com 32.000 tokens de contexto isso equivale a aproximadamente \",(0,a.jsx)(e.strong,{children:\"3GB a 16GB al\\xE9m dos pesos\"}),\". Com 128.000 tokens, pode superar o pr\\xF3prio modelo.\"]}),`\n`,(0,a.jsx)(e.p,{children:'Esse \\xE9 o motivo isolado mais comum para um modelo que \"deveria caber\" n\\xE3o caber. Se voc\\xEA planeja aliment\\xE1-lo com documentos longos ou manter conversas longas, reserve mem\\xF3ria para isso explicitamente, em vez de dimensionar s\\xF3 pelos pesos e torcer.'}),`\n`,(0,a.jsx)(e.h3,{id:\"a-regra-pr\\xE1tica\",children:\"A regra pr\\xE1tica\"}),`\n`,(0,a.jsx)(a.Fragment,{children:(0,a.jsx)(e.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,a.jsx)(e.code,{children:(0,a.jsx)(e.span,{className:\"line\",children:(0,a.jsx)(e.span,{children:\"memory you need \\u2248 (weights) + (KV cache for your context) + 2\\u20133 GB overhead\"})})})})}),`\n`,(0,a.jsx)(e.p,{children:\"E depois compare isso com o que o macOS realmente vai lhe dar, que n\\xE3o \\xE9 o n\\xFAmero da caixa.\"}),`\n`,(0,a.jsx)(e.h2,{id:\"o-teto-que-ningu\\xE9m-menciona\",children:\"O Teto Que Ningu\\xE9m Menciona\"}),`\n`,(0,a.jsx)(e.p,{children:'O macOS reserva mem\\xF3ria unificada para o sistema e limita quanto a GPU pode \"fixar\" (wire). O controle \\xE9 um sysctl:'}),`\n`,(0,a.jsx)(a.Fragment,{children:(0,a.jsx)(e.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"m 4,4 a 1,1 0 0 0 -0.7070312,0.2929687 1,1 0 0 0 0,1.4140625 L 8.5859375,11 3.2929688,16.292969 a 1,1 0 0 0 0,1.414062 1,1 0 0 0 1.4140624,0 l 5.9999998,-6 a 1.0001,1.0001 0 0 0 0,-1.414062 L 4.7070312,4.2929687 A 1,1 0 0 0 4,4 Z m 8,14 a 1,1 0 0 0 -1,1 1,1 0 0 0 1,1 h 8 a 1,1 0 0 0 1,-1 1,1 0 0 0 -1,-1 z\" fill=\"currentColor\" /></svg>',children:(0,a.jsxs)(e.code,{children:[(0,a.jsxs)(e.span,{className:\"line\",children:[(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"$\"}),(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" sysctl\"}),(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" iogpu.wired_limit_mb\"})]}),`\n`,(0,a.jsxs)(e.span,{className:\"line\",children:[(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"iogpu.wired_limit_mb:\"}),(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" 0\"})]})]})})}),`\n`,(0,a.jsx)(e.p,{children:\"Zero significa autom\\xE1tico. A Apple n\\xE3o documenta para que valor esse autom\\xE1tico se resolve, e eu n\\xE3o vou inventar uma f\\xF3rmula \\u2014 mas medi\\xE7\\xF5es da comunidade colocam esse valor consistentemente em algo entre 65\\u201375% da mem\\xF3ria total, com m\\xE1quinas maiores tendo direito a uma fatia maior.\"}),`\n`,(0,a.jsx)(e.p,{children:\"A consequ\\xEAncia pr\\xE1tica, nas m\\xE1quinas que voc\\xEA poderia comprar:\"}),`\n`,(0,a.jsxs)(e.table,{children:[(0,a.jsx)(e.thead,{children:(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.th,{children:\"Mem\\xF3ria instalada\"}),(0,a.jsx)(e.th,{children:\"Aproximadamente dispon\\xEDvel para a GPU\"})]})}),(0,a.jsxs)(e.tbody,{children:[(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"16 GB\"}),(0,a.jsx)(e.td,{children:\"~10\\u201312 GB\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"32 GB\"}),(0,a.jsx)(e.td,{children:\"~21\\u201324 GB\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"64 GB\"}),(0,a.jsx)(e.td,{children:\"~42\\u201348 GB\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"128 GB\"}),(0,a.jsx)(e.td,{children:\"~85\\u201396 GB\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"512 GB\"}),(0,a.jsx)(e.td,{children:\"~340\\u2013384 GB\"})]})]})]}),`\n`,(0,a.jsxs)(e.p,{children:[\"Voc\\xEA pode aumentar esse limite. A mudan\\xE7a tem efeito imediato e \",(0,a.jsx)(e.strong,{children:\"n\\xE3o\"}),\" sobrevive a uma reinicializa\\xE7\\xE3o:\"]}),`\n`,(0,a.jsx)(a.Fragment,{children:(0,a.jsx)(e.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"m 4,4 a 1,1 0 0 0 -0.7070312,0.2929687 1,1 0 0 0 0,1.4140625 L 8.5859375,11 3.2929688,16.292969 a 1,1 0 0 0 0,1.414062 1,1 0 0 0 1.4140624,0 l 5.9999998,-6 a 1.0001,1.0001 0 0 0 0,-1.414062 L 4.7070312,4.2929687 A 1,1 0 0 0 4,4 Z m 8,14 a 1,1 0 0 0 -1,1 1,1 0 0 0 1,1 h 8 a 1,1 0 0 0 1,-1 1,1 0 0 0 -1,-1 z\" fill=\"currentColor\" /></svg>',children:(0,a.jsxs)(e.code,{children:[(0,a.jsx)(e.span,{className:\"line\",children:(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Allow the GPU to wire 28GB on a 32GB Mac\"})}),`\n`,(0,a.jsxs)(e.span,{className:\"line\",children:[(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"sudo\"}),(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" sysctl\"}),(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" iogpu.wired_limit_mb=\"}),(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"28672\"})]}),`\n`,(0,a.jsx)(e.span,{className:\"line\"}),`\n`,(0,a.jsx)(e.span,{className:\"line\",children:(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Back to automatic\"})}),`\n`,(0,a.jsxs)(e.span,{className:\"line\",children:[(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"sudo\"}),(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" sysctl\"}),(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" iogpu.wired_limit_mb=\"}),(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"0\"})]})]})})}),`\n`,(0,a.jsxs)(e.p,{children:[\"Tenha cuidado com isso. Tudo que voc\\xEA tira, tira do sistema operacional e de todos os outros aplicativos. Se voc\\xEA levar esse valor perto demais do total, vai esbarrar em swapping, beachballs (a bolinha colorida girando) ou um encerramento por falta de mem\\xF3ria \\u2014 e em um Mac com SSD r\\xE1pido, o swapping sob press\\xE3o de mem\\xF3ria tamb\\xE9m \\xE9 uma carga sustentada de escrita. Se voc\\xEA j\\xE1 viu a caixa de di\\xE1logo \",(0,a.jsx)(e.code,{children:\"System has run out of application memory\"}),\", essa \\xE9 uma forma de chegar l\\xE1.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[\"Um teto razo\\xE1vel \\xE9 a mem\\xF3ria total menos 6\\u20138GB para o macOS e seus outros aplicativos. Defina o valor, rode seu modelo e observe a press\\xE3o de mem\\xF3ria no Monitor de Atividade. Se voc\\xEA est\\xE1 vendo picos de press\\xE3o de forma geral, nosso \",(0,a.jsx)(e.a,{href:\"/blog/macos-tahoe-ram-management-memory-optimization-complete-guide-2025\",children:\"guia de gerenciamento de mem\\xF3ria do Mac\"}),\" cobre o diagn\\xF3stico.\"]}),`\n`,(0,a.jsx)(e.p,{children:(0,a.jsx)(e.img,{alt:\"Capacidade de mem\\xF3ria versus largura de banda\",src:\"/images/blog/mac-unified-memory-local-llm-how-much-ram-m5-ultra-512gb-guide-2026/content-1.webp\",width:\"1024\",height:\"572\"})}),`\n`,(0,a.jsx)(e.h2,{id:\"largura-de-banda-a-velocidade-das-respostas\",children:\"Largura de Banda: A Velocidade das Respostas\"}),`\n`,(0,a.jsx)(e.p,{children:\"Aqui est\\xE1 a estimativa que importa, e aqui est\\xE1 exatamente o que ela \\xE9:\"}),`\n`,(0,a.jsx)(a.Fragment,{children:(0,a.jsx)(e.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,a.jsx)(e.code,{children:(0,a.jsx)(e.span,{className:\"line\",children:(0,a.jsx)(e.span,{children:\"tokens per second \\u2248 (memory bandwidth \\xD7 efficiency) \\xF7 weight size in bytes\"})})})})}),`\n`,(0,a.jsx)(e.p,{children:\"A efici\\xEAncia contabiliza a diferen\\xE7a entre a largura de banda te\\xF3rica de pico e o que um motor de infer\\xEAncia realmente consegue atingir \\u2014 no Apple silicon, com um runtime bem otimizado, algo entre 0.6 e 0.8. Uso 0.7 a seguir.\"}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Estas s\\xE3o estimativas calculadas a partir de n\\xFAmeros de largura de banda publicados, n\\xE3o benchmarks que eu rodei.\"}),\" Trate-as como a ordem de grandeza certa e a ordena\\xE7\\xE3o relativa correta, n\\xE3o como medi\\xE7\\xF5es. Os n\\xFAmeros reais variam com o runtime, a quantiza\\xE7\\xE3o, o comprimento do contexto e o comportamento t\\xE9rmico.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[\"Velocidade de gera\\xE7\\xE3o para um modelo \",(0,a.jsx)(e.strong,{children:\"denso\"}),\" em 4-bit:\"]}),`\n`,(0,a.jsxs)(e.table,{children:[(0,a.jsx)(e.thead,{children:(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.th,{}),(0,a.jsx)(e.th,{children:\"M6 (170GB/s)\"}),(0,a.jsx)(e.th,{children:\"M5 Pro (307GB/s)\"}),(0,a.jsx)(e.th,{children:\"M5 Max (614GB/s)\"}),(0,a.jsx)(e.th,{children:\"M5 Ultra (1.2TB/s)\"})]})}),(0,a.jsxs)(e.tbody,{children:[(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"8B (4.4GB)\"}),(0,a.jsx)(e.td,{children:\"~27 tok/s\"}),(0,a.jsx)(e.td,{children:\"~49 tok/s\"}),(0,a.jsx)(e.td,{children:\"~98 tok/s\"}),(0,a.jsx)(e.td,{children:\"~190 tok/s\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"32B (17.6GB)\"}),(0,a.jsx)(e.td,{children:\"~7 tok/s\"}),(0,a.jsx)(e.td,{children:\"~12 tok/s\"}),(0,a.jsx)(e.td,{children:\"~24 tok/s\"}),(0,a.jsx)(e.td,{children:\"~48 tok/s\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"70B (38.5GB)\"}),(0,a.jsx)(e.td,{children:\"n\\xE3o cabe\"}),(0,a.jsx)(e.td,{children:\"~6 tok/s\"}),(0,a.jsx)(e.td,{children:\"~11 tok/s\"}),(0,a.jsx)(e.td,{children:\"~22 tok/s\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"120B (66GB)\"}),(0,a.jsx)(e.td,{children:\"n\\xE3o cabe\"}),(0,a.jsx)(e.td,{children:\"n\\xE3o cabe\"}),(0,a.jsx)(e.td,{children:\"~7 tok/s\"}),(0,a.jsx)(e.td,{children:\"~13 tok/s\"})]})]})]}),`\n`,(0,a.jsx)(e.p,{children:\"Para refer\\xEAncia: uma velocidade de leitura confort\\xE1vel fica em torno de 10 tokens por segundo. Abaixo de cerca de 5, a maioria das pessoas para de usar a ferramenta.\"}),`\n`,(0,a.jsx)(e.p,{children:\"Olhe para a linha do 32B. \\xC9 um \\xFAnico modelo, e ele vai de mal toler\\xE1vel a genuinamente r\\xE1pido ao longo da faixa \\u2014 sem nenhuma mudan\\xE7a em rela\\xE7\\xE3o a caber ou n\\xE3o. Isso \\xE9 largura de banda, n\\xE3o capacidade, e \\xE9 o eixo que as pessoas esquecem quando compram a m\\xE1quina mais barata que tecnicamente comporta o modelo.\"}),`\n`,(0,a.jsx)(e.h3,{id:\"por-que-modelos-moe-mudam-a-resposta\",children:\"Por que modelos MoE mudam a resposta\"}),`\n`,(0,a.jsx)(e.p,{children:\"Modelos mixture-of-experts (MoE) quebram a regra acima, e esse \\xE9 o motivo inteiro pelo qual uma m\\xE1quina de 512GB \\xE9 interessante.\"}),`\n`,(0,a.jsxs)(e.p,{children:['Um modelo MoE armazena muitas subredes de especialistas (\"experts\"), mas ativa apenas algumas por token. Um modelo de 235B com 22B de par\\xE2metros ativos precisa ',(0,a.jsx)(e.em,{children:\"comportar\"}),\" o equivalente a 235B em pesos, mas s\\xF3 \",(0,a.jsx)(e.em,{children:\"l\\xEA\"}),\" o equivalente a cerca de 22B para produzir cada token.\"]}),`\n`,(0,a.jsx)(e.p,{children:\"Ent\\xE3o:\"}),`\n`,(0,a.jsxs)(e.ul,{children:[`\n`,(0,a.jsxs)(e.li,{children:[(0,a.jsx)(e.strong,{children:\"A capacidade\"}),\" \\xE9 governada pelo total de par\\xE2metros \\u2014 129GB em 4-bit.\"]}),`\n`,(0,a.jsxs)(e.li,{children:[(0,a.jsx)(e.strong,{children:\"A velocidade\"}),\" \\xE9 governada pelos par\\xE2metros ativos \\u2014 como um modelo denso de 22B, ent\\xE3o aproximadamente 40 tok/s em um M5 Ultra, em vez dos ~9 tok/s que um modelo denso de 235B conseguiria.\"]}),`\n`]}),`\n`,(0,a.jsx)(e.p,{children:\"Essa \\xE9 a assimetria que torna grandes modelos MoE pr\\xE1ticos no Apple silicon de um jeito que eles n\\xE3o s\\xE3o em uma GPU de consumo: voc\\xEA precisa da capacidade, que a Apple vende de um jeito que ningu\\xE9m mais vende a esse pre\\xE7o, e recebe velocidade proporcional a um modelo muito menor.\"}),`\n`,(0,a.jsxs)(e.p,{children:['\\xC9 tamb\\xE9m por isso que \"512GB roda modelos de fronteira\" \\xE9 verdade, mas incompleto. Ele roda modelos de fronteira ',(0,a.jsx)(e.em,{children:\"esparsos\"}),\" a uma velocidade utiliz\\xE1vel. Um hipot\\xE9tico modelo denso de 400B em 4-bit ocuparia 220GB e geraria cerca de 4 tokens por segundo em um M5 Ultra. Ele cabe. Voc\\xEA n\\xE3o gostaria da experi\\xEAncia.\"]}),`\n`,(0,a.jsx)(e.h2,{id:\"o-processamento-de-prompt-\\xE9-um-problema-diferente\",children:\"O Processamento de Prompt \\xC9 Um Problema Diferente\"}),`\n`,(0,a.jsx)(e.p,{children:\"Leia com aten\\xE7\\xE3o as afirma\\xE7\\xF5es da Apple sobre o novo Mac mini:\"}),`\n`,(0,a.jsxs)(e.blockquote,{children:[`\n`,(0,a.jsxs)(e.p,{children:[\"At\\xE9 4.8x mais r\\xE1pido no \",(0,a.jsx)(e.strong,{children:\"processamento de prompt de LLM\"}),` comparado ao M4\nAt\\xE9 13.5x mais r\\xE1pido no `,(0,a.jsx)(e.strong,{children:\"processamento de prompt de LLM\"}),\" comparado ao M1\"]}),`\n`]}),`\n`,(0,a.jsxs)(e.p,{children:[\"O processamento de prompt \\u2014 o \",(0,a.jsx)(e.em,{children:\"prefill\"}),\" \\u2014 \\xE9 a fase em que o modelo absorve o que voc\\xEA forneceu a ele. Cada token da sua entrada \\xE9 processado em paralelo, o que o torna \",(0,a.jsx)(e.strong,{children:\"limitado por computa\\xE7\\xE3o\"}),\" (\",(0,a.jsx)(e.em,{children:\"compute-bound\"}),\"): ele escala com o throughput da GPU, com os Neural Accelerators agora embutidos em cada n\\xFAcleo de GPU, e no M6, com o primeiro Neural Engine duplo que a Apple j\\xE1 lan\\xE7ou.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[\"A gera\\xE7\\xE3o de tokens \\u2014 o \",(0,a.jsx)(e.em,{children:\"decode\"}),\" \\u2014 acontece um token de cada vez, cada um exigindo uma passagem completa pelos pesos. Ela \\xE9 \",(0,a.jsx)(e.strong,{children:\"limitada por largura de banda\"}),\" (\",(0,a.jsx)(e.em,{children:\"bandwidth-bound\"}),\"), e nenhuma quantidade de poder de computa\\xE7\\xE3o resolve isso.\"]}),`\n`,(0,a.jsx)(e.p,{children:\"A Apple escolheu anunciar a metade limitada por computa\\xE7\\xE3o. Isso n\\xE3o \\xE9 enganoso; \\xE9 genuinamente a metade que mais melhorou nesta gera\\xE7\\xE3o. Mas significa que os n\\xFAmeros de marketing descrevem a velocidade com que a m\\xE1quina l\\xEA o seu documento de 50 p\\xE1ginas, n\\xE3o a velocidade com que ela escreve o resumo.\"}),`\n`,(0,a.jsx)(e.p,{children:\"Qual dos dois importa para voc\\xEA depende do seu trabalho:\"}),`\n`,(0,a.jsxs)(e.ul,{children:[`\n`,(0,a.jsxs)(e.li,{children:[(0,a.jsx)(e.strong,{children:\"Entradas longas, sa\\xEDdas curtas\"}),\" \\u2014 resumir documentos, classificar, extrair informa\\xE7\\xE3o de uma base de c\\xF3digo \\u2014 \\xE9 dominado pelo prefill. Os n\\xFAmeros da Apple se aplicam.\"]}),`\n`,(0,a.jsxs)(e.li,{children:[(0,a.jsx)(e.strong,{children:\"Entradas curtas, sa\\xEDdas longas\"}),\" \\u2014 redigir textos, chat, gera\\xE7\\xE3o de c\\xF3digo \\u2014 \\xE9 dominado pelo decode. A largura de banda \\xE9 o seu n\\xFAmero.\"]}),`\n`,(0,a.jsxs)(e.li,{children:[(0,a.jsx)(e.strong,{children:\"Entradas longas e sa\\xEDdas longas\"}),\" \\u2014 fluxos de trabalho ag\\xEAnticos sobre um contexto grande \\u2014 precisa dos dois, e ainda precisa de capacidade extra para o KV cache.\"]}),`\n`]}),`\n`,(0,a.jsx)(e.h2,{id:\"o-que-realmente-mudou-no-m5-ultra\",children:\"O Que Realmente Mudou no M5 Ultra\"}),`\n`,(0,a.jsx)(e.p,{children:\"Parte da cobertura do lan\\xE7amento deu a entender que comportar um modelo de fronteira em um desktop \\xE9 novidade. N\\xE3o \\xE9, e entender isso corretamente muda a decis\\xE3o de upgrade de quem j\\xE1 possui um Mac Studio.\"}),`\n`,(0,a.jsxs)(e.table,{children:[(0,a.jsx)(e.thead,{children:(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.th,{}),(0,a.jsx)(e.th,{children:\"M3 Ultra (2025)\"}),(0,a.jsx)(e.th,{children:\"M5 Ultra (2026)\"})]})}),(0,a.jsxs)(e.tbody,{children:[(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"Mem\\xF3ria unificada m\\xE1xima\"}),(0,a.jsx)(e.td,{children:\"512GB\"}),(0,a.jsx)(e.td,{children:\"512GB\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"Largura de banda de mem\\xF3ria\"}),(0,a.jsx)(e.td,{children:\"819GB/s\"}),(0,a.jsx)(e.td,{children:\"1.2TB/s\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"N\\xFAcleos de GPU\"}),(0,a.jsx)(e.td,{children:\"at\\xE9 80\"}),(0,a.jsx)(e.td,{children:\"at\\xE9 80\"})]}),(0,a.jsxs)(e.tr,{children:[(0,a.jsx)(e.td,{children:\"N\\xFAcleos de CPU\"}),(0,a.jsx)(e.td,{children:\"32\"}),(0,a.jsx)(e.td,{children:\"at\\xE9 36\"})]})]})]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"A capacidade n\\xE3o mudou. A contagem de n\\xFAcleos de GPU n\\xE3o mudou.\"}),\" A largura de banda subiu cerca de 1.47x, e a CPU ganhou quatro n\\xFAcleos.\"]}),`\n`,(0,a.jsx)(e.p,{children:'Isso bate exatamente com as pr\\xF3prias compara\\xE7\\xF5es da Apple em rela\\xE7\\xE3o ao M3 Ultra \\u2014 \"at\\xE9 1.3x mais desempenho multithread\" e \"at\\xE9 1.8x mais desempenho gr\\xE1fico\" s\\xE3o n\\xFAmeros modestos, e a grande alega\\xE7\\xE3o da Apple, \"at\\xE9 4.3x o desempenho de pico de computa\\xE7\\xE3o de IA\", vem dos Neural Accelerators agora embutidos em cada n\\xFAcleo de GPU, e n\\xE3o de n\\xFAcleos mais numerosos ou maiores.'}),`\n`,(0,a.jsx)(e.p,{children:\"Ent\\xE3o, especificamente para infer\\xEAncia local:\"}),`\n`,(0,a.jsxs)(e.ul,{children:[`\n`,(0,a.jsxs)(e.li,{children:[(0,a.jsx)(e.strong,{children:\"A velocidade de gera\\xE7\\xE3o\"}),\" melhora mais ou menos na propor\\xE7\\xE3o da largura de banda \\u2014 algo como 1.4x no mesmo modelo.\"]}),`\n`,(0,a.jsxs)(e.li,{children:[(0,a.jsx)(e.strong,{children:\"O processamento de prompt\"}),\" melhora muito mais, em linha com aquele n\\xFAmero de 4.3x em computa\\xE7\\xE3o de IA.\"]}),`\n`,(0,a.jsxs)(e.li,{children:[(0,a.jsx)(e.strong,{children:\"O que voc\\xEA consegue carregar\"}),\" permanece inalterado.\"]}),`\n`]}),`\n`,(0,a.jsxs)(e.p,{children:[\"Se voc\\xEA tem um Mac Studio M3 Ultra com 512GB e sua restri\\xE7\\xE3o \\xE9 quais modelos cabem, esta gera\\xE7\\xE3o n\\xE3o resolve um problema que voc\\xEA tem. Se sua restri\\xE7\\xE3o \\xE9 esperar o processamento de prompts longos, ela resolve isso diretamente. Nosso \",(0,a.jsx)(e.a,{href:\"/blog/mac-studio-2025-m4-max-m3-ultra-performance-guide\",children:\"guia de desempenho do Mac Studio M4 Max e M3 Ultra\"}),\" cobre a gera\\xE7\\xE3o anterior em detalhes.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[\"Mais uma observa\\xE7\\xE3o sobre prazos que vale a pena saber antes de pedir: \",(0,a.jsx)(e.strong,{children:\"a configura\\xE7\\xE3o de 512GB n\\xE3o chega junto com o restante da linha em 22 de setembro.\"}),\" A Apple estima a chegada para o final de outubro.\"]}),`\n`,(0,a.jsx)(e.p,{children:(0,a.jsx)(e.img,{alt:\"Escolhendo uma configura\\xE7\\xE3o de Mac para IA local\",src:\"/images/blog/mac-unified-memory-local-llm-how-much-ram-m5-ultra-512gb-guide-2026/content-2.webp\",width:\"1024\",height:\"572\"})}),`\n`,(0,a.jsx)(e.h2,{id:\"qual-m\\xE1quina-de-acordo-com-o-que-voc\\xEA-realmente-faz\",children:\"Qual M\\xE1quina, De Acordo Com O Que Voc\\xEA Realmente Faz\"}),`\n`,(0,a.jsx)(e.h3,{id:\"16gb--n\\xE3o-\\xE9-para-isso\",children:\"16GB \\u2014 n\\xE3o \\xE9 para isso\"}),`\n`,(0,a.jsx)(e.p,{children:\"Voc\\xEA tem aproximadamente 10\\u201312GB dispon\\xEDveis para a GPU. Isso roda modelos de 8B em 4-bit com contexto modesto, e nada maior que isso. \\xC9 adequado para modelos da categoria de autocompletar e pequenos assistentes locais, e vai frustrar voc\\xEA em qualquer outra coisa. Em 2026, 16GB \\xE9 uma m\\xE1quina que faz bem outras coisas e roda LLMs incidentalmente.\"}),`\n`,(0,a.jsx)(e.h3,{id:\"32gb-m6-mac-mini-configura\\xE7\\xE3o-m\\xE1xima--1299--o-ponto-de-entrada\",children:\"32GB (M6 Mac mini, configura\\xE7\\xE3o m\\xE1xima \\u2014 $1,299) \\u2014 o ponto de entrada\"}),`\n`,(0,a.jsx)(e.p,{children:\"Cerca de 21\\u201324GB para trabalhar. Isso roda modelos de 8B e 14B com folga, e um modelo de 32B em 4-bit com contexto curto, a cerca de 7 tokens por segundo. Esse \\xFAltimo n\\xFAmero \\xE9 o limite honesto: cabe, mas no limiar do agrad\\xE1vel.\"}),`\n`,(0,a.jsx)(e.p,{children:\"Bom para: assistentes de codifica\\xE7\\xE3o locais, trabalho privado com documentos, aprender as ferramentas. O upgrade de $400 a partir dos 16GB n\\xE3o \\xE9 opcional se modelos locais s\\xE3o um dos motivos pelos quais voc\\xEA est\\xE1 comprando a m\\xE1quina.\"}),`\n`,(0,a.jsx)(e.h3,{id:\"64gb-m5-pro-mac-mini--1699--o-ponto-ideal-para-a-maioria-das-pessoas\",children:\"64GB (M5 Pro Mac mini \\u2014 $1,699+) \\u2014 o ponto ideal para a maioria das pessoas\"}),`\n`,(0,a.jsx)(e.p,{children:\"Cerca de 42\\u201348GB dispon\\xEDveis, e 307GB/s. Um modelo de 70B em 4-bit cabe com espa\\xE7o para contexto real, gerando cerca de 6 tokens por segundo \\u2014 utiliz\\xE1vel para trabalho em lote, lento para chat interativo. Um modelo de 32B roda a aproximadamente 12 tokens por segundo, o que \\xE9 confort\\xE1vel.\"}),`\n`,(0,a.jsx)(e.p,{children:\"\\xC9 aqui que a maior parte do uso s\\xE9rio de modelos locais se estabelece, e \\xE9 a configura\\xE7\\xE3o que eu indicaria para a maioria das pessoas. Ela tamb\\xE9m traz Thunderbolt 5, que o M6 mini n\\xE3o tem.\"}),`\n`,(0,a.jsx)(e.h3,{id:\"128gb-m5-max-mac-studio--2499--o-n\\xEDvel-profissional\",children:\"128GB (M5 Max Mac Studio \\u2014 $2,499+) \\u2014 o n\\xEDvel profissional\"}),`\n`,(0,a.jsx)(e.p,{children:\"Cerca de 85\\u201396GB dispon\\xEDveis a 614GB/s. Um 70B em 4-bit roda a aproximadamente 11 tokens por segundo, confortavelmente interativo. Modelos da classe 120B cabem. Modelos MoE de porte m\\xE9dio se tornam pr\\xE1ticos.\"}),`\n`,(0,a.jsx)(e.p,{children:\"\\xC9 a configura\\xE7\\xE3o para quem tem o trabalho dependente de infer\\xEAncia local diariamente \\u2014 a largura de banda praticamente dobra a velocidade de gera\\xE7\\xE3o do M5 Pro no mesmo modelo.\"}),`\n`,(0,a.jsx)(e.h3,{id:\"512gb-m5-ultra-mac-studio--5499-mais-de-18000-na-configura\\xE7\\xE3o-m\\xE1xima--capacidade-que-voc\\xEA-n\\xE3o-compra-em-outro-lugar\",children:\"512GB (M5 Ultra Mac Studio \\u2014 $5,499+, mais de $18,000 na configura\\xE7\\xE3o m\\xE1xima) \\u2014 capacidade que voc\\xEA n\\xE3o compra em outro lugar\"}),`\n`,(0,a.jsx)(e.p,{children:\"Cerca de 340\\u2013384GB dispon\\xEDveis a 1.2TB/s. Isso comporta modelos MoE da classe 400B em 4-bit e gera na velocidade correspondente \\xE0 contagem de par\\xE2metros ativos deles, que \\xE9 exatamente o que nenhum outro desktop faz a esse pre\\xE7o.\"}),`\n`,(0,a.jsx)(e.p,{children:\"Compre isso se voc\\xEA est\\xE1 limitado por capacidade de um jeito que nada mais resolve. Se seus modelos cabem em 128GB, o Ultra est\\xE1 comprando para voc\\xEA uma velocidade que pode ser obtida de forma mais barata.\"}),`\n`,(0,a.jsx)(e.h3,{id:\"se-voc\\xEA-n\\xE3o-vai-comprar-um-mac-novo\",children:\"Se voc\\xEA n\\xE3o vai comprar um Mac novo\"}),`\n`,(0,a.jsx)(e.p,{children:\"Um Mac M1/M2/M3/M4 que voc\\xEA j\\xE1 tem, com mem\\xF3ria adequada, roda modelos locais sem problemas \\u2014 a largura de banda nos n\\xEDveis Pro e Max j\\xE1 \\xE9 boa h\\xE1 v\\xE1rias gera\\xE7\\xF5es. Confira os seus pr\\xF3prios n\\xFAmeros:\"}),`\n`,(0,a.jsx)(a.Fragment,{children:(0,a.jsx)(e.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"m 4,4 a 1,1 0 0 0 -0.7070312,0.2929687 1,1 0 0 0 0,1.4140625 L 8.5859375,11 3.2929688,16.292969 a 1,1 0 0 0 0,1.414062 1,1 0 0 0 1.4140624,0 l 5.9999998,-6 a 1.0001,1.0001 0 0 0 0,-1.414062 L 4.7070312,4.2929687 A 1,1 0 0 0 4,4 Z m 8,14 a 1,1 0 0 0 -1,1 1,1 0 0 0 1,1 h 8 a 1,1 0 0 0 1,-1 1,1 0 0 0 -1,-1 z\" fill=\"currentColor\" /></svg>',children:(0,a.jsxs)(e.code,{children:[(0,a.jsx)(e.span,{className:\"line\",children:(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Total memory in GB\"})}),`\n`,(0,a.jsxs)(e.span,{className:\"line\",children:[(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\"echo\"}),(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:' \"$(( '}),(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"$(sysctl\"}),(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" -n\"}),(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:' hw.memsize) / 1073741824 )) GB\"'})]}),`\n`,(0,a.jsx)(e.span,{className:\"line\"}),`\n`,(0,a.jsx)(e.span,{className:\"line\",children:(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#6A737D\",\"--shiki-dark\":\"#6A737D\"},children:\"# Chip and current GPU wired limit\"})}),`\n`,(0,a.jsxs)(e.span,{className:\"line\",children:[(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"sysctl\"}),(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#005CC5\",\"--shiki-dark\":\"#79B8FF\"},children:\" -n\"}),(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" machdep.cpu.brand_string\"})]}),`\n`,(0,a.jsxs)(e.span,{className:\"line\",children:[(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#6F42C1\",\"--shiki-dark\":\"#B392F0\"},children:\"sysctl\"}),(0,a.jsx)(e.span,{style:{\"--shiki-light\":\"#032F62\",\"--shiki-dark\":\"#9ECBFF\"},children:\" iogpu.wired_limit_mb\"})]})]})})}),`\n`,(0,a.jsx)(e.p,{children:\"Depois aplique as tabelas acima. Um M1 Max de 64GB a 400GB/s \\xE9 uma m\\xE1quina perfeitamente boa para infer\\xEAncia local, e sempre foi.\"}),`\n`,(0,a.jsx)(e.h2,{id:\"um-exemplo-resolvido\",children:\"Um Exemplo Resolvido\"}),`\n`,(0,a.jsx)(e.p,{children:\"Tabelas abstratas s\\xE3o f\\xE1ceis de concordar e dif\\xEDceis de colocar em pr\\xE1tica. Aqui est\\xE1 o racioc\\xEDnio aplicado a um caso concreto.\"}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"O requisito:\"}),\" um assistente de codifica\\xE7\\xE3o privado que l\\xEA uma base de c\\xF3digo moderadamente grande, mant\\xE9m um contexto de 32.000 tokens e responde de forma interativa. Voc\\xEA quer um modelo da classe 32B porque modelos menores s\\xE3o visivelmente piores em c\\xF3digo.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Passo 1 \\u2014 pesos.\"}),\" 32B em 4-bit: 32 \\xD7 0.55 = \",(0,a.jsx)(e.strong,{children:\"17.6GB\"}),\".\"]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Passo 2 \\u2014 contexto.\"}),\" 32.000 tokens a aproximadamente 0.2 MB por token, para um modelo moderno com grouped-query attention: \",(0,a.jsx)(e.strong,{children:\"cerca de 6.4GB\"}),\". Esse \\xE9 o termo que as pessoas esquecem, e aqui ele representa mais de um ter\\xE7o do tamanho dos pesos.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Passo 3 \\u2014 overhead.\"}),\" Runtime, buffers do Metal, tokenizer: \",(0,a.jsx)(e.strong,{children:\"2\\u20133GB\"}),\".\"]}),`\n`,(0,a.jsx)(e.p,{children:(0,a.jsx)(e.strong,{children:'Total: aproximadamente 26\\u201327GB que precisam ser fixados (\"wired\") para a GPU.'})}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Passo 4 \\u2014 traduzir para mem\\xF3ria instalada.\"}),\" Com um teto autom\\xE1tico de ~70%, 27GB fixados exigem cerca de 38GB instalados. Um Mac de 32GB lhe d\\xE1 21\\u201324GB automaticamente \\u2014 n\\xE3o \\xE9 suficiente. Voc\\xEA poderia elevar o \",(0,a.jsx)(e.code,{children:\"iogpu.wired_limit_mb\"}),\" para 27GB em uma m\\xE1quina de 32GB, o que deixaria 5GB para o macOS e todo o resto. Isso funcionaria enquanto nada mais estivesse rodando, e desmoronaria no momento em que voc\\xEA abrisse um navegador.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Conclus\\xE3o: 64GB instalados.\"}),\" O que recai sobre o M5 Pro Mac mini, n\\xE3o o M6.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Passo 5 \\u2014 verificar a velocidade.\"}),\" 307GB/s \\xD7 0.7 \\xF7 17.6GB \\u2248 \",(0,a.jsx)(e.strong,{children:\"12 tokens por segundo\"}),\". Confort\\xE1vel para uso interativo.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[\"Agora mude uma vari\\xE1vel. Mantenha tudo o mais igual e pe\\xE7a um contexto de 128.000 tokens: o KV cache sobe para aproximadamente 25GB, a demanda total para cerca de 45GB, e a mem\\xF3ria instalada necess\\xE1ria para 64GB no \",(0,a.jsx)(e.em,{children:\"m\\xEDnimo\"}),\", com o limite fixado elevado \\u2014 ou 128GB para ficar confort\\xE1vel. Uma \\xFAnica configura\\xE7\\xE3o empurrou a resposta um n\\xEDvel inteiro de produto acima.\"]}),`\n`,(0,a.jsx)(e.p,{children:\"Esse \\xE9 o m\\xE9todo completo. Pesos, contexto, overhead, divida pelo teto, e depois confira a largura de banda em rela\\xE7\\xE3o ao tamanho dos pesos.\"}),`\n`,(0,a.jsx)(e.h2,{id:\"nem-todos-os-runtimes-se-comportam-da-mesma-forma\",children:\"Nem Todos os Runtimes Se Comportam da Mesma Forma\"}),`\n`,(0,a.jsx)(e.p,{children:\"A aritm\\xE9tica acima descreve o hardware. O que voc\\xEA de fato observa depende do software, e as diferen\\xE7as s\\xE3o grandes o suficiente para mudar uma decis\\xE3o de compra.\"}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"MLX\"}),' \\xE9 o framework de arrays da pr\\xF3pria Apple, constru\\xEDdo para mem\\xF3ria unificada. Ele n\\xE3o copia dados entre \"mem\\xF3ria da CPU\" e \"mem\\xF3ria da GPU\" porque no Apple silicon essa distin\\xE7\\xE3o n\\xE3o existe, e em geral \\xE9 a op\\xE7\\xE3o mais eficiente em mem\\xF3ria em um Mac. Se voc\\xEA est\\xE1 comprando hardware especificamente para infer\\xEAncia local, \\xE9 o ferramental baseado em MLX que faz o hardware brilhar.']}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"llama.cpp\"}),\", e as ferramentas constru\\xEDdas sobre ele, \\xE9 a op\\xE7\\xE3o mais port\\xE1vel e tem excelente suporte a Metal. Seus formatos de quantiza\\xE7\\xE3o \\u2014 a fam\\xEDlia \",(0,a.jsx)(e.code,{children:\"Q4_K_M\"}),\" que as tabelas acima assumem \\u2014 s\\xE3o o padr\\xE3o de fato, e seu comportamento de mem\\xF3ria \\xE9 previs\\xEDvel e bem documentado.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Ollama\"}),' envolve o llama.cpp com gerenciamento de modelos. \\xC9 conveniente, e o que voc\\xEA precisa saber \\xE9 que ele mant\\xE9m os modelos residentes na mem\\xF3ria depois do uso, por um per\\xEDodo configur\\xE1vel. Se voc\\xEA est\\xE1 perto do seu teto, um modelo que voc\\xEA terminou de usar h\\xE1 uma hora ainda pode estar ocupando mem\\xF3ria. Essa \\xE9 uma causa frequente do \"ontem funcionava\".']}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"LM Studio\"}),\" \\xE9 a op\\xE7\\xE3o gr\\xE1fica e \\xE9 honesto quanto \\xE0 mem\\xF3ria, mostrando o que vai e o que n\\xE3o vai caber antes de voc\\xEA carregar o modelo. \\xC9 uma boa forma de desenvolver intui\\xE7\\xE3o sobre esses n\\xFAmeros sem precisar fazer contas.\"]}),`\n`,(0,a.jsx)(e.p,{children:\"Dois comportamentos importam independente do que voc\\xEA usa:\"}),`\n`,(0,a.jsxs)(e.ol,{children:[`\n`,(0,a.jsxs)(e.li,{children:[(0,a.jsx)(e.strong,{children:\"Se o KV cache \\xE9 pr\\xE9-alocado.\"}),\" Alguns runtimes reservam a janela de contexto completa no momento do carregamento; outros a fazem crescer conforme a conversa avan\\xE7a. Pr\\xE9-aloca\\xE7\\xE3o significa que um modelo que funcionaria na pr\\xE1tica falha ao carregar. Se um modelo se recusa a carregar com 128K mas carrega com 8K, esse \\xE9 o motivo \\u2014 e reduzir o contexto configurado \\xE9 a solu\\xE7\\xE3o, n\\xE3o um modelo menor.\"]}),`\n`,(0,a.jsxs)(e.li,{children:[(0,a.jsx)(e.strong,{children:\"Se modelos n\\xE3o usados s\\xE3o descarregados.\"}),\" Verifique a configura\\xE7\\xE3o de keep-alive do seu runtime antes de concluir que sua m\\xE1quina \\xE9 pequena demais.\"]}),`\n`]}),`\n`,(0,a.jsx)(e.h2,{id:\"ganhando-margem-sem-comprar-mem\\xF3ria\",children:\"Ganhando Margem Sem Comprar Mem\\xF3ria\"}),`\n`,(0,a.jsx)(e.p,{children:\"Antes de gastar $400 em um n\\xEDvel de mem\\xF3ria, v\\xE1rias t\\xE9cnicas mudam a aritm\\xE9tica.\"}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Quantize com mais agressividade.\"}),\" Cair de 8-bit para 4-bit reduz pela metade a necessidade de mem\\xF3ria, com uma perda de qualidade modesta. Isso \\xE9 quase sempre uma troca melhor do que migrar para um modelo menor em maior precis\\xE3o \\u2014 um modelo de 32B em 4-bit geralmente supera um modelo de 14B em 8-bit, com mem\\xF3ria semelhante.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Quantize o KV cache.\"}),\" A maioria dos runtimes consegue armazenar o KV cache em 8-bit ou menos. Em contextos longos, onde o cache rivaliza com os pesos, essa \\xE9 a maior economia isolada dispon\\xEDvel, e o custo em qualidade \\xE9 pequeno.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Dimensione o contexto corretamente.\"}),\" Uma janela de contexto de 128K da qual voc\\xEA usa apenas 4.000 tokens ainda custa o pre\\xE7o cheio em runtimes que pr\\xE9-alocam. Configure o contexto que voc\\xEA de fato usa.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Prefira modelos MoE.\"}),\" Como visto acima, um modelo mixture-of-experts d\\xE1 a voc\\xEA a qualidade de um modelo grande na velocidade de gera\\xE7\\xE3o de um pequeno. O custo \\xE9 capacidade, que \\xE9 exatamente o que um Mac tem mais do que as alternativas.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Use speculative decoding.\"}),' Um pequeno modelo rascunho (\"draft\") prop\\xF5e v\\xE1rios tokens, e o modelo grande os verifica em uma \\xFAnica passagem. Como a verifica\\xE7\\xE3o \\xE9 paralela, isso ataca diretamente o gargalo de largura de banda e pode aumentar de forma significativa os tokens por segundo \\u2014 ao custo de manter um segundo modelo, pequeno, em mem\\xF3ria. Em uma m\\xE1quina limitada por largura de banda mas com capacidade de sobra, \\xE9 uma boa troca.']}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Feche coisas.\"}),\" \\xD3bvio, e ainda assim \\xE9 a resposta surpreendentemente com frequ\\xEAncia. Navegadores com muitas abas, m\\xE1quinas virtuais e editores de v\\xEDdeo est\\xE3o todos disputando o mesmo conjunto de mem\\xF3ria. N\\xE3o existe uma VRAM separada para recorrer.\"]}),`\n`,(0,a.jsx)(e.h2,{id:\"solucionando-problemas-comuns\",children:\"Solucionando Problemas Comuns\"}),`\n`,(0,a.jsx)(e.h3,{id:\"o-modelo-carrega-mas-a-gera\\xE7\\xE3o-est\\xE1-extremamente-lenta\",children:\"O modelo carrega, mas a gera\\xE7\\xE3o est\\xE1 extremamente lenta\"}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Problema\"}),\": Voc\\xEA excedeu o que o macOS vai entregar \\xE0 GPU, e o trabalho est\\xE1 transbordando para o swap. Os sintomas s\\xE3o um primeiro token que demora muitos segundos e uma gera\\xE7\\xE3o que engasga em vez de fluir de forma constante.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Solu\\xE7\\xE3o\"}),\": Verifique a press\\xE3o de mem\\xF3ria no Monitor de Atividade enquanto a gera\\xE7\\xE3o acontece. Se estiver amarela ou vermelha, use uma quantiza\\xE7\\xE3o menor, reduza a janela de contexto ou eleve o \",(0,a.jsx)(e.code,{children:\"iogpu.wired_limit_mb\"}),\" \\u2014 deixando pelo menos 6\\u20138GB para o sistema. Se a press\\xE3o estiver verde e ainda assim estiver lento, voc\\xEA est\\xE1 simplesmente limitado por largura de banda, e a solu\\xE7\\xE3o \\xE9 um modelo menor.\"]}),`\n`,(0,a.jsx)(e.h3,{id:\"system-has-run-out-of-application-memory\",children:'\"System has run out of application memory\"'}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Problema\"}),\": Geralmente um limite fixado de forma agressiva demais, ou um contexto grande que cresceu ao longo de uma sess\\xE3o longa.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Solu\\xE7\\xE3o\"}),\": Redefina com \",(0,a.jsx)(e.code,{children:\"sudo sysctl iogpu.wired_limit_mb=0\"}),\" e reinicie o processo de infer\\xEAncia. Reinicie o sistema se ele continuar inst\\xE1vel \\u2014 a configura\\xE7\\xE3o n\\xE3o \\xE9 persistente, ent\\xE3o um rein\\xEDcio a limpa de qualquer forma. Causas relacionadas s\\xE3o cobertas no nosso \",(0,a.jsx)(e.a,{href:\"/blog/macos-tahoe-memory-leak-fix-complete-guide-2026\",children:\"guia de solu\\xE7\\xE3o de vazamentos de mem\\xF3ria\"}),\".\"]}),`\n`,(0,a.jsx)(e.h3,{id:\"cabe-no-papel-mas-falha-ao-carregar\",children:\"Cabe no papel, mas falha ao carregar\"}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Problema\"}),\": Voc\\xEA dimensionou apenas pelos pesos e esqueceu o KV cache, ou o runtime est\\xE1 alocando o contexto completo de antem\\xE3o, em vez de faz\\xEA-lo crescer aos poucos.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Solu\\xE7\\xE3o\"}),\": Reduza o comprimento do contexto nas configura\\xE7\\xF5es do seu runtime e tente novamente. Se um contexto de 32K carrega e um de 128K n\\xE3o, isso confirma o diagn\\xF3stico, e a aritm\\xE9tica na se\\xE7\\xE3o de capacidade indica quanto voc\\xEA precisa para o contexto que deseja.\"]}),`\n`,(0,a.jsx)(e.h3,{id:\"o-mac-esquenta-e-fica-mais-lento-ao-longo-de-uma-sess\\xE3o-longa\",children:\"O Mac esquenta e fica mais lento ao longo de uma sess\\xE3o longa\"}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Problema\"}),\": Infer\\xEAncia sustentada \\xE9 uma carga sustentada tanto na GPU quanto na mem\\xF3ria. Laptops reduzem o desempenho (throttle). Desktops, em geral, n\\xE3o.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Solu\\xE7\\xE3o\"}),\": Esse \\xE9 um dos argumentos reais a favor de um Mac mini ou Mac Studio em vez de um MacBook para essa carga de trabalho \\u2014 margem t\\xE9rmica sustentada. Em um laptop, veja nosso \",(0,a.jsx)(e.a,{href:\"/blog/macbook-pro-m5-overheating-thermal-throttling-fix-guide-2026\",children:\"guia de throttling t\\xE9rmico do MacBook Pro M5\"}),\".\"]}),`\n`,(0,a.jsx)(e.h3,{id:\"processamento-de-prompt-r\\xE1pido-gera\\xE7\\xE3o-lenta\",children:\"Processamento de prompt r\\xE1pido, gera\\xE7\\xE3o lenta\"}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Problema\"}),\": Nada est\\xE1 errado. Esse \\xE9 o comportamento esperado do hardware.\"]}),`\n`,(0,a.jsxs)(e.p,{children:[(0,a.jsx)(e.strong,{children:\"Solu\\xE7\\xE3o\"}),\": Veja a se\\xE7\\xE3o prefill-versus-decode acima. Se velocidade de gera\\xE7\\xE3o \\xE9 o que voc\\xEA precisa, a solu\\xE7\\xE3o \\xE9 um modelo menor, uma quantiza\\xE7\\xE3o mais agressiva, um modelo MoE com poucos par\\xE2metros ativos, ou mais largura de banda \\u2014 nessa ordem de custo.\"]}),`\n`,(0,a.jsx)(e.h2,{id:\"perguntas-frequentes\",children:\"Perguntas Frequentes\"}),`\n`,(0,a.jsx)(e.h3,{id:\"quanta-ram-eu-preciso-para-rodar-um-modelo-de-70b\",children:\"Quanta RAM eu preciso para rodar um modelo de 70B?\"}),`\n`,(0,a.jsxs)(e.p,{children:[\"Na quantiza\\xE7\\xE3o de 4-bit, os pesos ficam em torno de 38.5GB. Somando contexto e overhead, voc\\xEA quer \",(0,a.jsx)(e.strong,{children:\"64GB instalados\"}),\" como m\\xEDnimo realista, porque o macOS s\\xF3 vai entregar cerca de 42\\u201348GB disso para a GPU. 48GB instalados fica apertado demais assim que voc\\xEA inclui qualquer contexto significativo.\"]}),`\n`,(0,a.jsx)(e.h3,{id:\"16gb-\\xE9-suficiente-para-ia-local-em-2026\",children:\"16GB \\xE9 suficiente para IA local em 2026?\"}),`\n`,(0,a.jsx)(e.p,{children:\"Para modelos de 8B em 4-bit com contexto curto, sim. Para qualquer coisa maior, n\\xE3o. Se modelos locais s\\xE3o um dos motivos pelos quais voc\\xEA est\\xE1 comprando a m\\xE1quina, trate 32GB como o piso e 64GB como o alvo.\"}),`\n`,(0,a.jsx)(e.h3,{id:\"o-neural-engine-acelera-llms-locais\",children:\"O Neural Engine acelera LLMs locais?\"}),`\n`,(0,a.jsx)(e.p,{children:'Ele contribui para o processamento de prompt, que \\xE9 de onde vem o n\\xFAmero de \"4.8x mais r\\xE1pido no processamento de prompt de LLM\" da Apple, e o Neural Engine duplo de 16 n\\xFAcleos do M6 \\xE9 um avan\\xE7o real. Ele n\\xE3o muda o limite de largura de banda na gera\\xE7\\xE3o de tokens. A maioria dos runtimes populares de infer\\xEAncia local no Mac se apoia principalmente na GPU via Metal.'}),`\n`,(0,a.jsx)(e.h3,{id:\"devo-comprar-o-mac-studio-de-512gb\",children:\"Devo comprar o Mac Studio de 512GB?\"}),`\n`,(0,a.jsx)(e.p,{children:\"Somente se voc\\xEA for limitado por capacidade. Se os modelos que voc\\xEA realmente roda cabem em 128GB, um Mac Studio M5 Max faz o mesmo trabalho por um ter\\xE7o do pre\\xE7o. Vale notar tamb\\xE9m que a op\\xE7\\xE3o de 512GB s\\xF3 chega no final de outubro, e a m\\xE1quina totalmente configurada chega a $18,299.\"}),`\n`,(0,a.jsx)(e.h3,{id:\"posso-adicionar-mem\\xF3ria-depois\",children:\"Posso adicionar mem\\xF3ria depois?\"}),`\n`,(0,a.jsx)(e.p,{children:\"N\\xE3o. A mem\\xF3ria unificada faz parte do encapsulamento do chip em todo Mac com Apple silicon. Essa \\xE9 a especifica\\xE7\\xE3o que mais vale a pena comprar com folga, porque \\xE9 a \\xFAnica que voc\\xEA nunca poder\\xE1 revisitar.\"}),`\n`,(0,a.jsx)(e.h3,{id:\"um-mac-\\xE9-melhor-do-que-um-pc-com-gpu-discreta-para-isso\",children:\"Um Mac \\xE9 melhor do que um PC com GPU discreta para isso?\"}),`\n`,(0,a.jsx)(e.p,{children:\"Trade-offs diferentes. Uma GPU discreta tem uma largura de banda de mem\\xF3ria muito maior, mas muito menos mem\\xF3ria \\u2014 placas de consumo ficam bem abaixo do que um Mac Studio oferece. Um Mac vence de forma decisiva em capacidade por d\\xF3lar e em consumo de energia, e perde em throughput bruto para modelos pequenos o suficiente para caber na VRAM. Se seus modelos s\\xE3o grandes, o Mac costuma ser a \\xFAnica op\\xE7\\xE3o de m\\xE1quina \\xFAnica. Se s\\xE3o pequenos, uma GPU \\xE9 mais r\\xE1pida.\"}),`\n`,(0,a.jsx)(e.h3,{id:\"a-quantiza\\xE7\\xE3o-prejudica-a-qualidade\",children:\"A quantiza\\xE7\\xE3o prejudica a qualidade?\"}),`\n`,(0,a.jsx)(e.p,{children:\"8-bit \\xE9 quase sem perdas para a maioria dos prop\\xF3sitos. Os K-quants de 4-bit s\\xE3o o padr\\xE3o pr\\xE1tico, e a degrada\\xE7\\xE3o \\xE9 modesta para a maioria das tarefas. Abaixo de 4-bit, a qualidade cai de forma percept\\xEDvel. Dadas as tabelas de mem\\xF3ria acima, cair de 8-bit para 4-bit reduz pela metade, aproximadamente, a necessidade de mem\\xF3ria \\u2014 geralmente uma troca melhor do que migrar para um modelo menor.\"}),`\n`,(0,a.jsx)(e.h2,{id:\"conclus\\xE3o\",children:\"Conclus\\xE3o\"}),`\n`,(0,a.jsx)(e.p,{children:\"A manchete dos 512GB \\xE9 real, e para um pequeno n\\xFAmero de pessoas ela \\xE9 decisiva. Para todo o resto, a vers\\xE3o \\xFAtil deste artigo s\\xE3o tr\\xEAs linhas de aritm\\xE9tica: os pesos s\\xE3o par\\xE2metros vezes bytes por par\\xE2metro, o contexto adiciona 0.1\\u20130.5 MB por token em cima disso, e o macOS entrega \\xE0 GPU apenas cerca de 65\\u201375% do que voc\\xEA comprou.\"}),`\n`,(0,a.jsx)(e.p,{children:\"Rode esses n\\xFAmeros contra os modelos que voc\\xEA realmente pretende usar, e a resposta geralmente recai em 64GB. Depois verifique o segundo n\\xFAmero \\u2014 a largura de banda \\u2014 porque \\xE9 ela que decide se o modelo que cabe \\xE9 um modelo que voc\\xEA vai continuar usando. A diferen\\xE7a entre um modelo de 32B a 7 tokens por segundo e o mesmo modelo a 24 tokens por segundo \\xE9 a diferen\\xE7a entre uma demonstra\\xE7\\xE3o e uma ferramenta, e nenhuma quantidade de capacidade fecha essa lacuna.\"}),`\n`,(0,a.jsx)(e.p,{children:\"E qualquer que seja a sua escolha, escolha com cuidado. Est\\xE1 soldado.\"}),`\n`,(0,a.jsx)(e.p,{children:(0,a.jsxs)(e.em,{children:[\"Leitura relacionada: \",(0,a.jsx)(e.a,{href:\"/blog/mac-mini-m6-mac-studio-m5-ultra-2026-specs-price-buying-guide\",children:\"Mac mini M6 e Mac Studio M5 Ultra: o que realmente mudou\"}),\", \",(0,a.jsx)(e.a,{href:\"/blog/local-ai-apps-mac-privacy-guide-2026\",children:\"apps de IA local no Mac e o que eles fazem com seus dados\"}),\", e \",(0,a.jsx)(e.a,{href:\"/blog/mac-ram-prices-rising-2026-dram-shortage-memory-buying-guide\",children:\"os pre\\xE7os de RAM do Mac est\\xE3o subindo em 2026\"}),\".\"]})})]})}function l(o={}){let{wrapper:e}=o.components||{};return e?(0,a.jsx)(e,{...o,children:(0,a.jsx)(m,{...o})}):m(o)}return k(B);})();\n;return Component;","toc":[{"title":"Principais Conclusões","url":"#principais-conclusões","depth":2},{"title":"Os Dois Números","url":"#os-dois-números","depth":2},{"title":"Capacidade: O Que Cabe","url":"#capacidade-o-que-cabe","depth":2},{"title":"Depois, some o contexto","url":"#depois-some-o-contexto","depth":3},{"title":"A regra prática","url":"#a-regra-prática","depth":3},{"title":"O Teto Que Ninguém Menciona","url":"#o-teto-que-ninguém-menciona","depth":2},{"title":"Largura de Banda: A Velocidade das Respostas","url":"#largura-de-banda-a-velocidade-das-respostas","depth":2},{"title":"Por que modelos MoE mudam a resposta","url":"#por-que-modelos-moe-mudam-a-resposta","depth":3},{"title":"O Processamento de Prompt É Um Problema Diferente","url":"#o-processamento-de-prompt-é-um-problema-diferente","depth":2},{"title":"O Que Realmente Mudou no M5 Ultra","url":"#o-que-realmente-mudou-no-m5-ultra","depth":2},{"title":"Qual Máquina, De Acordo Com O Que Você Realmente Faz","url":"#qual-máquina-de-acordo-com-o-que-você-realmente-faz","depth":2},{"title":"16GB — não é para isso","url":"#16gb--não-é-para-isso","depth":3},{"title":"32GB (M6 Mac mini, configuração máxima — $1,299) — o ponto de entrada","url":"#32gb-m6-mac-mini-configuração-máxima--1299--o-ponto-de-entrada","depth":3},{"title":"64GB (M5 Pro Mac mini — $1,699+) — o ponto ideal para a maioria das pessoas","url":"#64gb-m5-pro-mac-mini--1699--o-ponto-ideal-para-a-maioria-das-pessoas","depth":3},{"title":"128GB (M5 Max Mac Studio — $2,499+) — o nível profissional","url":"#128gb-m5-max-mac-studio--2499--o-nível-profissional","depth":3},{"title":"512GB (M5 Ultra Mac Studio — $5,499+, mais de $18,000 na configuração máxima) — capacidade que você não compra em outro lugar","url":"#512gb-m5-ultra-mac-studio--5499-mais-de-18000-na-configuração-máxima--capacidade-que-você-não-compra-em-outro-lugar","depth":3},{"title":"Se você não vai comprar um Mac novo","url":"#se-você-não-vai-comprar-um-mac-novo","depth":3},{"title":"Um Exemplo Resolvido","url":"#um-exemplo-resolvido","depth":2},{"title":"Nem Todos os Runtimes Se Comportam da Mesma Forma","url":"#nem-todos-os-runtimes-se-comportam-da-mesma-forma","depth":2},{"title":"Ganhando Margem Sem Comprar Memória","url":"#ganhando-margem-sem-comprar-memória","depth":2},{"title":"Solucionando Problemas Comuns","url":"#solucionando-problemas-comuns","depth":2},{"title":"O modelo carrega, mas a geração está extremamente lenta","url":"#o-modelo-carrega-mas-a-geração-está-extremamente-lenta","depth":3},{"title":"\"System has run out of application memory\"","url":"#system-has-run-out-of-application-memory","depth":3},{"title":"Cabe no papel, mas falha ao carregar","url":"#cabe-no-papel-mas-falha-ao-carregar","depth":3},{"title":"O Mac esquenta e fica mais lento ao longo de uma sessão longa","url":"#o-mac-esquenta-e-fica-mais-lento-ao-longo-de-uma-sessão-longa","depth":3},{"title":"Processamento de prompt rápido, geração lenta","url":"#processamento-de-prompt-rápido-geração-lenta","depth":3},{"title":"Perguntas Frequentes","url":"#perguntas-frequentes","depth":2},{"title":"Quanta RAM eu preciso para rodar um modelo de 70B?","url":"#quanta-ram-eu-preciso-para-rodar-um-modelo-de-70b","depth":3},{"title":"16GB é suficiente para IA local em 2026?","url":"#16gb-é-suficiente-para-ia-local-em-2026","depth":3},{"title":"O Neural Engine acelera LLMs locais?","url":"#o-neural-engine-acelera-llms-locais","depth":3},{"title":"Devo comprar o Mac Studio de 512GB?","url":"#devo-comprar-o-mac-studio-de-512gb","depth":3},{"title":"Posso adicionar memória depois?","url":"#posso-adicionar-memória-depois","depth":3},{"title":"Um Mac é melhor do que um PC com GPU discreta para isso?","url":"#um-mac-é-melhor-do-que-um-pc-com-gpu-discreta-para-isso","depth":3},{"title":"A quantização prejudica a qualidade?","url":"#a-quantização-prejudica-a-qualidade","depth":3},{"title":"Conclusão","url":"#conclusão","depth":2}],"estimatedTime":26}