コンテンツにスキップ

HPDBN SDK統合ガイド

EvoSpikeNet-CoreのHPDBN契約は、既存DevicePluginを置き換えずにSDKから利用できます。

既存プラグインを接続する

from evospikenet.hpdbn import DevicePluginRuntimeAdapter, SelectedPath

runtime = DevicePluginRuntimeAdapter(
    plugin,
    {SelectedPath.LOCAL_SNN: "run_g_quat"},
)

if runtime.available(SelectedPath.LOCAL_SNN):
    result = runtime.run(SelectedPath.LOCAL_SNN, payload)

pathsはHPDBNの経路と、既存プラグインが公開する実行メソッドの対応表です。G-QuAT、NorthPole、Loihiなどのベンダー固有処理は既存プラグインが担当し、HPDBNは期限・経路選択・可用性の契約を担当します。

runtime_available=Falseのプラグインは、シミュレータfallbackが存在しても実デバイス経路として利用されません。シミュレーション時は設定とログで明示してください。

実行例

Coreリポジトリの次のサンプルで、同じ契約への接続を確認できます。

cd EvoSpikeNet-Core
PYTHONPATH=. python examples/sdk/hpdbn_existing_plugin_bridge.py

外部最適化との組み合わせ

外部のQUBO、量子、クラウド、地上GPUソルバーは、緊急ローカル推論の代替ではありません。問題定義と解の検証は HPDBN外部定義最適化 の envelope、入力ハッシュ、計画世代、期限、認証、制約検査に従います。

責務

  • Core: LocalHPDBNNode、PfcInput、PfcDecision、RuntimeAdapter、peer summaryの基本検証
  • 既存DevicePlugin: ベンダーruntimeの検出、Tensor実行、デバイス固有の変換
  • 利用側: センサーアダプタ、Safety Barrier、制御、ウォッチドッグ、電源・温度・メモリ監視

Native CPU Backend

CPU本番では、既存DevicePluginを残したまま NativeCPUBackend を LOCAL_CPU の実行候補として追加できます。SDKの公開契約にTorch tensorを直接露出させず、Native配列・Torch tensor・NumPy配列の変換境界をruntime adapter内に限定します。

Native backendは、既存checkpointの読み込みとTorch経路へのrollbackを提供し、同一入力・同一重みで出力、発火数、attention重み、p95レイテンシを比較してから有効化します。移行全体の基準は Native CPU Runtime移行計画 に従います。

HPDBNは航空・車両・ロボットの安全認証済み制御実装ではありません。