매트릭스 곱셈 설계 예

권장 대상:

  • 장치: 알 수 없음

  • Quartus: v17.1

author-image

기준

이 예에서는 기본 매트릭스 곱셈 작업의 고성능 구현을 포함하고 있으며, 크게 향상된 성능을 달성하기 위해 Open Computing Language(OpenCL™)에 설명될 수 있는 최적화를 보여줍니다. 알고리즘 수준에서 이 예의 커널은 계산에 내재된 데이터 재사용을 활용하기 위해 루프 타일링을 설명하는 방법을 보여줍니다.

이 예에서는 루프 언롤링 및 SIMD 스타일의 컴파일러 최적화를 사용하여 커널의 성능을 쉽게 높이는 방법을 보여줍니다. 예제 패키지의 일부로, 사전 컴파일된 각 장치 바이너리에 대한 매개변수가 선택되어 특정 보드의 성능을 극대화합니다. 추가 세부 정보는 다양한 성능 및 리소스 요구 사항을 대상으로 커널을 매개변수화하는 것이 얼마나 쉬운지 보여주는 예제 패키지에서 확인할 수 있습니다.

또한 호스트 응용 프로그램은 컴퓨팅을 배포하고 더욱 병렬성을 달성하여 여러 OpenCL 장치를 자동으로 활용할 수 있도록 설정됩니다.

피크 매트릭스 곱셈 성능

기능

  • 기본 운영의 최적화된 구현
  • 로컬 메모리 버퍼링
  • 컴파일러 최적화(루프 풀기, num_simd_work_items 속성)
  • 부동 소수점 최적화
  • 여러 장치 실행

다운로드 수

설계 예에서는 OpenCL 장치(.cl)와 호스트 응용 프로그램에 대한 소스 코드를 제공합니다. 호스트 응용 프로그램을 컴파일하기 위해 Linux 패키지에는 Makefile이 포함되어 있으며 Windows 패키지에는 Microsoft Visual Studio 2010 프로젝트가 포함되어 있습니다.

다음 다운로드는 이 예에 대해 제공됩니다.

이 설계의 사용은 하드웨어 참조 설계 라이센스 계약의이용 약관에 따라 적용됩니다.

소프트웨어 및 하드웨어 요구 사항

이 설계 예에는 다음 도구가 필요합니다.

  • 인텔 FPGA 소프트웨어 v17.1 이상
  • OpenCL™ v17.1 이상에 대한 SDK 인텔 FPGA
  • Linux에서: GNU 메이크 및 gcc
  • Windows: Microsoft Visual Studio 2010

인텔 설계 도구를 다운로드하려면 OpenCL 다운로드 페이지를 방문하십시오. 기본 운영 체제에 대한 요구 사항은 OpenCL에 대한 인텔 FPGA SDK와 동일합니다.

OpenCL 및 OpenCL 로고는 Khronos의 허가를 받아 사용하는 Apple Inc.의 상표입니다.

* 제품은 게시된 Khronos 사양을 기반으로 하며 Khronos 적합성 테스트 프로세스를 통과했습니다. 현재 적합성 상태는 www.khronos.org/conformance에서 찾을 수 있습니다.

이 페이지의 콘텐츠는 원본 영어 콘텐츠에 대한 사람 번역 및 컴퓨터 번역의 조합으로 완성되었습니다. 이 콘텐츠는 편의와 일반적인 정보 제공을 위해서만 제공되었으며, 완전하거나 정확한 것으로 간주되어선 안 됩니다. 이 페이지의 영어 버전과 번역 간 모순이 있는 경우, 영어 버전이 우선적으로 적용됩니다. 이 페이지의 영어 버전을 확인하십시오.