-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtry_multiprocessing_manager.py
54 lines (41 loc) · 1.29 KB
/
try_multiprocessing_manager.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#! /usr/bin/python3
# -*- coding: utf-8 -*-
# Some other needed imports
import datetime
import dill
import gzip
import os
import pdb
import re
import sys
import traceback
import numpy as np
import pandas as pd
from copy import deepcopy, copy
from dotmap import DotMap
from functools import reduce
from memory_tempfile import MemoryTempfile
from shutil import copyfile
import config_file
sys.path.append('..')
from utils import mkdirs
from utils_multiprocessing_manager import MultiprocessingManager
from utils_serialization import get_pkl_gz_obj, save_pkl_gz_obj
sys.path.append('../combinatorics')
import different_combinations
PATH_ROOT_DIR = os.path.dirname(os.path.abspath(__file__))+"/"
HOME_DIR = os.path.expanduser("~")+"/"
TEMP_DIR = MemoryTempfile().gettempdir()+"/"
OBJS_DIR_PATH = PATH_ROOT_DIR+'objs/'
mkdirs(OBJS_DIR_PATH)
if __name__ == '__main__':
def do_simple_loop(n):
for _ in range(0, n):
pass
return None
mult_proc_manag = MultiprocessingManager(cpu_count=4)
mult_proc_manag.define_new_func(name='do_simple_loop', func=do_simple_loop)
l_func_args = config_file.l_func_args
l_func_name = ['do_simple_loop'] * len(l_func_args)
mult_proc_manag.do_new_jobs(l_func_name=l_func_name, l_func_args=l_func_args)
del mult_proc_manag