6 pontos por GN⁺ 2024-06-30 | 2 comentários | Compartilhar no WhatsApp
  • A Meta anunciou a família de modelos LLM Compiler, desenvolvida com base no Code Llama, com recursos de otimização de código e compilador
  • Esses modelos oferecem as seguintes funcionalidades:
    • Emulação de compilador
    • Previsão do melhor passe para otimização do tamanho do código
    • Desassemblagem de código
  • É possível ajustá-los finamente para novas tarefas de otimização e compilador

Principais características

  • Alcançaram resultados de ponta em otimização de tamanho de código e desassemblagem
  • Demonstram que a IA está aprendendo otimização de código e pode ajudar especialistas em compiladores a identificar oportunidades de otimização

Divulgação dos modelos

  • Os modelos LLM Compiler 7B e 13B foram disponibilizados sob uma licença permissiva para uso tanto em pesquisa quanto comercial
  • Apoiam desenvolvedores e pesquisadores para que possam utilizá-los com facilidade e conduzir novas pesquisas nessa área

2 comentários

 
ragingwind 2024-07-01

A ideia parece interessante.

 
GN⁺ 2024-06-30
Opinião no Hacker News
  • Usar LLM como compilador/descompilador é uma aplicação interessante
  • Compiladores exigem confiabilidade e precisão
  • LLMs são inerentemente imprevisíveis, então parece estranho incluí-los no pipeline de build
  • No artigo, eles treinaram o modelo em três tarefas, começando com o CodeLlama
    • A primeira tarefa é compilação: fornecer o código de entrada e flags do compilador, e prever o assembly de saída
    • A segunda tarefa é previsão/otimização de flags do compilador: otimizar o tamanho do assembly
    • A terceira tarefa é descompilação: o artigo afirma que há vantagens em relação às abordagens anteriores
  • Há um problema de verificabilidade na abordagem de descompilação
  • Eles usam o método de recompilar o código descompilado para verificar a exatidão
  • A precisão ainda está em cerca de 45%, então ainda não é confiável, mas pode ser útil em conjunto com descompiladores tradicionais
  • Gostaria de explorar se esse modelo pode ser expandido para otimização de desempenho
  • Parece que veremos mais sistemas em que o LLM fornece intuição e o processamento é feito de forma mecânica/rigorosa
  • Fico curioso sobre como verificar se o LLM preserva o significado da entrada
  • Pesquisas anteriores podem ser encontradas no GitHub
  • O Twitter ficou impressionado com essa pesquisa, mas acha que ela provavelmente vai estragar programas
  • Diferentemente de outros artigos de IA da Meta, não há menção de uso no Instagram, Facebook ou Meta
  • "Compiler LLM" provavelmente seria um nome mais preciso do que "LLM Compiler"
  • Não consigo entender o objetivo deste trabalho
  • Lembro de negociar com o Meta Technologies Neural Optimizer and Disassembler no jogo <i>Deus Ex</i>