eSDK Pro: 実際に構築するシステム向けに構築
eSDK Pro: 実世界規模の最新ビジョンSDK
Emergentの新しいソフトウェア開発キット(SDK)フレームワークは、高速マルチホストビジョンシステムの構築、導入、拡張を容易にします。パイプライン駆動型のSDKアーキテクチャと最適化されたトランスポート層により、リアルタイムビジョンシステムをスムーズに拡張できます。
eSDK Pro ソフトウェア開発キット
エマージェントの新しいSDKフレームワークにより、高速マルチホストビジョンシステムの構築、展開、拡張が容易になります。
著者: Thomas Detjen、EMEA セールス ディレクター、Emergent Vision Technologies Inc.
GigEの先駆者からシステムイネーブラーへ
GigE Visionは5年以上にわたり、高速産業用画像処理の基盤としてその実力を発揮してきました。高速でスケーラブル、そしてオープンスタンダードに基づいて構築されています。しかし、カメラハードウェアが急速に進化する一方で、SDKや統合ツールは、特にマルチカメラ構成、GPUベースの処理、あるいは10GigE、25GigE、100GigE、さらにはXNUMXGigEパイプラインを備えたシステムにおいては、その進化に追いついていないケースが多く見られます。
エマージェント・ビジョン・テクノロジーズでは、こうした限界を目の当たりにしてきました。顧客への導入だけでなく、自社の高性能デモ・検証プラットフォームを通しても、その限界を目の当たりにしてきました。まさにそれが、 eSDKプロ: 面倒な作業を排除し、開発者がビジョン システムをスムーズに拡張できるようにする、パイプライン駆動型のプラグイン ベースの SDK。
アイデアから統合まで: eSDK Pro とは何ですか?
想像してみてください。25MPカメラ100台から、それぞれ25GigE経由で4fpsでストリーミング配信する必要があります。これらのストリームは、同期されたXNUMX台のワークステーションにまたがるXNUMXつのGPUに送られます。データはリアルタイムで処理され、圧縮され、推論にかけられます。もちろん、フレームドロップはゼロでなければなりません。
複雑に聞こえますか?実際そうです。
従来のSDKでそのコードを書くのにどれくらいの時間がかかりますか?1か月?2か月?そして、特にEmergentのeSDKで構築していない場合、どれくらい安定するのでしょうか?
100 行未満のマルチ GPU、マルチホスト ビジョン パイプライン
100行未満でマルチGPU、マルチホストのビジョンパイプラインを構築。eSDK ProとFlexTransを使用したリアルタイムカメラストリーミング、GPU処理、サーバー間データ転送:スケーラブルでモジュール化されており、すぐに実稼働環境で利用できます。
さて、この雑誌の表紙画像をもう一度見てください。まさにそのセットアップ、つまり高速カメラ8台、マシン2台、GPU4基が稼働しています。そして、それを動かすコードは?たったXNUMXページに収まっています。
eSDK Pro は、宣言型パイプライン、モジュラー プラグイン、ゼロコピー トランスポート、GPU Direct、RDMA、マルチホスト調整のサポートなど、すべてクリーンで展開可能なインターフェースにまとめられています。
これは魔法ではありません。アーキテクチャです。4年第2025四半期までに利用可能になります。
eSDK Proの使用感
では、実際にはどのように動作するのでしょうか?タイトル画像と同じ8台のカメラシステム、つまり8台のHB-25000-SBが25GigE経由で100MP、25FPSでストリーミング配信しています。各ストリームはFlexTransおよびFlexProg処理ブロックを経由してルーティングされ、合計2台のワークステーションに分散されます。
NVIDIA GPU。フレーム落ちなし。ハードウェアのデイジーチェーン接続も不要。最大限のパフォーマンスを実現します。
eSDK Proでは、この設定は宣言型のパイプラインになります。各タスクの処理内容(取得、変換、GPU転送、出力)を定義すると、SDKがスケジューリング、メモリ管理、同期を処理します。
それでおしまい。
カスタム GPU プラグインの動作
カスタムGPUプラグインの動作例。eSDK ProでCUDAベースの独自の処理ロジックを定義し、登録、接続、実行。シンプルでモジュール化されており、すぐに実稼働環境で使用できます。
定型文なし。コールバックのジャングルなし。メモリの受け渡し方法を推測する必要もありません。これは実際の本番環境で実際に使われているコードであり、初日から動作します。
その結果、ドライバやスレッドロジック、フレーム管理といった開発に煩わされることなく、アプリケーションロジックに集中できるようになります。圧縮機能(例:H.264/H.265)を追加したいですか?プラグインを追加するだけです。しきい値で外部デバイスをトリガーしたいですか?プラグインを使用します。ホスト間でスケーリングしたいですか?同期ノードを追加するだけで完了です。
これらはすべて、DMA転送、低CPU負荷、ゼロコピーメモリ移動を備えたEmergentの最適化されたスタック上に構築されています。必要に応じてRDMAにも対応します。これは単なる新しいAPIではなく、スケーラブルなビジョン開発への全く新しいアプローチです。
従来のSDKが行き詰まる理由
ほとんどのSDKは、最初のカメラを起動させるのに十分です。接続を開き、データをストリーミングし、フレームを取得できます。しかし、プロジェクトが拡大し、帯域幅、カメラ、コンピューティング能力が増加すると、すぐに欠陥が見えてきます。
基本的な同期、バッファ処理、GPUサポートのために、数千行もの(グルー)コードを書くことになるでしょう。統合はコールバック、ミューテックス、そして定型文のジャングルと化します。マルチホスト設定やGPUメモリ転送については、もはや言うまでもありません。
eSDK Proが違いを生み出すのはまさにこの点です。単なるラッパーではなく、大規模なリアルタイムイメージングのために構築された、まっさらな状態です。
ボンネットの下に:FlexProc、FlexTrans、そして15年間のEmergentの最適化ドライバー
センサーからGPU(またはNVMe、推論エンジン)にデータを取得するには、高速カメラ以上のものが必要です。アーキテクチャが不可欠です。
ここで FlexProc と FlexTrans Technologies が登場します。これらのプリコンパイルされたスマート ノードはパイプラインに組み込まれ、トランスポート、圧縮、処理、カスタム I/O ロジックを処理します。モジュール式で効率的、かつ緊密に統合されています。
これらは、Emergent の最適化された GVSP ドライバーを搭載しており、顧客は DMA ベースのストリーミングと低い CPU 負荷にアクセスできます。この設計は 15 年以上にわたって磨き上げられてきました。
ディスクへの直接RAW記録
カメラからSSDへ、リアルタイムでRAWストリームをディスクに直接記録。バッファリングやフレームドロップなどの煩わしさは一切ありません。録画ボタンを押すだけですぐに開始できます。
GUI かコードか? どちらもご用意しております。
完全な制御を求めるユーザーもいれば、シンプルな UI を好むユーザーもいます。
eCapture Proは、グラフィカルな設定で、高性能エンジンを搭載しています。複数カメラの同期、プラグインの割り当て、複数ホストの連携、メタデータのタグ付け、トリガーロジックなど、すべてがクリックひとつで操作できます。
後でコードに移行する必要がありますか?設定をエクスポートしてeSDK Proに切り替えましょう。無駄な労力はかかりません。
あなたのスタック、あなたのやり方
- eCapturePro: GUIベースのプロトタイピング、構成、および操作
- eSDK: 従来の統合または組み込みシステム向けの軽量SDK
- eSDKプロ: マルチホスト、GPU、RDMA、FlexProc、FlexTransテクノロジーを完全にサポートする完全なモジュラーパイプライン
適切なものを使用してください。必要に応じてスケールを調整します。
結論:痛みのないパフォーマンス
ビジョンシステムの未来は、リアルタイム、マルチカメラ、GPU駆動、そして水平スケーラブルです。こうしたインフラストラクチャをゼロから構築する必要はありません。eSDK Proなら、その必要はありません。
ビジョン統合に関する私たちの経験のすべてが、最新のSDKスタックに組み込まれています。本物のコード、本物のサポート、そしてリアルタイム。コンパクトなスマート検査セルを構築する場合でも、マルチノードGPUファームを構築する場合でも、eSDK Proなら複雑さを感じることなく、安心して拡張できます。