Skip to content

QNN EP: ort.get_available_providers never shows the dynamically registered EPs when using Plugin EPs #27832

@qti-mbadnara

Description

@qti-mbadnara

Describe the issue

When we use Plugin EP and register it using register_execution_provider_library() function, ort.get_available_providers() only returns the fixed list of execution providers that were compiled during build time. It never shows the registered ExecutionProvider loaded dynamically.

To reproduce

pip install onnxruntime onnxruntime-qnn==2.0.0

import onnxruntime as ort
import onnxruntime_qnn as qnn_ep

ep_lib_path = qnn_ep.get_library_path()
ep_name = "QNNExecutionProvider"

ort.register_execution_provider_library(ep_name, ep_lib_path)

ep_names = qnn_ep.get_ep_names()
print(f"Valid EP Names: {ep_names}")

providers = ort.get_available_providers()
print(f"ORT Available Providers: {providers}")

Urgency

No response

Platform

Windows

OS Version

Windows 11

ONNX Runtime Installation

Released Package

ONNX Runtime Version or Commit ID

1.24.4

ONNX Runtime API

Python

Architecture

ARM64

Execution Provider

Other / Unknown

Execution Provider Library Version

QNN

Metadata

Metadata

Assignees

No one assigned

    Labels

    ep:QNNissues related to QNN exeution provider

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions