Futuros
Acesse centenas de contratos perpétuos
TradFi
Ouro
Plataforma única para ativos tradicionais globais
Opções
Hot
Negocie opções vanilla no estilo europeu
Conta unificada
Maximize sua eficiência de capital
Negociação demo
Introdução à negociação de futuros
Prepare-se para sua negociação de futuros
Eventos de futuros
Participe de eventos e ganhe recompensas
Negociação demo
Use fundos virtuais para experimentar negociações sem riscos
Lançamento
CandyDrop
Colete candies para ganhar airdrops
Launchpool
Staking rápido, ganhe novos tokens em potencial
HODLer Airdrop
Possua GT em hold e ganhe airdrops massivos de graça
Launchpad
Chegue cedo para o próximo grande projeto de token
Pontos Alpha
Negocie on-chain e receba airdrops
Pontos de futuros
Ganhe pontos de futuros e colete recompensas em airdrop
Investimento
Simple Earn
Ganhe juros com tokens ociosos
Autoinvestimento
Invista automaticamente regularmente
Investimento duplo
Lucre com a volatilidade do mercado
Soft Staking
Ganhe recompensas com stakings flexíveis
Empréstimo de criptomoedas
0 Fees
Penhore uma criptomoeda para pegar outra emprestado
Centro de empréstimos
Centro de empréstimos integrado
Centro de riqueza VIP
Planos premium de crescimento de patrimônio
Gestão privada de patrimônio
Alocação premium de ativos
Fundo Quantitativo
Estratégias quant de alto nível
Apostar
Faça staking de criptomoedas para ganhar em produtos PoS
Alavancagem Inteligente
Alavancagem sem liquidação
Cunhagem de GUSD
Cunhe GUSD para retornos em RWA
O Google anuncia a introdução do AutoFDO no núcleo do Android, melhorando o desempenho do sistema através de dados de execução reais
IT之家 3 de março de 11, notícia, a equipa de desenvolvedores Android publicou hoje um blog, detalhando os últimos avanços na introdução da tecnologia de otimização de feedback automático (AutoFDO) no kernel Android.
De acordo com a descrição, esta otimização visa proporcionar aos utilizadores uma experiência de sistema mais fluida através de ajustes direcionados ao código do kernel.
O que é AutoFDO?
Durante o processo de compilação de software convencional, o compilador toma milhares de pequenas decisões com base em dicas de código estático, como se deve ou não fazer inlining de funções, ou qual caminho de branch condicional é mais provável de ser executado. Embora estas regras heurísticas sejam úteis, elas podem não refletir com precisão o funcionamento real do dispositivo em ambientes de uso reais.
A tecnologia AutoFDO orienta o compilador na otimização através da introdução de padrões de execução do mundo real. Estes padrões de execução registam os caminhos de execução de instruções mais comuns do código em uso real, obtidos através da coleta de informações sobre o histórico de branch da CPU.
Para o código do kernel, a equipa do Google utiliza cargas representativas (como as 100 aplicações mais populares) em ambientes de laboratório para sintetizar estes dados. O analisador de amostras captura dados e identifica áreas “quentes” (frequentemente usadas) e “frias” (raramente usadas) no código. Quando o kernel é reconstruído utilizando estes perfis, o compilador pode tomar decisões de otimização mais inteligentes com base nas cargas de trabalho reais do Android.
Melhorias reais de desempenho
Ao utilizar perfis de ambiente de laboratório, a equipa do Google obteve melhorias de desempenho significativas em várias métricas-chave. Estes perfis foram medidos em dispositivos Pixel equipados com os kernels 6.1, 6.6 e 6.12, através da coleta de dados de aplicações e inicializações.
O Google afirmou que estas otimizações podem resultar numa interface mais fluida, velocidades de alternância de aplicações mais rápidas, maior duração da bateria e uma resposta de dispositivo mais ágil. Tendo em conta que o kernel ocupa cerca de 40% do tempo da CPU, os benefícios trazidos por esta otimização são bastante consideráveis.
Anteriormente, o AutoFDO já tinha sido utilizado para otimizar executáveis nativos e bibliotecas no espaço do utilizador Android, resultando num aumento de cerca de 4% na velocidade de arranque de aplicações de arranque frio e uma redução de cerca de 1% no tempo de arranque do sistema.
Processo de implementação técnica
A implementação do AutoFDO envolve um conjunto de processos complexos para garantir a atualidade dos perfis e a estabilidade do desempenho.
Primeiro passo: Coleta de perfis
Ao contrário dos binários do espaço do utilizador que dependem da coleta em dispositivos de teste internos, a imagem de kernel genérica (GKI) do kernel utiliza um ambiente de laboratório controlado para a configuração. Isso desacopla a otimização de desempenho do ciclo de lançamento do dispositivo, permitindo atualizações instantâneas flexíveis. Testes confirmaram que as melhorias de desempenho trazidas pelos dados de laboratório são comparáveis às do ambiente real.
O procedimento específico é: carregar a imagem mais recente do kernel no dispositivo de teste e usar a ferramenta simpleperf para capturar o fluxo de execução de instruções. Este processo depende da capacidade de hardware para gravar o histórico de branches, utilizando a extensão de rastreamento embutido ARM (ETE) e a extensão de buffer de rastreamento ARM (TRBE) em dispositivos Pixel. Em termos de carga de trabalho, a equipa utiliza as 100 aplicações mais populares do conjunto de testes de compatibilidade de aplicações Android (C-Suite) para construir cargas representativas, focando-se no arranque de aplicações, na coleta de aplicações impulsionadas por IA e na monitorização em nível de sistema. Os resultados de validação mostram que essa carga de trabalho sintética tem uma similaridade de até 85% com os padrões de execução coletados internamente.
Segundo passo: Processamento de perfis
Os dados de rastreamento originais precisam ser processados posteriormente para serem convertidos em um formato utilizável pelo compilador. A equipa agrega dados de várias execuções de teste e múltiplos dispositivos em uma única visão de sistema, transformando o rastreamento original no formato de perfil AutoFDO e filtrando símbolos desnecessários conforme necessário. Além disso, os dados dos “fríos” funções são removidos do perfil, permitindo que essas funções utilizem métodos de otimização padrão, evitando degradações de desempenho ou aumentos desnecessários no tamanho do binário que possam ocorrer devido a código raro.
Terceiro passo: Teste de perfis
Antes da implementação, os perfis precisam passar por uma verificação rigorosa para garantir que proporcionem melhorias de desempenho consistentes sem riscos de estabilidade. A equipa compara rigorosamente o conteúdo do novo perfil (incluindo funções quentes, contagem de amostras e tamanho do perfil) com a versão anterior, e utiliza o perfil para construir uma nova imagem do kernel, analisando o binário para garantir que as alterações nas seções de código estejam de acordo com as expectativas. Simultaneamente, a equipa executa testes de benchmark direcionados na nova imagem do kernel, confirmando que ela pode manter as melhorias de desempenho estabelecidas pela linha de base anterior.
Atualizações contínuas e garantia de estabilidade
Como o código continua a mudar ao longo do desenvolvimento, perfis estáticos naturalmente se tornam obsoletos. Para manter o seu desempenho de pico, a equipa Android planeja atualizar continuamente os dados de otimização. Atualmente, a equipa está atualizando perfis nas branches android16-6.12 e android15-6.6, e no futuro, expandirá o suporte para atualizar versões GKI, como a próxima versão android17-6.18.
Quanto às preocupações com a estabilidade, a equipa do Google explicou que o AutoFDO afeta principalmente as regras heurísticas do compilador (como inlining de funções e layout de código), e não altera a lógica do código-fonte, portanto, não afetará a integridade funcional do kernel.
Esta tecnologia já foi aplicada em larga escala durante anos nas bibliotecas da plataforma Android, ChromeOS e na infraestrutura de servidores internos do Google, provando a sua fiabilidade. A equipa também adotou uma estratégia “conservadora por padrão”, utilizando métodos de compilador padrão para otimizar funções “frias” que não foram capturadas no perfil, garantindo que o comportamento em situações extremas seja completamente consistente com construções padrão.
Perspectivas futuras
Além da implementação atual nas branches android16-6.12 e android15-6.6, a equipa do Google também planejou várias direções de evolução técnica: implementar perfis AutoFDO em versões de kernel GKI mais recentes e em mais alvos de construção; expandir a gama de otimização dos binários principais do kernel (vmlinux) para módulos GKI, beneficiando um maior número de subsistemas do kernel; suportar módulos de fornecedores construídos com o kit de desenvolvimento de drivers (DDK), permitindo que os fornecedores incluam os seus drivers de hardware específicos na otimização; e coletar perfis de uma jornada do utilizador-chave (CUJ) mais ampla, ampliando a cobertura da otimização.