[英]numba.typeinfer.TypingError: Untyped global name 'child_launch' when using CUDA Dynamic Parallelism in Python ( Anaconda ) on NVIDIA GPU
[英]Numba printing information regarding Nvidia driver to python console when using its Cuda module. How to suppress this?
我發現 Numba 在使用其 Cuda 模塊時將有關我的 Nvidia 驅動程序的信息打印到我的 python 控制台。 例如,當使用
numba.cuda.to_device(SOME_ARRAY)
首次,
信息 - 2020-12-21 19:16:22,163 - 驅動程序 - 初始化
以紅色打印到我的控制台。 其他時間使用時,
信息 - 日期時間 - 驅動程序 - 添加掛起的 dealloc:cuMemFree_v2 NUM_BYTES 字節
被打印。 例如:
INFO - 2020-12-21 19:18:34,473 - 驅動程序 - 添加掛起的 dealloc:cuMemFree_v2 729120 字節
有什么方法可以阻止 Numba 打印這些信息?
_ _
正如評論中的建議,我已經嘗試過設置
sys.stdout = open(os.devnull, "w")
sys.stderr = open(os.devnull, "w")
在運行numba.cuda.to_device()
之前,但這並沒有解決問題。
我還研究了 Numba 的環境變量,但沒有發現任何解決問題的方法。 具體來說,我嘗試過設置
os.environ['NUMBA_CUDA_LOG_LEVEL'] = str(logging.NOTSET)
和
os.environ['NUMBA_CUDA_LOG_LEVEL'] = str(logging.DEBUG)
兩者都沒有解決這個問題。 我也試過設置
numba.config.CUDA_LOG_LEVEL = logging.NOTSET
和
numba.config.CUDA_LOG_LEVEL = logging.DEBUG
但這又一次沒有解決問題。
一段時間后,我找到了解決這個問題的方法。 正如上面評論中的 talonmies 所暗示的,這些消息來自 Numba 記錄器。 在我的機器上,日志級別設置為“INFO”,Numba 直接打印到控制台。 要禁止打印信息,請將以下內容添加到 python 程序中:
import logging
numba_logger = logging.getLogger('numba')
numba_logger.setLevel(logging.WARNING) # Or any other desired level that has a value above that of "INFO".
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.