asc.language.basic.printf
- asc.language.basic.printf(desc: str, *params) None
该接口提供CPU域/NPU域调试场景下的格式化输出功能。 在算子kernel侧实现代码中需要输出日志信息的地方调用printf接口打印相关内容。
对应的Ascend C函数原型
void printf(__gm__ const char* fmt, Args&&... args) void PRINTF(__gm__ const char* fmt, Args&&... args)
参数说明
fmt:格式控制字符串,包含两种类型的对象:普通字符和转换说明。
args:附加参数,个数和类型可变的参数列表。
约束说明
本接口不支持打印除换行符之外的其他转义字符。
该接口使用Dump功能,所有使用Dump功能的接口在每个核上Dump的数据总量不可超过1M。请开发者自行控制待打印的内容数据量,超出则不会打印。
算子入图场景,若一个动态Shape模型中有可下沉的部分,框架内部会将模型拆分为动态调度和下沉调度(静态子图)两部分,静态子图中的算子不支持该printf特性。
调用示例
#整型打印 x = 10 asc.printf("%d", x) #浮点型打印 x = 3.14 asc.printf("%f", x)