随笔分类 -  ONNXRuntime源码阅读

摘要:在 ONNX Runtime 源码(onnxruntime/core/framework/graph_partitioner.cc,函数GraphPartitioner::Partition)中,有这么一段注释: NOTE: A 'sub-graph' is a subset of nodes wi 阅读全文
posted @ 2022-05-10 11:28 虔诚的树 阅读(1132) 评论(0) 推荐(0)
摘要:出处:代码的注释内容 include/onnxruntime/core/framework/alloc_kind.h ONNX Runtime 在推理流程中,存在以下几类值(ml-Values): inference inputs:由调用者(caller)分配以及释放内存空间,默认情况下运行时(ru 阅读全文
posted @ 2022-05-07 14:56 虔诚的树 阅读(732) 评论(0) 推荐(0)
摘要:前言 为了深入理解ONNX Runtime的底层机制,本文将对 Graph::SetGraphInputsOutputs() 的代码逐行分析。 正文 首先判断Graph是否从ONNX文件中加载所得: if (is_loaded_from_model_file_) return Status::OK( 阅读全文
posted @ 2022-05-04 09:52 虔诚的树 阅读(668) 评论(0) 推荐(0)
摘要:ONNXRuntime的线程池接口在Eigen线程池接口基础之上扩展而来(题外话:TensorFlow中的线程池同样是建立在Eigen线程池基础上),以下是线程池的继承关系,其中 ThreadPoolTempl 是对接口的实现: 在 \(Environment::Initialize()\) 函数中 阅读全文
posted @ 2022-03-14 11:50 虔诚的树 阅读(1349) 评论(0) 推荐(0)
摘要:在构建一个推理模型时(如NanoDet,一个目标检测模型),需要继承 BasicOrtHandler。BasicOrtHandler 的初始化函数中会调用 initialize_handler() 方法,该方法会对 OrtEnv ort_env(构建在栈上)、OrtSession ort_sessi 阅读全文
posted @ 2022-03-13 18:47 虔诚的树 阅读(1751) 评论(0) 推荐(0)