Teste de Memória
Meça a alocação de array tipado e o throughput de leitura/escrita no seu navegador, e veja quais números de memória seu navegador realmente expõe.
Browser-reported memory
navigator.deviceMemory
Not exposed by this browser
JS heap (performance.memory)
Not exposed by this browser
Chromium browsers round deviceMemory to one of 0.25, 0.5, 1, 2, 4 or 8 GB, and it can be lower than your real RAM. Firefox and Safari do not expose either figure, which is normal and not a bug.
Throughput benchmark
Allocates and reads/writes typed arrays in JavaScript to estimate practical memory speed.
Guia rápido: como usar o Benchmark de Memória
Leva menos de um minuto- 1Feche abas que consomem muita memória para que o navegador possa alocar livremente.
- 2Execute o benchmark e deixe todas as fases terminarem.
- 3Verifique a alocação, a leitura e a taxa de transferência de gravação separadamente.
- 4O limite de heap relatado é um limite do navegador, não a sua RAM total.
Visão Geral
A velocidade da memória raramente recebe a atenção que a velocidade do clock da CPU ou o modelo da GPU recebem, mas ela afeta silenciosamente tudo o que um computador faz. Cada instrução que um processador executa eventualmente precisa ler ou gravar dados em algum lugar, e se esses dados tiverem que viajar por uma memória lenta, mesmo uma CPU rápida acaba esperando. Este teste oferece uma visão baseada no navegador de quão rapidamente o JavaScript pode alocar memória e mover dados através dela, além de quaisquer dados de memória que seu navegador específico esteja disposto a expor.
O benchmark funciona com arrays tipados, especificamente buffers Float64Array, que são o equivalente mais próximo do JavaScript a blocos de memória brutos. Ele cronometra quatro operações distintas: quão rápido novos arrays podem ser alocados, quão rápido os dados podem ser gravados em um array em ordem, quão rápido esses mesmos dados podem ser lidos de volta em ordem e como essas velocidades mudam quando o padrão de acesso à memória é aleatório em vez de sequencial.
Juntamente com os números de throughput, esta página lê duas informações expostas pelo navegador, quando disponíveis: navigator.deviceMemory, uma aproximação grosseira da RAM total do sistema, e performance.memory, que reporta o tamanho atual e máximo do heap de JavaScript em navegadores baseados em Chromium. Ambos vêm com limitações reais que valem a pena entender antes de tirar conclusões deles.
Como ler seus resultados
Throughput de alocação
Isso mede quantos megabytes por segundo seu navegador pode alocar da memória para novos arrays. É influenciado pelo gerenciador de memória e pelo coletor de lixo do motor JavaScript tanto quanto pelo hardware bruto, então as diferenças aqui frequentemente dizem mais sobre o navegador do que sobre os próprios chips de RAM.
Acesso sequencial vs aleatório
Os números de leitura e gravação sequenciais devem ser visivelmente mais altos do que os números de leitura e gravação aleatórias, e essa diferença é normal e esperada em todo computador devido ao funcionamento dos caches da CPU. Uma diferença muito pequena entre as velocidades sequenciais e aleatórias pode, na verdade, indicar um cache de processador muito rápido em relação ao tamanho da memória, e não um problema.
Números de deviceMemory e heap
Trate navigator.deviceMemory como um indicador de nível aproximado, em vez de um valor exato de RAM, já que o Chromium o limita a 8GB, independentemente da quantidade de RAM realmente instalada. Os números do heap JS refletem o que está alocado para esta aba específica do navegador no momento e crescerão à medida que a página e suas ferramentas forem executadas, o que é um comportamento esperado e não um vazamento de memória.
Solução de problemas
deviceMemory ou os números da heap mostram 'Não exposto'
Isso é esperado no Firefox e Safari, que não implementam essas APIs por motivos de privacidade. Mude para o Chrome, Edge, Brave ou outro navegador baseado em Chromium se você precisar especificamente ver esses números.
Os números de throughput parecem incomumente baixos
Feche outras abas que consomem muita memória, especialmente aquelas com imagens grandes, vídeos ou muitas abas abertas do mesmo site, já que elas competem pelo mesmo espaço de heap JavaScript e RAM física. Reiniciar o navegador completamente, em vez de apenas fechar abas, limpa a fragmentação de memória acumulada que também pode desacelerar as coisas.
A aba do navegador travou ou ficou sem resposta durante o teste
Isso pode acontecer em dispositivos com muito pouca RAM livre, já que o benchmark precisa de algumas centenas de megabytes de espaço para executar seus arrays tipados. Feche outros aplicativos e abas para liberar memória e tente novamente com menos coisas rodando simultaneamente.
O que os navegadores escondem deliberadamente, e por quê
Informações detalhadas de memória podem ser usadas para identificar um dispositivo, pois quantidades exatas de RAM combinadas com outros sinais restringem qual modelo de dispositivo específico alguém está usando. Por causa disso, nenhum navegador expõe a RAM exata em gigabytes, a velocidade exata da memória em MHz ou a configuração do canal de memória. O Chrome compromete-se arredondando deviceMemory em seis grandes categorias, enquanto o Firefox e o Safari removem a API completamente para não correr o risco de ser usada para rastreamento.
Isso significa que um teste de memória baseado no navegador nunca poderá substituir completamente ferramentas como o Gerenciador de Tarefas, o Monitor de Atividade ou o painel de informações do sistema de um fabricante para verificar a RAM exata instalada. O que ele faz de bom, em vez disso, é medir o throughput prático e comparar esse throughput entre navegadores ou após uma mudança de hardware, como adicionar um módulo de RAM ou atualizar para um kit de memória mais rápido.
Quando a memória é realmente o seu gargalo
Se o seu computador parece lento especificamente quando você tem muitas abas do navegador ou aplicativos abertos ao mesmo tempo, e acelera novamente depois de fechar alguns deles, isso é um sinal clássico de que a capacidade da memória, e não a velocidade, é a restrição. Se, em vez disso, tudo parece lento mesmo com poucas coisas abertas, e os números de throughput deste benchmark são dramaticamente mais baixos do que o normal para hardware similar, isso aponta mais para um problema de velocidade ou configuração de memória, como a RAM funcionando em um modo mais lento do que o projetado.
- Verifique a quantidade e a velocidade da RAM instalada no painel de informações do sistema do seu SO, não apenas neste teste de navegador.
- Compare os números deste teste antes e depois de fechar aplicativos em segundo plano.
- Combine este teste com os benchmarks de CPU e armazenamento neste site para eliminar outros gargalos.
Perguntas frequentes
Um site pode realmente medir a velocidade da minha RAM?
Um site pode medir a velocidade com que o JavaScript pode alocar e acessar arrays tipados, o que se correlaciona com a velocidade real da memória, mas também inclui sobrecarga do motor JavaScript, coletor de lixo e comportamento do cache da CPU. É uma medida prática útil, não um teste de largura de banda de memória de nível de laboratório como o que você obteria de um software de diagnóstico de hardware dedicado.
Por que o navigator.deviceMemory mostra um número menor do que minha RAM real?
Navegadores baseados em Chromium arredondam e limitam deliberadamente este valor a um pequeno conjunto de números (0,25, 0,5, 1, 2, 4 ou 8 GB) como medida de privacidade, de modo que um sistema com 32 GB de RAM ainda reportará um máximo de 8. Isso é intencional e não um sinal de problema.
Por que o Firefox ou Safari não mostram deviceMemory ou performance.memory?
Ambos os navegadores optam por não implementar essas APIs, principalmente por preocupações de que informações detalhadas de memória possam ser usadas para identificar ou rastrear usuários entre sites. Se você precisar dessas informações, o Chrome, Edge ou outro navegador baseado em Chromium as mostrarão.
Qual é uma velocidade normal de leitura/escrita para ver neste teste?
Velocidades de leitura e escrita sequenciais na casa dos milhares de MB/s são comuns em hardware moderno, uma vez que isso mede o acesso a arrays na heap em vez da largura de banda direta do chip de RAM físico. As velocidades de acesso aleatório são tipicamente visivelmente mais baixas do que as velocidades sequenciais devido a falhas de cache da CPU, o que é esperado e não um defeito.
Por que o acesso aleatório é mais lento que o acesso sequencial?
As CPUs leem a memória em blocos do tamanho de linhas de cache e preveem bem os padrões sequenciais, então endereços de memória consecutivos são carregados rapidamente do cache. Endereços aleatoriamente espalhados anulam essa previsão e forçam mais acessos à memória principal mais lenta, o que é uma propriedade fundamental das hierarquias de memória do computador, não uma limitação do navegador.
Fechar outras abas do navegador melhora minha pontuação?
Sim, especialmente abas que já contêm grandes quantidades de dados na memória, pois elas competem pela mesma RAM física e podem forçar pausas na coleta de lixo durante o teste. Fechar abas não relacionadas antes de executar o benchmark proporciona um resultado mais limpo e repetível.
O que performance.memory.jsHeapSizeLimit realmente significa?
É o tamanho máximo da heap que o motor JavaScript permitirá para esta página antes de começar a coletar lixo agressivamente ou lançar erros de falta de memória, não a RAM total do seu sistema. Geralmente, são alguns gigabytes, mesmo em máquinas com muito mais RAM física, já que é um limite de segurança por aba.
Meu número de throughput de alocação parece inconsistente entre as execuções. Por quê?
O tempo da coleta de lixo não é perfeitamente previsível, então se um ciclo de coleta acontecer durante o loop de alocação cronometrado, essa execução mostrará um throughput menor. Executar o benchmark duas ou três vezes e observar o resultado típico em vez de um único valor atípico oferece uma imagem mais confiável.
Este teste pode me dizer se minha RAM está com defeito?
Não de forma confiável. Este benchmark mede tendências de throughput e velocidade, mas a detecção de RAM com defeito requer ferramentas de teste de padrões de bits exaustivas como o memtest86, que rodam fora do navegador e verificam cada endereço de memória diretamente. Se você suspeitar de uma falha de hardware, use uma ferramenta de diagnóstico de memória dedicada.
Mais RAM sempre significa uma pontuação melhor aqui?
Não diretamente. Este teste aloca uma quantidade fixa e modesta de memória, bem dentro do que quase qualquer dispositivo moderno tem disponível, então ele mede a velocidade de acesso em vez da capacidade total. Um dispositivo com menos RAM total, mas chips de memória mais rápidos, pode superar um com mais RAM, mas chips mais lentos.