OpenCL* サポートページ

タイトル 詳細

インテル® FPGA SDK for OpenCL™ バージョン 18.1 リリースノート (英語)

インテル® FPGA SDK for OpenCL™ プロ・エディション・リリースノートでは、インテル® FPGA ソフトウェア開発キット (SDK) for OpenCL™ プロ・エディションおよびインテル® FPGA Runtime Environment (RTE) for OpenCL™ プロ・エディション・バージョン 18.1 に関する最新情報を提供します。

インテル® FPGA SDK for OpenCL™ スタートガイド (英語)

このガイドは、インテル® FPGA ソフトウェア開発キット (SDK) for OpenCL™ をインストールする手順を説明します。このドキュメントには、インテル® FPGA SDK for OpenCL™ で OpenCL* アプリケーション・サンプルをコンパイルする手順も含まれています。

インテル® FPGA RTE for OpenCL™ 入門ユーザーガイド (英語)

このガイドは、OpenCL* 用のランタイム環境 (RTE: Runtime Environment) をインストールする手順を解説します。このドキュメントには、RTE とともに OpenCL* アプリケーションを展開する手順も含まれています。

インテル® FPGA SDK for OpenCL™ プログラミング・ガイド (英語)

このガイドは、インテル® FPGA SDK for OpenCL™ コンパイラーおよびツールについての説明、推奨事項、利用情報を提供します。インテル® FPGA SDK for OpenCL™ は、インテル® FPGA 向けの OpenCL* 対応ヘテロジニアス並列プログラミング環境です。

インテル® FPGA SDK for OpenCL™ ベスト・プラクティス・ガイド (英語)

このガイドは、インテル® FPGA SDK for OpenCL™ の機能を利用して、インテル® FPGA 向けの OpenCL* アプリケーションを最適化する方法についての基本情報を提供します。

インテル® FPGA SDK for OpenCL™ Cyclone® V SoC スタートガイド (英語)

このガイドは、インテル® FPGA SDK for OpenCL™ を設定、利用して、Cyclone® V SoC 開発キット上で OpenCL* アプリケーションを実行する手順について解説します。

インテル® FPGA SDK for OpenCL™ カスタム・プラットフォーム・ツールキット・ユーザーガイド (英語)

このガイドは、インテル® FPGA SDK for OpenCL™ カスタム・プラットフォームを作成するための手順の概要を解説します。

インテル® FPGA SDK for OpenCL™ Stratix® V ネットワーク・リファレンス・プラットフォーム移植ガイド (英語)

このガイドは、Stratix® V ネットワーク・リファレンス・プラットフォーム (s5_net) を独自のプラットフォームとしてカスタマイズするうえで実践可能な手順および設計上の考慮事項について説明します。このドキュメントには、ネットワーキング用に設計されたアクセラレーション・カード上のハードウェアの利用効率を最大化するために、異種のメモリーバッファーおよび I/O チャネルなどの機能に関するリファレンス情報も含まれています。

インテル® FPGA SDK for OpenCL™ Cyclone® V SoC 開発キット・リファレンス・プラットフォーム移植ガイド (英語)

このガイドは、インテル® FPGA SDK for OpenCL™ とともに使用するための Cyclone® V SoC 開発キット・リファレンス・プラットフォーム (c5soc) のハードウェアおよびソフトウェア設計について説明します。

インテル® FPGA SDK for OpenCL™ Arria® 10 GX FPGA 開発キット・リファレンス・プラットフォーム移植ガイド (英語)

このガイドは、インテル® FPGA SDK for OpenCL™ とともに使用するためのインテル® Arria® 10 GX FPGA 開発キット・リファレンス・プラットフォーム (a10_ref) のハードウェアおよびソフトウェア設計について説明します。
インテル® FPGA SDK for OpenCL™ Arria® 10 SoC 開発キット・リファレンス・プラットフォーム移植ガイド (英語) このガイドは、インテル® FPGA SDK for OpenCL™ とともに使用するためのインテル® Arria® 10 SoC 開発キット・リファレンス・プラットフォームのハードウェアおよびソフトウェア設計について説明します。

インテル® FPGA SDK for OpenCL™ Stratix® 10 GX 開発キット・リファレンス・プラットフォーム移植ガイド (英語)

このガイドは、インテル® FPGA SDK for OpenCL™ とともに使用するためのインテル® Stratix® 10 GX 開発キット・リファレンス・プラットフォームのハードウェアおよびソフトウェア設計について説明します。
タイトル 詳細

ストリーミング分析のためのインライン・アクセラレーション (英語)

このホワイトペーパーでは、ストリーミング分析のために FPGA インライン・アクセラレーションを実装する手法を紹介します。

OpenCL* と FPGA によるゲノミクス研究のアクセラレーション (PDF)

このホワイトペーパーでは、インテル® FPGA SDK for OpenCL™ でプログラムされたインテル® FPGA による、GATK の HaplotypeCaller アルゴリズムのアクセラレーションについて説明します。

GPU プログラマー向けの FPGA 上の OpenCL* (英語)

このホワイトペーパーでは、インテル® FPGA を使用するメリットと、OpenCL* カーネルの実行および最適化における FPGA と GPU の違いについて取り上げます。

OpenCL* を使用した多機能プリンター画像処理の FPGA アクセラレーション (PDF、英語)

このホワイトペーパーでは、インテル® SoC FPGA による、多機能プリンター画像処理のコア・パイプラインに対する OpenCL* の適用について考察します。

OpenCL* 規格を用いた FPGA デザインの導入 (PDF)

このホワイトペーパーでは、OpenCL* をインテル® FPGA とともに使用するメリットについて、ほかのハードウェア・アーキテクチャーや従来の FPGA 開発手法と比較して説明します。

OpenCL* でのフラクタルビデオ圧縮: アクセラレーション・プラットフォームとしての CPU、GPU、FPGA の評価 (PDF、英語)

このホワイトペーパーでは、OpenCL* でのフラクタル圧縮アルゴリズムのリアルタイム実装について説明します。アルゴリズムを OpenCL* で効率的に実装し、複数の CPU、GPU、FPGA に対し最適化する方法について示しています。

情報フィルタリング向け CPU、GPU、FPGA の効率性を評価するための OpenCL* の使い方 (PDF、英語)

このホワイトペーパーでは、OpenCL* を使用することで、従来のソフトウェア重視の手法に近い抽象化レベルで、プログラマーが効率的に FPGA を活用する方法について考察します。

OpenCL* と FPGA を使用した 40Gb AES 暗号化 (PDF、英語)

このアプリケーション・ノートでは、OpenCL* ツールフローを使用して FPGA で AES 暗号化を実行する方法について紹介します。

インテル® FPGA SDK for OpenCL™ のビジネス適用性(PDF、英語)

このホワイトペーパーでは、ヨーロピアン・オプションの行使を伴うさまざまな金融派生商品をモンテカルロ法を使用して評価する目的で、インテル® FPGA で OpenCL* を使用し、その性能および使いやすさを比較します。

リコンフィグレーション可能な HPC を実現する OpenCL* 対応高性能 FPGA ネットワーク (英語)

このホワイトペーパーでは、低レイテンシーのデータ移動を実行しながら、演算の即時オフロードの実現可能性を実証するために、OpenCL* と Verilog HDL の混合プログラミングを使用した高性能な FPGA 間イーサネット通信を提案しています。

OpenCL* を利用したオプティカル・フローと歩行者検出の実装 (英語)
OpenCL* と FPGA への入門として、低コスト・低消費電力 SoC によって、動き予測および歩行者検出アルゴリズムを高速化します。

OpenCL* がヘテロジニアス環境にもたらす統合プログラマビリティー (英語)
OpenCL* が異機種コンピューティング向けの統合プラットフォームとして適している理由をご覧いただけます。このデモでは、GPU 向けに記述された NVIDIA コードのターゲットを Stratix® V FPGA に変更します。

OpenCL* がヘテロジニアス環境にもたらす統合プログラマビリティー (英語)
OpenCL* が異機種コンピューティング向けの統合プラットフォームとして適している理由をご覧いただけます。このデモでは、GPU 向けに記述された NVIDIA コードのターゲットを Stratix® V FPGA に変更します。

FPGA へのオフロードによる、OpenCL* でのアルゴリズム・パフォーマンスの高速化 (英語)
演算を多用する反復的浮動小数点アルゴリズムであるマンデルブロー・アルゴリズムの性能が、OpenCL* によっていかに向上するかをご覧いただけます。

インテルの SoC FPGA製品と OpenCL* を利用したシングル・チップ・ソリューションが実現する電力効率 (英語)
Cyclone® V SoC FPGA のエンベデッド ARM* プロセッサーを使って、ホストとアクセラレーターの両方をシングルパッケージに組み合わせることで、OpenCL* を使った光線追跡アルゴリズムを加速するために、インテル® 製品がいかにシステムの複雑さを軽減することが可能なのかについて解説します。

デザイン例

以下に、インテル® FPGA SDK for OpenCL™ をサポートする FPGA ボードを搭載したホストでコンパイルおよび実行できるさまざまなアプリケーションを OpenCL* で記述する方法を、それぞれに関連するホスト・アプリケーションとともに示します。

基本例

デザイン例 機能 利点 説明
Hello World
  • デバイスを初期化し、カーネルを実行するための OpenCL* API (Application Programming Interface)
  • スタートガイド
この単純なデザイン例は、printf 呼び出しとそれに対応するホストプログラムを含む基本 OpenCL* カーネルを示します。
ベクトル加算
  • OpenCL* API
  • 大きな問題を複数のデバイスに分割
  • OpenCL* イベントおよびイベントのプロファイリング
  • スタートガイド
この単純なデザイン例は、基本的なベクトル加算 OpenCL* カーネルとそれに対応するホストプログラムを示します。
マルチスレッド
ベクトル演算
  • マルチスレッド・ホスト
  • 高度なホストコード
2 つのホストスレッドで、2 つのカーネルが同時に起動します。
OpenCL* ライブラリー
  • OpenCL* ライブラリー
  • 高度なカーネルコード
Verilog および VHDL コードを含む OpenCL* ライブラリーを使用してカスタム機能を実装するデザイン例。

ループバック - ホストパイプ

  • ホストパイプ
  • ワークアイテム用の単一カーネル
  • ホスト - カーネル間の通信
このデザイン例は、ホストとカーネル間の通信を示しています。ホストからカーネル、そして再びホストへとデータがループされます。

HPC プラットフォーム例

デザイン例 機能 利点 説明
チャネライザー
  • カーネルチャネル
  • 複数の同時カーネル
  • 単一動作項目カーネル
  • 性能
  • カーネルチャネルのスタートガイド
このデザイン例は OpenCL* を使用した高性能チャネライザーのデザインを示します。チャネライザーは、PFB (Polyphase Filter Bank) を高速フーリエ変換と組み合わせて、得られた周波数スペクトルでのスペクトルリークの影響を低減します。
ドキュメント・フィルタリング
  • 24 ビット整数での動作
  • パフォーマンス
このデザイン例では、高性能のドキュメント・フィルタリングを実現する ブルームフィルターの使用方法を示します。

 

有限差分計算 (3D)

  • 単精度浮動小数点の最適化
  • 単一動作項目カーネル
  • メモリーの冗長使用最小化への最適化
  • 性能
このデザイン例は OpenCL* を使用した高性能 3D 有限差分ステンシルのみの計算と、スライド・ウィンドウ・データの再利用パターンの効率的な記述方法を示します。

 

FFT (1D)

  • 単精度浮動小数点の最適化
  • 単一動作項目カーネル
  • 性能
このデザイン例は、OpenCL* を使用した高性能 1D Radix-4 複素高速フーリエ変換 (FFT) または逆高速フーリエ変換 (IFFT) エンジンを示します。この例は、効率的なスライド・ウィンドウ・データの再利用パターンの利点を生かしたものです。

 

FFT オフチップ (1D)

  • 単精度浮動小数点の最適化
  • カーネルチャネル
  • メモリーアクセスの最適化
  • 性能
  • カーネルチャネルから始める
このデザイン例は、100 万ポイント FFT の高性能実装です。このような大規模 FFT は FPGA 上で完結できないため、この例はメモリーアクセスの効率的な管理方法を示します。
FFT (2D)
  • 単精度浮動小数点の最適化
  • カーネルチャネル
  • メモリー・アクセス・パターンの最適化
  • 複数の同時カーネル
  • 単一動作項目と NDRange カーネルの混合
  • 性能
  • カーネルチャネルのスタートガイド
このデザイン例は、OpenCL* を使用した高性能 2D Radix-4 複素 FFT/IFFT エンジンを示します。このエンジンは大きな問題サイズ (デフォルトでは 1024 x 1024) をターゲットとし、グローバルメモリーに中間転置を格納します。この例で強調している 1 つの側面は、グローバルメモリーで行列を効率的に転置する方法です。
Gzip 圧縮
  • 単一動作項目カーネル
  • ストリームに似た処理
  • 発行された論文、実装、および結果
  • 高性能 (対 CPU、RTL、および ASIC)
  • 性能と圧縮品質をパラメーター化可能

 

このデザイン例は、インテル® FPGA 向け OpenCL* を使用した高性能 Gzip 圧縮の実装を示します。
JPEG デコーダー
  • 単一動作項目カーネル
  • カーネルチャネル
  • メモリー転送とカーネル呼び出しのオーバーラップ
  • 視覚的出力
  • パフォーマンスの拡張性
  • カーネルチャネルのスタートガイド
このデザイン例は、性能が向上した JPEG デコーディング・ソリューションを示します。
マンデルブロー・フラクタル・レンダリング
  • 倍精度浮動小数点の最適化
  • 複数デバイスへの分割
  • 視覚的出力
  • パフォーマンスの拡張性
このデザイン例は、マンデルブロー・フラクタル・コンバージェンス・アルゴリズムを実装して結果を画面に表示するカーネルを含んでいます。
行列乗算
  • 単精度浮動小数点の最適化
  • ローカルメモリーへのバッファリング
  • コンパイラーの最適化
  • 複数デバイスでの実行
  • パフォーマンスの拡張性
  • 最適化方式のスタートガイド
この例は、計算固有のデータ再利用性を活用したループタイリングによって基本行列乗算を最適化するものです。
モンテカルロ・ブラック・ショールズのアジア向けオプション価格設定
  • 倍精度浮動小数点の最適化
  • カーネルチャネル
  • 複数デバイスでの実行
  • 複数の同時カーネル
  • 拡張可能な電力効率に優れたパフォーマンス
  • カーネルチャネルのスタートガイド
このデザイン例では、モンテカルロ・ブラック・ショールズのアジア向けオプション価格設定シミュレーションを実装します。この例は、それぞれがシミュレーションのさまざまな部分 (乱数発生、パス・シミュレーション、および累積) を実行し、インテルのチャネルベンダー拡張を使用して通信する複数のカーネルが同時に実行する場合を示します。
ソーベルフィルター
  • 整数計算
  • 単一動作項目カーネル
  • 効率的な 2D スライド・ウィンドウ・ライン・バッファー
  • 性能
このデザイン例は、イメージのエッジを検出してフィルター後のイメージを画面に表示する、OpenCL* で記述されたソーベルフィルターのシームレスなソフトウェア・ソリューションを示します。

 

タイムドメイン FIR フィルター

  • 単精度浮動小数点の最適化
  • 効率的な 1D スライド・ウィンドウ・バッファーの実装
  • 単一動作項目カーネル
  • 最適化方式
  • 性能
  • 最適化方式のスタートガイド
このデザインは、HPEC チャレンジ・ベンチマーク・スイートからタイムドメイン FIR フィルター・ベンチマークを実装します。このデザイン例は、浮動小数点 FIR フィルターの性能を向上させるのに FPGA が GPU アーキテクチャーよりはるかに優れていることを示す好例です。

 

ビデオのダウンスケーリング

  • カーネルチャネル
  • 複数の同時カーネル
  • メモリー・アクセス・パターンの最適化
  • 視覚的出力
  • 性能
  • カーネルチャネルのスタートガイド
このデザイン例では、1080p のビデオを入力して 720p のビデオを 110 フレーム/秒で出力するビデオ・ダウンスケーラーを実装します。この例では、複数のカーネルを使用してグローバルメモリーとの間で効率的にリード/ライトします。

ネットワーク・プラットフォーム例

デザイン例 機能 利点 説明
OPRA FAST パーサー
  • 単一動作項目カーネル
  • I/O チャネル
  • 低レイテンシー
  • 10 G リンクの飽和
このデザイン例は、一般に高頻度取引アルゴリズムに使用されるストリーミング・パーサーを示します。このパーサーは OPRA FAST データストリームを受け入れ、アップストリームで使用するためにフィールドを展開します。ストリーミング・メッセージを効果的に処理して 10 G リンクを飽和させる方法を説明します。

Cyclone® SoC プラットフォーム例

デザイン例 機能 利点 説明

 

多機能プリンター誤差拡散

  • 単一動作項目カーネル
  • スライド・ウィンドウ・デザイン・パターン
  • 多機能プリンタ・システムの一部
  • 性能
このデザインはコア・プリンター・パイプラインの一部であり、Floyd Steinberg 誤差拡散アルゴリズムの一種を実装します。カーネルが CMYK イメージを取り込み、すべてのピクセルをハーフトーン化した同等のイメージを作成します。そのような出力は、レーザーシステムに送る前のプリンタ内イメージ処理の最終ステージです。この例には、「FPGA Acceleration of Multifunction Printer Image Processing Using OpenCL*」というタイトルのホワイトペーパー(英語版)が用意されています。

 

オプティカル・フロー

  • 単一動作項目カーネル
  • スライド・ウィンドウ・デザイン・パターン
  • リソース利用率低減技術
  • 視覚的出力
  • 性能
このデザイン例は、Lucas Kanade オプティカル・フロー・アルゴリズムを OpenCL* で実装したものです。Cyclone® V SoC 開発キットで 80 フレーム/秒超で動作する、ウィンドウサイズが 52x52 である非ピラミッド型の高密度非反復バージョンが示されています。

短時間での実装と稼動を可能にするために、インテルと、インテル® FPGA SDK for OpenCL™ をサポートするデザインパートナーが、以下のような数多くのプラットフォームを提供しています。

ボード

適用分野

機能

供給ベンダー

インテル® プログラマブル・アクセラレーション・カード (インテル® Arria® 10 GX FPGA 搭載版)

ハイパフォーマンス・コンピューティング

  • インテル® Arria® 10 GX FPGA
  • 10AX115N2F40E2LG
  • マルチギガビットの高性能 SERDES トランシーバー (最大 15 Gbps)
  • 1,150 K のロジックエレメント (-2L スピードグレード)
  • 53 Mb のエンベデッド・メモリー
  • エラー訂正コード (ECC) 対応 8 GB DDR4 メモリーバンク (2 バンク)
  • 1 Gb (128 MB) フラッシュメモリー
  • PCIe* Gen3 x8 エレクトリカル、x16 メカニカル
  • USB 2.0 インターフェイス (FPGA / フラッシュメモリーのデバッグおよびプログラミング用)
  • 1X QSFP+ (4X 10GbE または 40GbE 対応)
  • スタンダード・ハイト、ハーフレングス
    • ロープロファイル (要望に応じてオプション)

インテル

S5PH-Q PCIe* ボード

ネットワーキング

  • 高集積度 Stratix® V GX/GS FPGA
  • PCIe* x8 インターフェイス (Gen1、Gen2、または Gen3 に対応)
  • 可能な限りの低レイテンシーを実現する、FPGA に直接接続された 40GigE または 10GigE 用の QSFP+ ケージ x2
  • 最大 16 GB DDR3 SDRAM
  • 最大 72 MB QDRII/II+
  • SATA コネクター x2
  • タイムスタンプ対応
  • ボード管理コントローラーによるインテリジェントなプラットフォーム管理
  • ユーティリティー I/O: USB 2.0、RS-232、JTAG

BittWare


A10PL4 PCIe* ボード

ハイパフォーマンス・コンピューティング

  • インテル® Arria® 10 GX FPGA
  • PCIe* x8 インターフェイス (Gen1、Gen2、または Gen3 に対応)
  • 2x 40GbE または 8x 10GbE 用の QSFP ケージ x2
  • メモリー: ECC 対応の最大 32 GB DDR4 SDRAM (x72)
  • ボード管理コントローラーによるインテリジェントなプラットフォーム管理
  • 高精度クロックとタイミング用オプション
  • ユーティリティー I/O: USB 2.0

BittWare

WARP II

ハイパフォーマンス・コンピューティング

  • インテル® Stratix® 10 デュアル FPGA
  • 最大 272 GB DDR4 (FPGA 当たり 136 GB)
  • 20 TFLOPs (10 TFLOPs/FPGA)
  • PCIe* x16 Gen3
  • 2x QSFP + 40/100GbE
  • L タイル: 40GbE (バックプレーンで 10 Gbps の動作が可能)
  • H タイル: 100GbE (バックプレーンで 28 Gbps の動作が可能)
  • インテル® MAX® 10 FPGA
  • NXP Semiconductors* K61 マイクロコントローラー
  • GPU サイズの PCIe* フォームファクター

Colorado Engineering

Proc10S

ハイパフォーマンス・コンピューティング

  • インテル® Stratix® 10 GX/SX FPGA
  • SX デバイスの場合、クアッドコア 64 ビット Arm* Cortex*-A53 MPCore* プロセッサー
  • PCIe* x16 Gen3 またはスタンドアロン
  • 最大 10x 26 Gbps + 8x 17.4 Gbps 再構成可能トランシーバー (合計 400 Gbps)
  • フォームファクター: フルハイト、ダブル幅、¾ レングスの PCI* Express カード
  • 最大 12V/300W をサポート
  • 2x QSFP28、2x SFP28、GiDEL 高速コネクター
  • マルチレベル・メモリー構造 (260 GB 以上):
    • 拡張 MLAB (640b) SRAM (15 Mb)
    • 最大 32 Gbps/ブロックの最大 11,721 M20K (20 Kb) SRAM (229 Mb)
    • 最大持続スループット 108 Gbps の 4 GB DDR4 SDRAM オンボードメモリー
    • 最大持続スループット 400 Gbps の 256 GB DDR4 SDRAM (2x RDIMM バンク)
    • コンフィグレーション・フラッシュ、シリアルフラッシュ (SPI)、シリアル EEPROM
  • インテル® SDK をベースにした Gidel の OpenCL* BSP および HLS (I++) ASP によるサポート

Gidel

520N ネットワーク・アクセラレーション・カード

ネットワーキング

  • インテル® Stratix® 10 F1760 NF43 パッケージ
  • 16 レーン PCI* Express Gen3
  • DDR4 SDRAM メモリー
    • 4 バンクの DDR4 SDRAM x 72 ビット
      バンク当たり 8 GB
      (合計 32 GB / 64 GB バージョンも利用可能)
    • 転送レート: 2400 MT/s
  • 100/40/25/10G QSFP28 ネットワーク・ポート x4
    • L タイル: 100G ネットワーク・ポート最大 x2
    • H タイル: 100G ネットワーク・ポート最大 x4
    • ネットワーク・リカバリー・クロック対応

Nallatech


Attila インスタント開発キットインテル® Arria® 10 GX FMC PCIe* ボード

ハイパフォーマンス・コンピューティング

  • インテル® Arria® 10 GX FPGA 10AX115N4F40I3SG (F40 パッケージ FBGA / 製品デバイス内で 1150K LE)
  • オンボードのインテル® FPGA ダウンロード・ケーブルを介した構成を可能にするオンボード JTAG コンフィグレーション回路
  • MAXV のプログラムおよびインテル® Arria® 10 GX FPGA へのアクセスのために提供される JTAG ヘッダー
  • インテル® MAX® 10 FPGA デバイスおよびフラッシュメモリーを介したファースト・パッシブ・パラレル (FPP) コンフィグレーション
  • 128 MB (1024 Mb) Quad シリアル SPI NOR フラッシュメモリーを介したアクティブシリアル (AS) コンフィグレーション
  • CvP サポートのための AS コンフィグレーション
  • DDR4 SODIMM インターフェイス (最大 16 GB、最大速度 1200 MHz/2400 Mbps、72b 幅により ECC と非 ECC をサポート)
  • 128 MB (1024 Mb) Quad SPI NOR フラッシュメモリー
  • 32Kb I2C EEPROM
  • 1 x QSFP+ オプティカル・ケージ (4 XCVR: リンク当たり 12.5 Gbps)*
  • フロント µUSB コネクター上で USB ブリッジ高速リンク (USB ハブ経由) を使用する 1 つのシリアル
  • 1 x PCIe* エッジコネクター (Gen3 x8 (32 Gbps) 向け)

REFLEX CES

DE5-Net FPGA 開発キット

ハイパフォーマンス・コンピューティング

  • Stratix® V GX FPGA (5SGXEA7N2F45C2)
  • FPGA プログラミング用のオンボードのインテル® FPGA ダウンロード・ケーブル II または JTAG ヘッダー
  • MAX® II CPLD およびフラッシュメモリーを介したファースト・パッシブ・パラレル (FPP x32) コンフィグレーション
  • DDR3 SODIMM 独立ソケット x2、各ソケット最大 8 GB、800 MHz または 4 GB、933 MHz
  • 550 MHz SRAM 独立ソケット x4、18 ビット・データ・バス、それぞれ 72 Mb
  • 256 MB フラッシュメモリー
  • SFP+ コネクター x4
  • PCI Express* (PCIe*) x8 エッジコネクター (Windows* PCIe* ドライバーを含む)
  • 1 つの RS-422 拡張ヘッダー

Terasi

必要な FPGA アクセラレーターのアーキテクチャーが上記の既存カテゴリーに該当しない場合は、これらのリファレンス・プラットフォームが独自のカスタム FPGA の開発を支援する出発点になります。既存の SoC プラットフォームまたはネットワーク・プラットフォームから出発し、コンポーネント・インターフェイスを削除または変更して必要なものを得て再構築するだけです。これは、従来の FPGA デザインを使用して OpenCL* カーネルがカスタム・ボード上の I/O インターフェイスと通信するための「I/O リング」を構築します。


以下を用意するだけで独自のカスタム FPGA アクセラレーター・ボードを開発できます。

資料

カスタム・プラットフォーム・ツールキットWindows* または Linux* ダウンロード

  • プラットフォーム用ロー・テンプレート
  • I/O インターフェイスの機能を果たすボード・テスト・カーネル
  • ドライバーの構築を開始するための MMD ヘッダーファイル
  • PC プラットフォーム・マイグレーション・テキスト・ファイル (バージョン 13.1 以降)

既存のプラットフォームを使用して変更するために現時点で利用可能なリファレンス・プラットフォームは以下のとおりです。

インテル® Stratix® 10 GX FPGA 開発キット・リファレンス・プラットフォーム

インテル® Arria 10 GX FPGA 開発キット・リファレンス・プラットフォーム

Stratix® V FPGA ネットワーク・リファレンス・プラットフォーム: s5_net (w/ PLDA UDP stack):

Cyclone® V SoC リファレンス・プラットフォーム

OpenCL™ インテル® Arria® 10 カスタム・プラットフォーム

サポートが必要ですか?

カスタム・プラットフォーム用の OpenCL* ボード・サポート・パッケージ (BSP) の開発支援には、以下の OpenCL* ボードサポート認定サービス・プロバイダーをお勧めします。

最適化のトレーニング

 

OpenCL™ Coding Optimizations for Intel® Stratix® 10 Devices(23 分)

In this course, we will cover how the offline kernel compiler of the Intel® FPGA SDK for OpenCL™ optimizes OpenCL kernel code for optimal performance on Intel® Stratix® 10 FPGAs and how to use recommended coding constructs to enable these optimizations.

OpenCL* Optimization Techniques: Secure Hash Algorithm (SHA-1) Example ( 7分 )

このトレーニングでは、SHA-1 (Secure Hash Algorithm) を例にしながら、OpenCL* 実装を FPGA 向けに最適化するために使用する最適化手法を簡単に概説します。

OpenCL* Optimization Techniques: Image Processing Algorithm Example ( 8分 )

このトレーニングでは、画像処理アルゴリズム用の FPGA における OpenCL* を対象としたアーキテクチャー上の最適化アプローチを簡単に概説します。

Single-Threaded vs. Multi-Threaded Kernels ( 17分 )

ループ・パイプラインと並列スレッドの違いを理解し、シングルスレッド (タスク) とマルチスレッド (NDRange) パイプラインの使い分けの方法を習得します。

Optimization and Emulation Flow in Intel® FPGA SDK for OpenCL* ( 6分 )

FPGA で高速化したアプリケーションをエミュレーターや詳細な最適化レポート機能で最適化する方法を紹介します。

How to Do Reductions (英語版・PDF)

Being Careful with Memory Access Part 1 (英語版・PDF)

Being Careful with Memory Access Part 2 (英語版・PDF)

Optimizing OpenCL* for Intel® FPGAs ( 2日 )

このインストラクターによるトレーニングでは、インテル® FPGA に最適化したカーネル関数の記述を重点的に学習します。実習も行います。

 

OpenCL* のトレーニング・コース

 

Introduction to FPGA Acceleration for Software Programmers Using OpenCL*™
(ソフトウェア・プログラマのための OpenCL* を使用した FPGA のアクセラレーション)
( 23分 )

このトレーニングでは、OpenCL* を使用し FPGA をターゲットにして、競合アクセラレータの平均 1/5 の消費電力で高速化したカスタム・システムを開発する方法、FPGA がソフトウェア実行を高速化するためのリソースとして重要視される現状、および OpenCL* がアクセラレーションをソフトウェア開発者に利用しやすいものにしている理由を解説します。

FPGA vs GPGPU (英語版・21 分)

このビデオでは、FPGA が GPGPU よりはるかに少ない制約条件とはるかに高い柔軟性によって電力効率に優れた高速化をどのように実現するかを解説します。インテル® は、GPGPU の固定されたアーキテクチャーにはない、この柔軟性を生かして問題を解決する手法を比較して対照させます。

OpenCL* on Altera SoC FPGA (Linux Host)

Part 1 – Tools Download and Setup ( 5分 )

Part 2 – Running the Vector Add Example with the Emulator ( 4分 )

Part 3 – Kernel and Host Code Compilation for SoC FPGA ( 4分 )

Part 4 – Setup of the Runtime Environment ( 7分 )

これらのトレーニングでは、Linux* 環境において SoC で OpenCL* の使用を開始する手順を順番に説明します。

Introduction to Parallel Computing with OpenCL* ( 30分 )

OpenCL* 規格の概要とインテルの OpenCL* ソリューションを使用する利点について解説します。

Writing OpenCL* Programs for Intel® FPGAs ( 1時間 )

OpenCL* 規格の基本を理解し、簡単なプログラムの作成方法を学習します。

Running OpenCL* on Intel® FPGA ( 30分 )

インテル® の SDK for OpenCL* について学習し、インテル® FPGA で OpenCL* プログラムをコンパイルして実行する手順を学びます。

Building Custom Platforms for Intel® FPGA SDK for OpenCL*
(インテル® FPGA SDK for OpenCL* 向けカスタム・プラットフォームの構築)
( 1時間 )

ボードとインテル® SDL for OpenCL* に使用する、カスタム・ボード・サポート・パッケージの作成方法を学習します。

Parallel Computing with OpenCL* Workshop ( 1日 )

このインストラクターによるトレーニングでは、並列コンピューティング、OpenCL* 規格、および FPGA デザインフロー向け OpenCL* の概要について解説します。このトレーニングでは、カーネルを記述することではなく、ハードウェア高速化向け OpenCL* 環境を構築するための FPGA 固有の部分を重点的に学習します。

1 製品は Khronos 社公開の仕様に基づいており、Khronos 社のコンフォーマンス・テストに合格しています。現在のコンフォーマンス基準については、http://www.khronos.org/conformance/ (英語) を参照してください。

OpenCL および OpenCL ロゴは Apple Inc. の商標であり、Khronos の許可を得て使用しています。

Intel、インテルおよび Quartus は、アメリカ合衆国および / またはその他の国における Intel Corporation またはその子会社の商標です。