tkonolige opened a new pull request, #11434: URL: https://github.com/apache/tvm/pull/11434
Popen pool timeout would not function in the case of long running c++ code. It relied on a python `threading.Timer` to interrupt the process after a certain amount of time. However python timers cannot interrupt c++ code (or any other code besides python). Instead we now use a subprocess (via python's `multiprocessing`) to kill the worker process after the timeout expires. This works no matter what code is being run. Note that this means that TimeoutErrors are never reported because we have no way of distinguishing between timeouts and subprocesses dying. I think this is a worthwhile tradeoff because we can run into situations where autotvm takes forever to tune because it is waiting on a really slow to compile program. @tqchen -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
