인텔, One API 프로젝트로 다양한 아키텍처에 단일 프로그래밍 모델 제공

인텔은 런던에서 개최된 인텔의 ‘소프트웨어 테크놀로지 데이(Software Technology Day)’에서 소프트웨어 프로젝트인 One API에 대해 발표했다.

이 프로젝트는 다양한 컴퓨팅 아키텍처에서 애플리케이션 개발을 간소화하기 위한 단일 프로그래밍 모델을 제공한다.

전 세계의 데이터 중심 워크로드가 점차 다양해지면서 데이터를 처리하는 아키텍처도 다양해 지고 있다. 인텔의 광범위한 아키텍처는 스칼라(Scalar: CPU), 벡터(Vector: GPU), 매트릭스(Matrix: AI) 및 스페이셜(Spatial: FPGA)로 구성된다.

인텔에서 SVMS로 명칭하는 해당 아키텍처들은 성능을 제대로 발휘해줄 효율적인 소프트웨어 프로그래밍 모델을 필요로한다. 이를 해결하기 위해 One API는 사용하기가 쉽고 성능이 뛰어나 별도의 코드 기반, 여러 프로그래밍 언어, 각기 다른 툴 및 워크플로우를 유지할 필요성을 없애준다. 이러한 교차 아키텍처 기능을 제공하는 사례로 OpenVINO 툴킷의 인텔 디스트리뷰션(Intel Distribution of OpenVINO toolkit) 소프트웨어 개발 툴킷은 인텔 SVMS 아키텍처 전반에 걸쳐 일관되고 최적화된 딥러닝 추론 역량을 제공한다.

One API는 직접 프로그래밍 및 API 프로그래밍을 지원하며, CPU, GPU, FPGA 및 AI 가속기 등 광범위한 하드웨어 전반에 완벽한 네이티브 코드 성능을 보여주는 통일된 언어와 라이브러리를 제공한다.

• 직접 프로그래밍: One API는 새로운 직접 프로그래밍 언어인 DPC++(Data Parallel C++)를 포함하여 단일 아키텍처 전용 언어에 개방적인 산업간 선택권을 제공한다. DPC++는 개발자에게 익숙한 프로그래밍 모델을 사용하여 병렬 프로그래밍 생산성 및 성능을 제공한다. DPC++는 C++에 기반하며 크로노스 그룹(Kronos Group)의 SYCL*을 통합하고 개방형 커뮤니티 프로세스에서 개발된 언어 확장을 포함한다.

• API기반 프로그래밍: One API의 강력한 라이브러리는 가속화를 통해 여러 워크로드 영역에 걸쳐있다. 라이브러리 기능은 각 대상 아키텍처에 사용자 맞춤형 코딩을 제공한다.

• 분석 및 디버그 툴: 인텔은 주요 분석 툴을 기반으로 향상된 분석 및 디버그 툴을 제공하여 DPC++ 및 광범위한 SVMS 아키텍처를 지원할 예정이다.

인텔은 2019년 4분기 중으로 One API 프로젝트에 관한 개발자 베타버전을 배포하고 추가적인 세부 내용을 공개할 예정이다.


케이벤치 많이 본 뉴스