문서 ID: 000073931 콘텐츠 형태: 문제 해결 마지막 검토일: 2019-10-25

OpenCL™ 커널이 버전 18.1.2 이하에서는 성공적으로 컴파일되지만 버전 19.1 이상에서는 실패하는 이유는 무엇입니까?

환경

  • 인텔® Quartus® Prime Pro Edition
  • OpenCL™용 인텔® FPGA SDK
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    설명

    OpenCL 커널이 버전 18.1.2 이하에서 성공적으로 컴파일되지만 버전 19.1 이상에서 실패하는 경우 다음과 유사한 메시지를 찾습니다.

    #aoc: 메모리 사용량이 100%보다 큰지 확인 중...

    #aoc: 경고 RAM 사용률이 173%입니다!

    메시지가 표시되면 M20K 사용률이 100%를 초과하므로 컴파일이 실패합니다.

    이전 버전의 인텔® FPGA SDK for OpenCL™에서는 M20K 사용률이 100% 이상일 것으로 예상되는 경우 컴파일러가 모든 메모리 시스템에 대한 로컬 메모리 복제를 자동으로 비활성화했습니다. 버전 19.1부터 컴파일러는 더 이상 로컬 메모리 복제를 자동으로 사용하지 않도록 설정하지 않습니다.

    해결 방법

    여기 예와 같이 메모리 속성을 사용하여 온칩 메모리 복제를 제어합니다.

    int __attribute__((메모리, numbanks(1), 단일 펌프, max_replicates(3))) lmem[1028];

    자세한 내용은 인텔 FPGA SDK for OpenCL Pro Edition: 모범 사례 가이드의 다음 섹션을 참조하세요.

    메모리 복제 계수를 제어하여 로컬 메모리에 대한 액세스 최적화

    관련 제품

    이 문서는 다음 항목에 적용됩니다. 1 제품

    인텔® 프로그래밍 가능 장치

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