小编arv*_*kgs的帖子

无法杀死在NVIDIA GPU上运行的坏内核

我是一个真正的解决方案.请帮忙.这很紧急.

我有一个主机进程产生多个主机(CPU)线程(pthreads).这些线程又调用CUDA内核.这些CUDA内核由外部用户编写.因此可能是进入无限循环的糟糕内核.为了克服这个问题,我已经花了2分钟的时间来杀死相应的CPU线程.

杀死CPU线程还会杀死GPU上运行的内核吗?就我所测试的而言,它没有.

如何杀死当前在GPU中运行的所有线程?

编辑:我使用调用内核的CPU线程的原因是,服务器有两个Tesla GPU.因此,线程将交替地在GPU设备上调度内核.

谢谢,Arvind

c multithreading cuda pthreads gpu-programming

5
推荐指数
1
解决办法
1293
查看次数

如何获取logging.LogRecord对象的格式化字符串

我只想将一些 INFO 日志消息打印到控制台和日志文件。我用 StreamHandler 和 FileHandler 创建了一个记录器。我将所有消息打印到文件中,而不是在控制台中仅打印错误和严重消息。以下是我的日志配置。

# create logger
self.logger = logging.getLogger(__name__)
self.logger.setLevel(logging.DEBUG)

# Prints only ERROR CRITICAL to stdout
ch = logging.StreamHandler()
ch.setLevel(logging.ERROR)

# Prints ALL log levels to file
fh = logging.FileHandler(self.logFile, 'w')
fh.setLevel(logging.DEBUG)

# create formatter
self.formatLogMessage = '[[%(asctime)s]\t[%(levelname)s]\t[%(filename)s]\t[%(funcName)s]\t[%(processName)s]]\t%(message)s'
formatter = logging.Formatter(self.formatLogMessage)

# add formatter
fh.setFormatter(formatter)
ch.setFormatter(formatter)

# add ch to logger
self.logger.addHandler(fh)
self.logger.addHandler(ch)
Run Code Online (Sandbox Code Playgroud)

现在 logger.info() 仅打印到文件。

假设我想强制将一些信息消息打印到控制台。我编写了一个方法 - printInfoConsole 来显式打印到控制台以及日志如下:

# Method to print Info to both log and console
def __printInfoConsole(self, msg, fnName="validate"):
  name …
Run Code Online (Sandbox Code Playgroud)

python logging python-2.7

3
推荐指数
1
解决办法
3179
查看次数