diff --git a/lite/CMakeLists.txt b/lite/CMakeLists.txt index b9221954b4d87b19ec63c9ed4aa3092c6ee63143..8ad07a8765935184ac04fcf99f5fca13aee28b5d 100644 --- a/lite/CMakeLists.txt +++ b/lite/CMakeLists.txt @@ -105,7 +105,7 @@ if(NOT WIN32) add_library( lite_static_all_in_one STATIC $ $ $ - $ $) + $ $ $) elseif(MGE_ENABLE_CPUINFO AND NOT MGE_WITH_OPENCL) add_library( lite_static_all_in_one STATIC @@ -115,7 +115,7 @@ if(NOT WIN32) add_library( lite_static_all_in_one STATIC $ $ - $) + $ $) else() add_library(lite_static_all_in_one STATIC $ $) diff --git a/src/core/include/megbrain/comp_node.h b/src/core/include/megbrain/comp_node.h index c46d2e003191afed0d699f263673700502b30915..72fc680eb9539cf6875151e67c1e900fa9f527a8 100644 --- a/src/core/include/megbrain/comp_node.h +++ b/src/core/include/megbrain/comp_node.h @@ -324,6 +324,21 @@ public: /*! * \brief get logical address by host ptr */ + //! api for register memory info, in order compat old user code, do not change the + //! api name, this api have different behavior for with different OpenCL memory + //! type. + //! Map/UnMap: use to get logical_addr of cl_mem alloc by MegEngine, which can + //! be reset to TensorND storage raw_ptr, NOTICE: Map/UnMap do not support cl_mem + //! not alloc from MegEngine. + //! SVM: in fact do nothing, just return ptr same with args. + //! ION: this case support two case: + //! ION case one: IonHostPtr info is alloc by MegEngine, this case, args ptr is + //! tensor raw_ptr, and args size is tensor size in bytes, api will return + //! IonHostPtr ptr, then user can use it out of EegEngine. + //! ION case two: use to register user IonHostPtr info, args ptr is IonHostPtr, size + //! is IonHostPtr->ion_hostptr size_in_bytes, MegEngine will register it into DNN, + //! then just return IonHostPtr->ion_hostptr, which can be reset to TensorND storage + //! raw_ptr. MGE_WIN_DECLSPEC_FUC void* get_logical_addr_by_host_ptr(void* ptr, size_t size); /* =================== synchronization ======================== */