关于DataCopy随路格式转换CO1->A1接口的调用
收藏回复举报
关于DataCopy随路格式转换CO1->A1接口的调用
t('forum.solved') 已解决
发表于2024-08-17 17:57:40
0 查看
我现在在开发一个trsm的算子,需要把CO1的数据搬运到L1Buffer,再作为B矩阵参与计算。我看文档里只有DataCopy的随路格式转换可以支持这种搬运方式。但是DataCopy的随路格式转换要求源操作数据类型为float,目的操作数据类型为uint8_t/int8_t/half/bfloat16_t,我需要的源操作数和目的操作数的数据类型都为float,如果直接调用会报错:/home/Ascend/ascend-toolkit/latest/tools/tikcpp/tikcfw/impl/dav_c220/kernel_operator_data_copy_impl.h:1048:47: error: the 1st parameter maybe need a type '__cbuf__ half *' 

                return copy_matrix_cc_to_cbuf(dst, src, intriParams.sid, intriParams.nSize, intriParams.mSize,

我想请问这个接口是单纯的数据传输吗,如果是的话,因为half和float只是数据类型不同,地址类型是一样的,有没有可能通过强制数据类型转化的方式实现float搬运的功能?

另外,我还想问一下因为这个接口是CO1->A1,但是我实际需要把这个矩阵作为B矩阵计算,我在LoadData的时候可以从A1加载到B2吗?

我要发帖子