mirror of
https://github.com/saymrwulf/onnxruntime.git
synced 2026-05-14 20:48:00 +00:00
Fix the power mode issue for the case that run from context model (#23330)
### Description Set power config id and the default power mode from provider option (if there is) for main thread, otherwise it will mess up the power mode if user just create session without run it. The issue fixed by this PR is: Process 1 just creates the session without run it. Then, start process 2 which creates the session and run it with power saver mode. The result is with burst power mode.
This commit is contained in:
parent
82aa355904
commit
afbee6eb0c
1 changed files with 6 additions and 1 deletions
|
|
@ -707,6 +707,12 @@ QNNExecutionProvider::GetCapability(const onnxruntime::GraphViewer& graph_viewer
|
|||
return result;
|
||||
}
|
||||
|
||||
if (IsNpuBackend(qnn_backend_manager_->GetQnnBackendType())) {
|
||||
// Set the power config id and the default power mode from provider option for main thread,
|
||||
// otherwise it will mess up the power mode if user just create session without run it.
|
||||
GetPerThreadContext();
|
||||
}
|
||||
|
||||
// Report error if QNN CPU backend is loaded while CPU fallback is disabled
|
||||
if (disable_cpu_ep_fallback_ && qnn_backend_manager_->GetQnnBackendType() == qnn::QnnBackendType::CPU) {
|
||||
LOGS(logger, ERROR) << "Qnn CPU backend is loaded while CPU fallback is disabled.";
|
||||
|
|
@ -905,7 +911,6 @@ Status QNNExecutionProvider::CompileFromOrtGraph(const std::vector<FusedNodeAndG
|
|||
Status QNNExecutionProvider::Compile(const std::vector<FusedNodeAndGraph>& fused_nodes_and_graphs,
|
||||
std::vector<NodeComputeInfo>& node_compute_funcs) {
|
||||
const auto& logger = *GetLogger();
|
||||
|
||||
bool is_qnn_ctx_model = qnn::IsFusedGraphHasCtxNode(fused_nodes_and_graphs);
|
||||
|
||||
onnxruntime::PathString context_cache_path;
|
||||
|
|
|
|||
Loading…
Reference in a new issue