O OnePlus 5 está novamente trapaceando em benchmarks na tentativa de enganar revisores e clientes. Descubra como eles fizeram isso em nosso artigo especial!
No início deste ano, nós publicou um relatório que denunciou OnePlus (e outras empresas) por seu comportamento impróprio em relação à manipulação de benchmark em versões mais recentes do OxygenOS. Hoje, infelizmente, temos de dar seguimento às nossas acusações, uma vez que a empresa mais uma vez tem manipulado indevidamente as pontuações dos benchmarks no mercado. OnePlus 5.
Embora nenhum cliente tenha um dispositivo em mãos (afinal, ele acabou de ser lançado), aprendemos sobre o novo mecanismo de trapaça de benchmark do OnePlus através da nossa unidade de avaliação, que recebemos cerca de dez dias antes do dia em que o embargo será quebrado e os revisores poderão reportar sobre o dispositivo. Infelizmente, é quase certo que cada análise do OnePlus 5 que contém um benchmark está usando resultados enganosos, já que o OnePlus forneceu aos revisores um dispositivo que trapaceia nos benchmarks. Esta é uma atitude indesculpável, porque, em última análise, é uma tentativa de enganar não apenas os clientes, mas manchar o trabalho de revisores e jornalistas com dados enganosos que a maioria não é capaz de examinar ou verificar. Como resultado, todas as análises do OnePlus 5 que citam pontuações de benchmark como um elogio ao sucesso do telefone são enganar escritores e leitores, e análises de desempenho baseadas em benchmarks sintéticos são invalidado. O pior é que, desta vez,
Antes de entrarmos em detalhes, gostaria de afirmar que estamos decepcionados com a empresa por recorrer mais uma vez a essas práticas. Também não forneceremos uma análise de desempenho completa envolvendo todos os nossos testes incluídos, já que muitos dos nossos benchmarks preferidos são afetados pelo mecanismo de trapaça. Finalmente, compartimentaremos este relatório a partir do nosso julgamento geral do próprio dispositivo, porque estamos confiantes o código culpado será removido das versões do consumidor após este relatório e nossas conversas com OnePlus representantes. Embora não acreditemos que este artigo especial necessariamente deve alterar sua percepção do hardware em si, é certo que ele altere sua opinião sobre a empresa, visto que esta é a segunda transgressão deles.
Uma palavra rápida sobre metodologia
Todas as pontuações neste artigo foram obtidas em uma unidade de análise OnePlus 5 executando OxygenOS versão 4.5.0 (A5000_22_170603); esta é uma unidade de pré-produção e foi originalmente carregada com software de pré-produção que recebeu um OTA para a versão mencionada acima. OnePlus encaminhou instruções aos revisores para permitir o download de aplicativos de benchmark na Play Store, e provavelmente isso foi feito para que não houvesse vazamentos de pontuação de benchmark antes de tempo. Isso me deu uma pista sobre o fato de que o OnePlus estava se referindo aos pacotes de benchmark pelo nome em sua ROM. Quanto aos testes, a ROM tinha processos mínimos em segundo plano, sem aplicativos de terceiros e executando o Modo Avião quando aplicável; As frequências da CPU foram registradas apenas para determinar a extensão da trapaça e não nos testes que produziram pontuações para este artigo. Todas as temperaturas foram medidas usando um FLIR C2 Compacto com cada corrida de resistência começando a uma temperatura externa de 28,5°C | 83,3°F.
Manipulação de benchmark – como é feita
Em janeiro passado, nosso relatório descobriu um mecanismo de trapaça encontrado nas compilações do OxygenOS Beta e no software de envio do OnePlus 3T. Atribuímos essas mudanças ao recente fusão dos então díspares OxygenOS e HydrogenOS equipes de desenvolvedores e a base de código subjacente do OxygenOS que agora seria compartilhada com o HydrogenOS, embora esta especulação ainda não tenha sido confirmada. Fazia sentido para nós na época e os comentários dos representantes do OnePlus feitos ao XDA-Developers adicionaram credibilidade à nossa teoria. Com o OnePlus 5, vemos um tipo diferente de mecanismo de trapaça, mas não podemos identificar se isso foi introduzido conscientemente pelos mesmos desenvolvedores que o adicionaram na primeira vez. Sabemos apenas que ele tem como alvo os mesmos pacotes.
Então, como funciona e qual é a diferença? Da última vez, o OnePlus introduziu alterações no comportamento de sua ROM sempre que detectava a abertura de um aplicativo de benchmark. Esses nomes de aplicativos foram listados explicitamente por seus IDs de pacote na ROM em um manifesto que especificava os destinos. Então, a ROM alteraria a frequência em relação a uma carga de CPU ajustada - nossas ferramentas mostraram que a carga de CPU cairia para 0%, independentemente de atividade óbvia dentro do aplicativo, e a CPU veria uma frequência quase mínima de 1,29 GHz nos núcleos grandes e 0,98 GHz nos pequenos núcleos. Esta frequência mínima reduziu a faixa de frequência efetiva, o que por sua vez reduziu o número de frequências de passo; nos benchmarks, isso resultou em uma variância ligeiramente menor e, como mostramos, em um desempenho sustentado mais alto, já que a frequência mínima mais alta não pôde ser substituída pelo estrangulamento térmico. Resumindo, o comportamento de trapaça era claro e demonstrável tanto pela observação da variação da pontuação quanto pelo monitoramento das frequências da CPU ao longo do jogo. benchmark, que mostrou um piso de frequência que - na maior parte - permitiu ao dispositivo pontuar consistentemente mais perto de seu potencial total.
O OnePlus 5, por outro lado, é uma fera totalmente diferente – ele recorre a mecanismos de trapaça óbvios e calculados vimos nos carros-chefe nos primeiros dias do Android, uma abordagem que visa claramente maximizar as pontuações nas situações mais enganosas moda. Embora não haja mudanças de governador quando um usuário insere um benchmark (pelo menos, não conseguimos ver esse é o caso), a frequência mínima do pequeno cluster salta para a frequência máxima, conforme visto nos reguladores de desempenho. Todos os pequenos núcleos são afetados e mantidos em 1,9 GHz, e é por meio desse truque que o OnePlus atinge alguns dos mais altos níveis do GeekBench 4 pontuações de um Snapdragon 835 até o momento - e provavelmente a mais alta possível, dada sua configuração sem compromissos com seu específico configuração. Pontuações certamente superiores às obtidas por dispositivos semelhantes e pelo próprio dispositivo de teste MSM8998 da Qualcomm que tivemos a sorte de avaliar. Abaixo está uma lista de aplicativos de benchmark afetados:
- AnTuTu (com.antutu.benchmark.full)
- Androbench (com.andromeda.androbench2)
- Geekbench 4 (com.primatelabs.geekbench)
- GFXBench (com.glbenchmark.glbenchmark27)
- Quadrante (com.aurorasoftworks.quadrant.ui.standard)
- Nenamarca 2 (se.nena.nenamark2)
- Velamo (com.quicinc.vellamo)
O que não é nada surpreendente é os aplicativos afetados são exatamente os mesmos da última vez, e o OnePlus está claramente visando os mesmos pacotes. A diferença nas pontuações é exatamente o que você esperaria, na maior parte. Conseguimos falsificar a trapaça do benchmark e evitá-la com o GeekBench 4, de forma semelhante aos nossos testes em nosso último relatório. Descobrimos que ao executar o GeekBench 4 na Play Store, o dispositivo obteve mais de 6.700 pontos em multi-core, embora nunca tenhamos obtido uma pontuação de 6.500, uma vez que o dispositivo se comportou conforme esperado com nossa construção oculta de GeekBench. Abaixo você pode ver um gráfico de frequência ao longo do tempo para o pequeno cluster do OnePlus 5 ao executar o GeekBench 4 na Play Store, e a mesma configuração executando uma versão do GeekBench 4 sem identificadores que é capaz de enganar a trapaça do OnePlus mecanismo.
Caso não fique evidente no gráfico acima: pesquisamos a frequência da CPU a cada 100ms e, no total, apenas 24,4% das leituras retornaram a frequência máxima de 1,9Ghz ao desabilitar o cheat. Enquanto isso, a execução com trapaça habilitada gastou impressionantes 95% das leituras em seu estado de frequência máxima. É absolutamente evidente que o OnePlus está mantendo as frequências de CPU desses núcleos artificialmente altas durante o benchmark, o que resulta em valores significativamente mais altos pontuações gerais no teste multi-core e também se manifesta em várias subpontuações vinculadas à CPU na análise detalhada de cada teste (particularmente em número inteiro e flutuante operações). A diferença é mais clara e vantajosa em pontuações multi-core, entretanto, e os resultados de núcleo único são surpreendentemente semelhantes entre as execuções com e sem trapaça de benchmark, com a pontuação de núcleo único sendo realmente mais alta, em média, sem manipulação.
Ainda assim, multi-core é o valor que a maioria das pessoas considera e percebe imediatamente quando se trata deste benchmark específico, dado O Android é um sistema operacional altamente paralelo que agora está cheio de aplicativos multithread após anos de suporte para vários núcleos. Mesmo que o aumento seja significativo apenas em benchmarks e testes multithread, ainda assim resultaria em um aumento considerável e injusto. e vantagem não representativa sobre outros dispositivos que permitem que seu regulador padrão e configurações de desempenho operem sob a referência; esses resultados alterados não são representativos do desempenho real do OnePlus 5 de forma alguma, pois são refletindo um desempenho máximo e inatingível do dispositivo sob condições artificiais e sem restrições.
O delta da pontuação Multi Core entre as pontuações ao executar o GeekBench 4 com e sem o mecanismo de trapaça pode ser de até 6,5%, embora em média seja em torno de 5%. Poderia olhar insignificante, mas esse empurrão é suficiente para impulsionar o dispositivo à frente de outros dispositivos Snapdragon 835. Acima você pode ver um gráfico de pontos de várias execuções independentes do GeekBench 4 com e sem o mecanismo de trapaça. O abismo é evidente e, como se pode inferir do boxplot, não pode ser resultado de uma variação inerente. Resumindo, aumentar artificialmente as frequências da CPU produz resultados muito melhores em benchmarks sintéticos.
Abaixo você pode ver um gráfico de desempenho ao longo do tempo com as temperaturas que os acompanham, como queríamos determinar se há relaxamento térmico em jogo também, ou se houve uma diferença nas pontuações durante avaliação comparativa.
Configuramos os testes do GeekBench 4 com um intervalo de dois segundos entre a tela de resultados e o início de outra execução de benchmark; a temperatura do dispositivo externo (não a temperatura da bateria conforme relatada pelo Android) foi medida usando um sensor térmico FLIR câmera após um segundo de calibração, calculando a média das três medições imediatas nos dois segundos entre corre. Fiquei bastante surpreso ao ver que, no geral, esses dois dispositivos esquentaram na mesma proporção e nenhum deles sofreu queda na pontuação. Todos os resultados em cada conjunto de dados estão dentro da variação esperada, sugerindo que não há estrangulamento térmico em jogo. Após uma inspeção mais detalhada, isso realmente não deveria ser uma surpresa, dado que o desempenho sustentado é um dos pontos fortes inerentes aos núcleos Cortex-A73 nos quais os núcleos Kryo do Snapdragon 835 se baseiam sobre. Os núcleos afetados são os núcleos com baixo consumo de energia, e o fato de o GeekBench 4 vir especificamente com medidas para evitar o estrangulamento que altera as pontuações dos subtestes perto do final de uma execução, é algo aprendemos em nossa entrevista com John Poole.
Curiosamente, nem todos os benchmarks populares são alvo do mecanismo de trapaça do OnePlus. O 3DMark, por exemplo, não detectou nenhum desses problemas ao executar testes ou mesmo ao abrir o aplicativo. No entanto, outros benchmarks como GFXBench são direcionados e vemos o mesmo comportamento da CPU ao abri-los e executá-los. Na verdade, durante um desempenho sustentado usando o Manhattan Battery Test da GFXBench, o OnePlus 5 atingiu temperaturas superiores a 50°C | 122°F (temperatura externa), uma ocorrência muito rara entre os dispositivos que testei no passado, todos os quais experimentam algum grau de estrangulamento térmico que os impede de conseguir isso quente.
Engane-me uma vez, que vergonha; Me engane duas vezes, que vergonha
É um pouco perturbador que tenhamos chegado ao ponto em que temos que criticar a mesma empresa duas vezes por manipular as pontuações dos benchmarks. O fato de que tudo isso também foi feito em unidades de revisão agrava ainda mais o problema: esse mecanismo de trapaça tem como objetivo maximizar o desempenho e fazer com que o dispositivo pareça melhor ou mais rápido nas seções de análises de desempenho. O sistema de direcionamento e manipulação foi empacotado em unidades de pré-produção enviadas aos jornalistas que basearão suas descobertas em seus dispositivos do OnePlus, muitos deles incapazes ou relutantes em verificar a existência de trapaça em seus unidade de revisão. Não é culpa deles, mas o XDA está em busca de manipulação de benchmark apenas porque a encontramos no passado e achamos melhor informar nossos leitores e potenciais compradores de telefones.
Esperamos que este artigo possa reacender uma conversa mais ampla sobre benchmarks, seu papel e sua utilidade nas análises atuais de smartphones. Não se engane, empresas como Qualcomm e Samsung fazer se preocupam com os benchmarks e os consideram uma forma válida, embora incompleta, para os clientes julgarem o desempenho de seus dispositivos, embora tenham ferramentas mais sofisticadas para consultar ao desenvolver seus processadores. Em última análise, os benchmarks podem ser de grande importância se compreendermos o que o software está medindo e até que ponto os seus resultados podem ser usados para deduzir a classificação. de um processador específico, uma configuração específica de hardware ou, em termos mais holísticos, um telefone específico com as mudanças de comportamento que seu software introduz como bem. Acho que chegamos a um momento em que é mais importante focar no desempenho do mundo real e na eficiência energética do que na computação ou processamento bruto proeza, porque está obviamente claro neste ponto que o gargalo para o desempenho no mundo real vem do Android e de implementações específicas dele por OEMs.
Voltando ao OnePlus, eu realmente não sei por que a equipe de software da empresa, e qual lado da equipe de software especificamente, reintroduziu a manipulação de benchmark após ser questionada. É pior desta vez, com o aparente propósito de inflacionar as pontuações produzidas pelos aparelhos revisores. O OnePlus 5 ainda é um dispositivo com desempenho incrível que realmente não precisa de trapaça de benchmark para fazer uma declaração – na verdade, fiquei impressionado com sua fluidez e desempenho geral. capacidade de resposta e ficou claro para mim, após meu tempo com os dispositivos da empresa, bem como entrevistas e conversas com sua gestão, que eles sabem que o desempenho é um aspecto forte da seus telefones. É uma medida calculada, muito provavelmente, pois eles poderiam ter percebido que valia a pena incomodar um pequeno sector da população. principalmente no lado ocidental do mercado de entusiastas, a fim de talvez engessar a Internet com as pontuações de benchmark mais altas que eles poderia reunir. Seja qual for o caso, espero honestamente que a empresa corrija isso errado, pois, embora eu tenha grandes coisas a dizer sobre o hardware deles, eles começaram o lançamento com o pé errado aos meus olhos.
Declaração da OnePlus
Entramos em contato com o OnePlus para comentar esse problema e aqui está o que eles têm a dizer:
As pessoas usam aplicativos de benchmark para verificar o desempenho de seus dispositivos e queremos que os usuários vejam o verdadeiro desempenho do OnePlus 5. Portanto, permitimos que aplicativos de benchmark sejam executados em um estado semelhante ao uso diário, incluindo a execução de aplicativos e jogos com uso intensivo de recursos. Além disso, ao iniciar aplicativos, o OnePlus 5 funciona em um estado semelhante para aumentar a velocidade de abertura dos aplicativos. Não estamos fazendo overclock do dispositivo, mas sim exibindo o potencial de desempenho do OnePlus 5.
Esta declaração que recebemos esta manhã é um pouco chocante de ouvir, já que a trapaça do benchmark coloca o dispositivo em um estado que é explicitamente não como o dispositivo funcionará no uso diário e representa um desempenho que você não verá em outros aplicativos que não sejam especificamente direcionados a tais aumentos.
Tenha em mente que, diferentemente do overclocking competitivo, a maioria dos benchmarks de telefones são projetados para representar como um telefone funcionará no uso diário. Não é apenas uma pontuação para tentar obter os melhores resultados possíveis, mas sim uma tentativa de representar o desempenho do telefone sob perfis térmicos regulares e uso da bateria. Uma tentativa de representar como o telefone realmente funciona no uso diário. Esses benchmarks não foram projetados para medir algum “potencial de desempenho” que não é alcançável no mundo real uso, e qualquer tentativa de direcioná-los com código de trapaça de benchmark no estilo “dispositivo de derrota” é enganosa para os usuários. Se você bloquear a velocidade do clock da CPU em seu valor máximo e permitir que a temperatura corporal do telefone suba a um nível inutilizável níveis quando determinados aplicativos são abertos, isso não é indicativo de como o telefone funcionará quando estiver em uso real. usar.
Embora o perfil térmico fosse relativamente normal no Geekbench 4 com CPU pesada, onde o fantástico desempenho sustentado dos núcleos Kryo 280 baseados em ARM Cortex-A73 permite o telefone para funcionar com os níveis aumentados de uso da bateria que a trapaça de benchmark trouxe sem esquentar muito, vimos uma história completamente diferente com aplicativos com uso intensivo de GPU. Conforme mencionado, ao testar o desempenho sustentado com o Manhattan Battery Test da GFXBench, o OnePlus 5 atingiu temperaturas em torno de 50°C | 122 ° F (temperatura externa), que é escaldante para um telefone e é completamente desconfortável de segurar. Tentando jogar videogame ou usar outros aplicativos com uso intensivo de GPU a 50°C | Um telefone a 122°F seria apenas uma experiência ruim para o usuário.
Mesmo que o OnePlus também tenha como alvo aplicativos que não sejam de referência com seu código de trapaça de referência, isso ainda seria um problema, pois significaria que o desempenho que você vê em os aplicativos intensivos de hoje serão completamente diferentes do que você vê nos aplicativos atuais que não estão na lista ou em aplicativos intensivos futuros, quando o OnePlus parar de atualizar a lista. Isso poderia ser modificado permitindo que os usuários colocassem na lista de permissões quais aplicativos se beneficiam de reforços ocultos, bem como exibir de forma transparente quais estão se beneficiando da inadimplência - sugerimos isso em nosso último relatório, mas não foi implementado.
Estamos decepcionados com as ações do OnePlus neste assunto e esperamos que o OnePlus, pela segunda vez, remova o código de trapaça de benchmark de seu software. Isso representa falsamente o telefone para os clientes e não é o tipo de comportamento que gostamos de ver em dispositivos tão incríveis quanto o OnePlus 3T e o OnePlus 5.
DECLARAÇÃO ATUALIZADA
OnePlus forneceu uma declaração atualizada que explica melhor sua posição sobre o assunto:
“Definimos o OnePlus 5 para executar benchmarks em um nível de alto desempenho que seja natural e sustentável para todos. dispositivos, mídia e consumidor, para que os usuários possam ver o verdadeiro potencial do dispositivo, ao executar aplicativos que consomem muitos recursos e jogos. Em nenhum momento fazemos overclock da CPU, nem definimos um piso de frequência da CPU.
Estamos confiantes de que nossa abordagem reflete melhor as verdadeiras capacidades de desempenho do OnePlus 5."
A declaração afirma corretamente que não há overclock envolvido (o que seria um passo acima do atual mecanismo, em termos de produção de pontuações ilegítimas), e não há piso de frequência de CPU como o que efetivamente vimos última vez. Através desta declaração e após conversas com representantes da OnePlus, fica claro para mim que eles não implementaram esse mecanismo por pura malícia, mas porque queriam mostrar as "capacidades" de desempenho do dispositivo. Mas, mais uma vez, devemos salientar que “capacidades” aqui (e para elas) referem-se ao potencial máximo, não o nível real de desempenho que a experiência do usuário deve fornecer por meio de frequência tradicional dimensionamento. Concorde ou discorde, está confirmado que esta manipulação do benchmark permanecerá, embora tenhamos sugerido a possibilidade de tornar esse perfil de desempenho acessível ao usuário para aplicativos selecionados, e acredito que o OnePlus é receptivo a isso ideia. Existem outras empresas que tornam esses ajustes acessíveis ao usuário, incluindo HTC e Samsung, embora suas soluções giram principalmente em torno da diminuição do consumo de energia (embora as alterações na resolução por aplicativo aumentem o desempenho nos jogos, também).
O facto é que os produtores de benchmark, os engenheiros e os entusiastas do Android consideram estes mecanismos injustos e não representativos da realidade. experiência do usuário, um pouco enganosa e, em última análise, um desperdício de recursos que poderia ter sido utilizado em outro aspecto do desenvolvimento do produto. Se você quiser ver o quão forte o OnePlus 5 pode impulsionar seu hardware, provavelmente concordará com a decisão do OnePlus. Se você quiser ver como a combinação de hardware e software padrão do OnePlus 5 se compara a outros dispositivos com hardware semelhante, você está sem sorte, porque manipular as frequências da CPU dessa forma torna as pontuações totalmente incomensurável.
Por último, e correndo o risco de parecer confrontador, gostaria também de reservar um momento para mencionar algo que me desagradou na recepção deste relatório: foi compartilhado em todo o mundo milhares de vezes, e re-blogado por milhares de meios de comunicação também, mas sua mensagem e detalhes ou estão envoltos em névoa ou são completamente abandonados. o caminho. Já vi uma cobertura tão flagrante e terrivelmente incorreta deste artigo, com terríveis deturpações do que dissemos, do que encontramos, do mecanismo em si e da declaração e planos para o futuro. Na verdade, aqui estão algumas coisas que quero que esses blogs saibam: o OnePlus não “adulterou” as unidades de revisão; a questão se estende também às unidades consumidoras; é uma decisão consciente da OnePlus; não, eles não nos disseram que isso iria mudar; o estrangulamento térmico pode ser relaxado, mas o telefone não corre risco de explosão; não existe "código de trapaça"; estamos realmente satisfeitos com o desempenho real do dispositivo, não distorça nossas palavras; A Qualcomm não tem nada a ver com isso; nunca “envergonhamos” a HTC e a Samsung em nossos relatórios, mencionamos-os de passagem e para contextualizar em nosso primeiro artigo, devido a um incidente muito mais antigo. Essa é apenas uma fração dos erros comuns que eu gostaria de poder resolver. Muitos artigos e vídeos que vimos apresentavam uma falha fundamental e um mal-entendido que, em nossa opinião, destruiu as horas de coleta e análise cuidadosa de dados que foram utilizadas neste artigo. O que é pior, o problema é agravado quando lemos blogs indianos ou chineses que destroem ainda mais as nossas descobertas devido às dificuldades inerentes de tradução. No final das contas, estamos extremamente decepcionados com a forma como a mídia de tecnologia lidou com este relatório, especialmente aqueles que usaram nossa conclusão para escrever “artigos de sucesso” contra o OnePlus, o que realmente nunca pretendíamos. Dissemos acima, dissemos nas nossas primeiras impressões e repetimos: o produto em si é bom, o desempenho é fenomenal.