我正在学习Performance Application Programming Interface的python包装器的教程here。
我可以通过papi_avail看到我的系统确实有硬件计数器(Number Hardware Counters: 11),并且我感兴趣的事件(PAPI_SP_OPS)是可用的:
Name Code Avail Deriv Description (Note)
PAPI_SP_OPS 0x80000067 Yes Yes Floating point operations; optimised to count scaled single precision vector operations现在我运行python包装器,类似于本教程中所示:
from pyapi import events, papi_high as high
high.start_counters([events.PAPI_SP_OPS]) 但是,我得到了错误pyapi.exceptions.PapiNoEventError: Event does not exist. (PAPI_ENOEVNT)。但很明显,该事件确实存在,如papi_avail开头所示
有什么建议吗?
发布于 2021-02-26 03:22:40
这意味着事件是可用的,但是您的python代码不能访问硬件中的计数器。
根据我的经验,您不能访问AWS实例中的计数器,但如果您在本地计算机上运行,则应为您的环境提供特殊权限。
我所做的就是用"--privileged“标志设置了一个docker容器,这样就解决了这个问题。
https://stackoverflow.com/questions/65566811
复制相似问题