SLXバージョン2019.2はSLX FPGAで35倍のHLSパフォーマンス向上を実現し、SLX C/C++でマルチプロセスサポートを追加

2019年7月18日、SilexicaはFPGAとC/C++製品の大幅な改良を経て、SLX開発ツール、バージョン2019.2をリリースしました。SLXFPGAは、Xilinx® Vivado® HLS設計フローの高位合成用のC/C++コードの準備と最適化を行う開発者をサポートします。バージョン2019.2は既存のC/C++コードに、自動でHLSプラグマを挿入することにより平均35倍のパフォーマンス向上を実現します。そしてSLX C/C++にはマルチプロセッサ解析、共有ライブラリ、リモートファイルシステムのサポートの追加、そしてグラフィカル表示、パフォーマンス見積もりに対する改善を加えました。

 

最新版SLX FPGA 特長と機能

  • 合成を可能にするためのコード変換をサポートするガイドSLX FPGAは、ザイリンクスHLSコンパイラでサポートされるように、合成不可能なコードをリファクタリングする方法の詳細をユーザーに提供します。リファクタリングされたコードは、元のコードと並べて表示されます。
  • ハードウェア対応の並列処理抽出この機能は既存のアルゴリズムを拡張して、データレベル並列処理およびパイプラインレベル並列処理の細かな部分を検出します。これにより、SLX FPGAは、より詳細なHLSプラグマをアプリケーションに挿入し、達成されたパフォーマンスとエリアまたはトレードオフをより細かく管理できます。
  • コードリファクタリングウィザード:HLSプラグマとそのパラメータの最適な組み合わせが抽出された後、このウィザードは元のコードと生成されたコードを並べて比較し、ユーザが最終的にどのプラグマをコードに挿入するかを完全にコントロールすることができます。 コードリファクタリングウィザードでは、HLSツールが合成のために呼び出される前に、生成されたコードを変更することも可能です。
  • Zynq®DevKitサポート:さらにザイリンクスZynq開発キットがサポートするプラットフォームが追加されました。これにはAvnet®のUltra96のサポートも含まれます。
  • ザイリンクスDSAインポーター:既存のザイリンクスデザイン仕様アーカイブ(DSA)をSLX FPGAにインポートが可能になりました。これにより、開発エンジニアはプラットフォームチームから基本システムを受け取り、FPGAチップ上の利用可能なリソースに基づいてハードウェアの最適化と分割を可能にします。

最新版SLX C/C++ 特長と機能

  • マルチプロセス解析:SLX C/C++はマルチプロセス解析を強化しました。共有メモリを使用して通信する複数のプロセスは、コード解析グラフとメモリ解析テーブルで調べることができます。保護解析は、(名前付き)POSIXセマフォの使用をサポートするように拡張されました。これは、複数のプロセスにわたって共有メモリを保護するためによく使用されます。
  • 視覚化:コード解析グラフのグラフィカルな視覚化では、プロセス用のレイヤーが追加されました。新しいレイヤーではプロセス内の関係を調べることが可能です。また、プロパティセクションには、プロセス、スレッド、関数、および変数に関する詳しい情報が表示されます。さらに、GUI内のすべてのテーブルには、高度なフィルタ機能とエクスポート機能があります。
  • ユーザー定義のスレッド名:SLX C/C++はユーザー定義のスレッド名のサポートを追加しました。関数pthread_setname_npを使用することで、ユーザーはアプリケーションのスレッドに名前を付けることができます。指定された名前は、SLX C / C ++Nextボタンをいよる分析結果の表示で使用されます。
  • 関数コスト:SLX C/C++のパフォーマンス見積もりでは、プラットフォームで定義されているプロセッサー・タイプごとに別々の評価を出して、マッピングとデプロイメントの決定でユーザーをサポートします。
  • リモートファイルシステム:SLX C/C++は1つのファイルシステムでのトレースと解析をサポートしますが、結果は別の(ファイル)システムで実行されているGUIで調べることができます。(例えばホスト上でGUIを実行している場合でもDockerコンテナ内でSLX C/C++を使用することができます)。
  • 共有ライブラリ:SLX C/C++ を用いることで、POSIX 共有ライブラリを使用するアプリケーションの動的解析とトレースが可能になります。また、SLX C/C++は複数の解析可能化されたバイナリの POSIX ロードタイム (動的) リンクをサポートします。しかしdlopen を使用した実行時リンク、および Windows上での 動的リンクのサポートは対応しておりません。

SLX 2019.2は、ツールの性能と機能の向上において飛躍的な一歩を踏み出し、C/C++マルチコアおよびFPGAプログラミング解析のリーダーとして、Silexicaの地位を築き上げています。ライブデモ、またSLX FPGAの評価を検討したい場合は、こちらからお問い合わせください。