Я пытаюсь запустить функцию, но преждевременно ее отключаю.Я попытался использовать многопроцессорную библиотеку Python, чтобы создать процесс для функции, а затем завершить его.Я также пытаюсь использовать многопроцессорную библиотеку для уничтожения всех дочерних процессов.Мой код работает без отображения сообщений об ошибках.Тем не менее, даже после того, как программа полностью завершена (не только процесс, но и все остальное), память моего GPU исчерпана.Я не уверен, почему это происходит.Любая помощь будет принята с благодарностью.
Вот мой код:
class TrainingHelper:
def __init__(self, filename = "nah.txt"):
#filename is the name of the log file
self.filename = filename
def train(self):
import reaver as rvr
env = rvr.envs.SC2Env(map_name='FindAndDefeatZerglings')
agent = rvr.agents.A2C(env.obs_spec(), env.act_spec(),
rvr.models.build_fully_conv, rvr.models.SC2MultiPolicy,
n_envs=4)
agent.run(env)
def run(self):
import multiprocessing
import time
import sys
p = multiprocessing.Process(target=self.train, name="Reaver",
args=())
p.start()
time.sleep(120)
p.terminate()
p.join()
for prc in multiprocessing.active_children():
prc.terminate()
print("hello") #this works
if __name__ == "__main__":
trainingHelper = TrainingHelper()
trainingHelper.run()
Вот снимок экрана с запуском команды nvidia-smi
![Here's a screenshot from running the command nvidia-smi](https://i.stack.imgur.com/KigEN.png)