Projeto Intel oneAPI: muitas arquiteturas, uma API



No Intel Software Technology Day, em junho, os principais engenheiros da empresa conversaram sobre um projeto de software chamado Intel oneAPI, um modelo de programação unificado para facilitar o desenvolvimento de software para uma variedade de arquiteturas de computação, incluindo uma nova linguagem de programação. Neste post, daremos uma breve descrição deste projeto - como eles dizem, para continuar ...

O oneAPI é um projeto que desenvolve um conjunto unificado de ferramentas para desenvolvedores de software produtivo. O parque de plataformas de computação expandiu-se recentemente devido a aceleradores especializados. A Intel fornecerá soluções de software que permitem aos desenvolvedores extrair o desempenho máximo de ferro heterogêneo.
Bill Savage, vice-presidente Intel, gerente geral de produtos para desenvolvedores de computação

Conforme notamos, as tarefas com as quais carregamos o poder de computação disponível se tornam mais diversas - assim como as arquiteturas desses mesmos poderes, divididas em Scalar (CPU), Vector (GPU), Matrix (aceleradores de IA) e Spatial (FPGA). Todo esse conjunto de arquiteturas, chamado Intel SVMP (SVMS), requer um modelo de programação eficiente para desempenho máximo. A tarefa do oneAPI é garantir facilidade de uso e eficiência, eliminando a necessidade de manter versões do código dependentes da arquitetura, usando diferentes linguagens de programação e ferramentas de desenvolvimento para elas.

Um exemplo de como a Intel já está implementando o desenvolvimento de plataforma cruzada é o Intel OpenVINO - um conjunto de ferramentas para um desenvolvedor de software que fornece um processo de inferência consistente e otimizado para algoritmos de aprendizado profundo baseados em qualquer arquitetura Intel UHMW.

O oneAPI suporta programação direta e programação de API, fornecendo uma linguagem de programação unificada e bibliotecas unificadas, oferecendo desempenho máximo de código nativo em várias plataformas UHMWP.

  • Programação direta O oneAPI contém a nova linguagem de programação Data Parallel C ++ (DPC ++) - uma alternativa aberta e abrangente a linguagens proprietárias para arquiteturas específicas. O DPC ++ fornece conveniência e desempenho usando um modelo de programação familiar aos desenvolvedores. O DPC ++ é baseado em C ++, inclui SYCL do Khronos Group, bem como extensões desenvolvidas na comunidade aberta.
  • Programação de API. As bibliotecas oneAPI permitem implantar vários domínios de carregamento para os quais a otimização é possível. As funções da biblioteca são personalizadas para arquiteturas específicas.

Além disso, a Intel fornecerá versões aprimoradas das ferramentas de análise e depuração (Intel VTune Amplifier, Intel Advisor) que suportam DPC ++ e todo o conjunto de arquiteturas UHMW.

A versão beta do oneAPI para desenvolvedores, bem como detalhes adicionais a respeito, estarão disponíveis no final de 2019.

Source: https://habr.com/ru/post/pt458638/


All Articles