llama.cppプロジェクトはビルドb10078をリリースし、同期効率を向上させるためのVulkanバックエンドの重要なリファクタリングが含まれています。このアップデートはVK_KHR_internally_synchronized_queuesのサポートを統合し、ドライバーがサポートしている場合にホスト側のミューテックスロックを完全にバイパスするポリモーフィックインターフェースにキュー送信を抽象化できるようにします。
- vk_queueをインスタンスごとのミューテックスと一意のハンドルを使用して排他的所有権を持つようにリファクタリング。
- ドライバーがサポートしている場合にホスト側のミューテックスロックをバイパスするためにVK_KHR_internally_synchronized_queuesを統合。
- internallySynchronizedQueues検出用のフォールバック定義と静的constexpr定数を追加。
- vk_device_structデストラクタでのコンパイルエラー、重複したpNextチェーン、およびnullチェックを修正。
この変更は、デバイスの作成中に冗長なAPI呼び出しを削減しながら、ライフタイム管理とスレッド安全性を最適化します。