Ví dụ thiết kế vận hành vector đa luồng

Được đề xuất cho:

  • Thiết bị: Không xác định

  • Quartus®: v16.1

author-image

Bởi

Thiết kế ví dụ này chạy hai phiên bản của một lớp trong hai chuỗi riêng biệt. Mỗi phiên bản sử dụng một kernel khác: Phiên bản đầu tiên thực thi một nhân bổ sung vector để thực hiện: C = A + B trong đó A, B và C là vectơ yếu tố N. Phiên bản thứ hai thực thi nhân nhân vector memberwise để thực hiện: C = A * B (memberwise). Các hạt nhân được giữ một cách có chủ ý đơn giản và không được tối ưu hóa.

Vì thiết bị không thể được lập trình để sử dụng hai chương trình riêng biệt đồng thời, cả hai phiên bản sự cố đều chia sẻ cùng một chương trình OpenCL™ (do đó chạy trong cùng một ngữ cảnh). Tuy nhiên, như trường hợp trong ví dụ này, hai luồng có thể có hàng đợi lệnh riêng biệt. Để đơn giản hóa, hai luồng chạy trên hai phiên bản của cùng một mã, với các tham số khác nhau, nhưng chúng thường có thể chạy hai lớp riêng biệt.

Ngoài việc thể hiện giao diện lập trình ứng dụng OpenCL cơ bản (API), ví dụ này hỗ trợ phân vùng sự cố trên nhiều thiết bị OpenCL, nếu có. Nếu có thiết bị M có sẵn, vấn đề được chia để mỗi thiết bị hoạt động trên điểm N/M. Chương trình máy chủ giả định rằng tất cả các thiết bị cùng loại (nghĩa là, có thể sử dụng cùng một nhị phân, nhưng mã có thể được tổng quát hóa để hỗ trợ các loại thiết bị khác nhau một cách dễ dàng).

Tải

Ví dụ thiết kế cung cấp mã nguồn cho thiết bị OpenCL (.cl) cũng như ứng dụng máy chủ. Để biên dịch ứng dụng máy chủ, gói Linux* bao gồm một Makefile và gói Windows* bao gồm một dự án Microsoft* Visual Studio 2010.

Các bản tải xuống sau được cung cấp cho ví dụ này:

Việc sử dụng thiết kế này được điều chỉnh và tuân theo, các điều khoản và điều kiện của thỏa thuận cấp phép thiết kế tham chiếu phần cứng.

Yêu cầu phần mềm và phần cứng

Ví dụ thiết kế này yêu cầu các công cụ sau:

  • Intel® FPGA mềm v17.1 hoặc mới hơn
  • Intel FPGA SDK cho OpenCL™ v17.1 trở lên
  • Trên Linux: GNU Make và gcc
  • Trên Windows: Microsoft Visual Studio 2010

Để tải xuống các công cụ ® thiết kế Intel®, hãy truy cập trang tải xuống OpenCL. Các yêu cầu đối với hệ điều hành cơ bản giống như của Intel FPGA SDK cho OpenCL.

OpenCL và biểu trưng OpenCL là thương hiệu của Apple Inc. được sử dụng với sự cho phép của Khronos.

* Sản phẩm dựa trên Thông số kỹ thuật Khronos được công bố và đã thông qua Quy trình kiểm tra tuân thủ Khronos. Có thể tìm thấy trạng thái tuân thủ hiện tại tại www.khronos.org/conformance.

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.