ID bài viết: 000073931 Loại nội dung: Xử lý sự cố Lần duyệt cuối: 25/10/2019

Tại sao nhân OpenCL™ của tôi biên dịch thành công trong phiên bản 18.1.2 trở lên nhưng không thành công ở phiên bản 19.1 trở lên?

Môi Trường

  • Intel® Quartus® Prime Phiên bản Pro
  • SDK FPGA Intel® cho OpenCL™
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    Mô tả

    Nếu nhân OpenCL của bạn biên dịch thành công trong phiên bản 18.1.2 trở lên nhưng không thành công trong phiên bản 19.1 trở lên, hãy tìm thông báo tương tự như sau.

    #aoc: Kiểm tra xem mức sử dụng bộ nhớ có lớn hơn 100% không...

    #aoc: Cảnh báo sử dụng RAM là 173%!

    Nếu thông báo được hiển thị, quá trình biên dịch sẽ thất bại vì mức sử dụng M20K vượt quá 100%.

    Trong các phiên bản trước của SDK Intel® FPGA cho OpenCL,™ trình biên dịch sẽ tự động vô hiệu hóa việc sao chép bộ nhớ cục bộ cho tất cả các hệ thống bộ nhớ nếu ước tính mức sử dụng M20K trên 100%. Bắt đầu từ phiên bản 19.1, trình biên dịch không còn tự động vô hiệu hóa sao chép bộ nhớ cục bộ.

    Độ phân giải

    Sử dụng các thuộc tính bộ nhớ để kiểm soát việc sao chép bộ nhớ trên chip, như được hiển thị trong ví dụ ở đây.

    int __attribute__((bộ nhớ, numbanks(1), singlepump, max_replicates(3))) lmem[1028];

    Để biết thêm thông tin, hãy xem phần sau của Intel FPGA SDK for OpenCL Pro Edition: Best Practices Guide.

    Tối ưu hóa quyền truy cập vào bộ nhớ cục bộ bằng cách kiểm soát hệ số sao chép bộ nhớ

    Các sản phẩm liên quan

    Bài viết này áp dụng cho 1 sản phẩm

    Thiết bị có thể lập trình Intel®

    Nội dung gốc bằng tiếng Anh trên trang này vừa do con người vừa do máy dịch. Nội dung này chỉ để cung cấp thông tin chung và giúp quý vị thuận tiện. Quý vị không nên tin đây là thông tin hoàn chỉnh hoặc chính xác. Nếu có bất kỳ mâu thuẫn nào giữa bản tiếng Anh và bản dịch của trang này, thì bản tiếng Anh sẽ chi phối và kiểm soát. Xem phiên bản tiếng Anh của trang này.