Aprenda o que há de mais recente em aprendizado de máquina, IA generativa e muito mais no WiML Symposium 2023
Registre-se
MLIR
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Visão geral
MLIR, ou Multi-Level Intermediate Representation, é um formato de representação e biblioteca de utilitários de compilador que fica entre a representação do modelo e compiladores/executores de baixo nível que geram código específico de hardware.
O MLIR é, em sua essência, uma infraestrutura flexível para compiladores de otimização modernos. Isso significa que consiste em uma especificação para representações intermediárias (IR) e um kit de ferramentas de código para realizar transformações nessa representação. (Na linguagem do compilador, à medida que você passa de representações de nível superior para representações de nível inferior, essas transformações podem ser chamadas de “rebaixamentos”)
O MLIR é altamente influenciado pelo LLVM e reutiliza descaradamente muitas grandes ideias dele. Possui um sistema de tipos flexível, e permite representar, analisar e transformar grafos combinando vários níveis de abstração em uma mesma unidade de compilação. Essas abstrações incluem operações do TensorFlow, regiões de loop poliédrico aninhadas e até instruções LLVM e operações e tipos de hardware fixos.
Esperamos que o MLIR seja do interesse de muitos grupos, incluindo:
- Pesquisadores e implementadores de compiladores que buscam otimizar o desempenho e o consumo de memória de modelos de aprendizado de máquina
- Fabricantes de hardware que procuram uma maneira de conectar seu hardware ao TensorFlow, como TPUs, hardware neural portátil em telefones e outros ASICs personalizados
- Pessoas que escrevem associações de linguagem que desejam aproveitar a otimização de compiladores e a aceleração de hardware.
O ecossistema TensorFlow contém vários compiladores e otimizadores que operam em vários níveis da pilha de software e hardware. Esperamos que a adoção gradual do MLIR simplifique todos os aspectos dessa pilha.
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2022-11-04 UTC.
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"Não contém as informações de que eu preciso"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"Muito complicado / etapas demais"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"Desatualizado"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"Problema na tradução"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"Problema com as amostras / o código"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"Outro"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"Fácil de entender"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"Meu problema foi resolvido"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"Outro"
}]
{"lastModified": "\u00daltima atualiza\u00e7\u00e3o 2022-11-04 UTC."}
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2022-11-04 UTC."],[],[]]