Accelerating your algorithm using Intel OneAPI™ with FPGA

oneAPI는 독점 프로그래밍 모델의 경제적, 기술적 부담을 벗고 가속 컴퓨팅의 자유를 얻기 위한 생산적이고 스마트한

방식입니다. 독점 언어 종속에 대한 개방형 대안으로, 기존 언어와 병렬 모델을 보완하는 검증된 전체 도구 세트를 통해 하드웨어

성능을 최대한 발휘하도록 지원합니다

소개

oneAPI는 다양한 아키텍처(CPU, GPU, FPGA 및 기타 가속기)에서 광범위한 데이터 중심 워크로드에 대한 개발을 간소화하기 위해 표준 기반의 아키텍처 간 개방형 프로그래밍 모델을 만드는 업계 이니셔티브입니다. oneAPI에는 아키텍처 간 언어인 Data Parallel C++(ISO C++ 및 Khronos Group의 SYCL 기반), 고급 라이브러리, 커뮤니티 확장 프로그램이 포함됩니다. 많은 기업, 연구 기관 및 대학에서 oneAPI를 지원합니다. oneapi.com/news에서 업데이트하십시오.

oneAPI의 장점

  • 미래에 대비하는 프로그래밍 모델로 선택의 자유 제공

    • 간편한 아키텍처 리타깃팅을 위해 단일 벤더/독점 종속에 대한 개방형 대안을 확보합니다.

    • 차세대 하드웨어 플랫폼에 넣을 소프트웨어를 재작성하지 않고 자신의 기술을 그다음 혁신에 투입합니다.

  • 하드웨어의 가치 모두 실현

    • 최신 하드웨어의 모든 최첨단 기능을 도입하고 이용합니다.

    • 가속 아키텍처의 성능—인텔 CPU, GPU, FPGA에서 성능을 극대화하여 가속 컴퓨팅을 충분히 활용합니다.

  • 성능 기준에 맞는 코드를 자신감 있게 빠르고 정확하게 개발

    • 이기종 아키텍처 간 라이브러리와 고급 도구 세트 전체를 사용한 빠르고 효율적인 개발.

    • 익숙한 언어와 표준으로 학습 곡선 단축. 포트란, C/C++, 오픈MP, MPI는 물론 최적화된 풍부한 파이썬 라이브러리를 갖춘 파이썬 등의 기존 HPC 프로그래밍 표준과 상호운용이 가능합니다.

    • CUDA 코드를 DPC++로 마이그레이션하는 등 레거시 코드와의 간편한 통합.

oneAPI Toolkit

인텔® oneAPI 툴킷은 다양한 아키텍처(CPU, GPU, FPGA)에서 뛰어난 성능의 애플리케이션과 솔루션을 효율적으로 개발하기 위한 도구를 제공합니다. 이를 보완하는 베이스 툴킷과 특수 애드온은 프로그래밍을 간소화하며 개발자의 생산성 개선, 타협 없는 성능 제공, 혁신 가속화에 도움을 줍니다. 이 툴킷에는 고급 분석 및 디버그 도구, 특수한 기능 최적화 도구와 함께 oneAPI의 아키텍처 간 언어인 DPC++(Data Parallel C++), 인텔® oneAPI DPC++/C++ 컴파일러, oneAPI 업계 사양을 구현하는 라이브러리가 포함됩니다. 그 구성은 아래를 참고하십시오.

  1. OneAPI Base ToolKit

인텔® oneAPI 베이스 툴킷은 다양한 인텔 아키텍처(CPU, GPU, FPGA)를 대상으로 하는 데이터 중심의 고성능 애플리케이션을 개발하기 위한 핵심 도구 및 라이브러리 세트입니다.

2. OneAPI HPC Toolkit

인텔® oneAPI 툴킷은 다양한 아키텍처(CPU, GPU, FPGA)에서 뛰어난 성능의 애플리케이션과 솔루션을 효율적으로 개발하기 위한 도구를 제공합니다. 이를 보완하는 베이스 툴킷과 특수 애드온은 프로그래밍을 간소화하며 개발자의 생산성 개선, 타협 없는 성능 제공, 혁신 가속화에 도움을 줍니다. 이 툴킷에는 고급 분석 및 디버그 도구, 특수한 기능 최적화 도구와 함께 oneAPI의 아키텍처 간 언어인 DPC++(Data Parallel C++), 인텔® oneAPI DPC++/C++ 컴파일러, oneAPI 업계 사양을 구현하는 라이브러리가 포함됩니다.

3. OneAPI IOT Toolkit

스마트 커넥티드 디바이스를 위한 아키텍처간 IoT 애플리케이션의 개발을 가속화합니다. 인텔® oneAPI 베이스 툴킷 + 인텔® oneAPI IoT 툴킷을 사용하여 성능과 전력 효율성을 증대합니다.

FPGA based 가속 솔루션

Intel oneAPI를 통해 reprogrammable hardware인 FPGA(Field Programable Gate Array)를 사용하여 다양한 workload를 가속할 수 있습니다. 전통적으로 FPGA를 사용하기 위해서는 HDL(Hardware Description Language)을 사용하고 설계된 hardware에 대한 검증 또한 매우 힘든 과정이었으나, Intel oneAPI 는 high level language인 C/C++을 사용하기에 빠른 시간에 원하는 설계가 가능하고 workload를 가속할 수 있습니다.

Intel PAC(Programmable Acceleration Card) Series

oneAPI 에 대응하는 PAC card는 아래와 같이 두가지 종류가 출시되어 있습니다. 내장된 FPGA의 종류에 따라 구별이 되며 middle class급의 Arria 10과 high end class의 Stratix 10이 내장된 카드들입니다. 두 제품 모두 QSFP 광모듈을을 통한 inline processing이 가능하며(*HLS나, RTL으로 구현시) lookaside 가속방식 또한 가능합니다.(*OpenCL 혹은 oneAPI 사용)

구매 및 기술관련 문의는 oneapi@uniquest.co.kr 으로 부탁드립니다.

Intel FPGA PAC Arria 10

Arria 10 GX FPGA기반의 가속 카드입니다.

Intel FPGA PAC D5005

Stratix 10 SX FPGA 기반의 가속 카드입니다.

oneAPI 교육 및 기술지원

Uniquest는 한국내 PAC 공급 및 기술지원을 하고 있으며, oneAPI의 교육은 협력사인 Manycoresoft 사에서 진행합니다. 아래의 연락처를 참고 부탁 드립니다.