Created by: ysh329
WIP 进行中……
CI和开发机网络问题,一直无法提交
Image2D支持
- tensor和memory对image2d资源的管理:
- tensor层(lite/core/tensor.h, lite/core/tensor.cpp)
-
cl::Image2D* data<float, cl::Image2D>()
: param.x中取cl::Image2D*
,即该op的输入; -
cl::Image2D* mutable<float, cl::Image2D>(target, image_w, image_h)
: param.y开辟大小为image_w和image_h的cl::Image2D
-
- memory层(lite/core/memory.h, lite/core/memory.cpp)
-
ResetLazyImage2D(target, image2d_shape, image2d_pitch)
: ——>TargetWrapperCL::MallocImage
-
void TargetCopyImage2D(target, dst, src, image_shape, image_pitch)
: ——>TargetCopyImage2D
-
void ResizeLazyImage2D(image2d_shape, image2d_pitch)
: ——>ResetLazyImage2D<T>
-
void CopyImage2DFrom(other, image2d_shape, image2d_pitch)
: ——>ResizeLazyImage2D<T>; TargetCopyImage2D
-
- tensor层(lite/core/tensor.h, lite/core/tensor.cpp)
修复
-
StaticKernelPickPass
未初始化kernel_pick_factors_
,导致pick kernel时判断条件中,对Layout不会判断,已修复; -
type_layout_cast_pass.cc
:选错layout kernel,已修复; -
op_registry.h
:注册kernel时未考虑layout,导致在注册kernel时,layout参数不同,其它注册参数相同的条件下,注册失败,已修复;