Intel prépare un modèle de programmation unifié « One API » pour CPU, GPU, FPGA et NPU.

Il y a à peine cinq ans, Intel était fier de pouvoir proposer un modèle de programmation unique et traditionnel basé sur des instructions compatibles x86. Ce modèle couvrait les systèmes mobiles sur SoC Atom, les accélérateurs de calcul Xeon Phi (une architecture graphique conditionnelle, initialement connue sous le nom de Larrabee) et les processeurs. Aujourd'hui, le slogan « x86, c'est tout pour nous » n'est plus d'actualité pour l'entreprise. Intel dispose bientôt d'architectures graphiques discrètes uniques et a déjà lancé des processeurs pour travailler avec des réseaux neuronaux. Pour programmer sur ces nouvelles plateformes et frameworks, Intel nécessite un nouveau modèle de programmation qui doit également être unifié.

Intel prépare un modèle de programmation unifié « One API » pour CPU, GPU, FPGA et NPU.

Récemment à Londres, lors de l'événement Intel Software Technology, la société présentée a présenté ce modèle. Le nouveau modèle de programmation unifiée se développe sous le projet « One API ». Selon ce projet, il sera plus facile de programmer pour l'ensemble des solutions et plateformes Intel, quel que soit le choix de la plateforme. Comme l'a déclaré Bill Savage, vice-président d'Intel et directeur général du département Compute Performance Developer Products : « L'objectif du projet « One API » est de fournir aux développeurs un ensemble d'outils offrant un modèle de programmation unifié et simplifiant la création de charges de travail pour diverses architectures. Au fur et à mesure de l'évolution de nos capacités de calcul, qui incluent désormais des accélérateurs spécialisés, Intel proposera des solutions logicielles permettant aux développeurs d'exploiter au mieux les performances du matériel ».

Un exemple récent de possibilités de travail avec différentes architectures est fourni par les outils de développement Intel Distribution of OpenVINO Toolkit. Nous avons maintes fois ont raconté À propos de cet outil qui offre des capacités optimisées unifiées pour l'apprentissage profond sur toutes les architectures Intel SVMS (scalaire, vectorielle, matrice, spatiale). Cela signifie qu'OpenVINO permet de créer des programmes pour des processeurs traditionnels, graphiques, neuronaux et FPGA. Le projet One API permettra de faire de même avec une programmation directe et via une API, mais dans un volume élargi et un peu plus simplement, ce qui se traduira, par exemple, par la suppression de la nécessité de maintenir des bases de code source distinctes, différents langages de programmation, ainsi que divers outils et flux de travail.

« Programmation directe : Le projet One API inclut un nouveau langage de programmation directe Data Parallel C++ (DPC++), qui offre une alternative ouverte à l'industrie aux langages de programmation propriétaires pour des architectures spécifiques. DPC++ est basé sur C++, en utilisant le modèle SYCL* du Khronos Group. De plus, il prend en charge les extensions linguistiques développées dans le cadre de la communauté ouverte. »

La programmation en utilisant l'API offrira des bibliothèques uniques pour différents types de charges de travail avec prise en charge de l'accélération matérielle. Les fonctionnalités de bibliothèque sont développées pour chaque architecture cible. Des versions avancées des outils avec support de DPC++ et des architectures SVMS sont créées pour l'analyse et le débogage. À noter, une version bêta des outils pour développeurs et des détails supplémentaires sur le projet One API sont attendus au quatrième trimestre 2019.



Source : 3dnews.ru
Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster