-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup_dirs.py
59 lines (46 loc) · 1.65 KB
/
setup_dirs.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
55
56
57
58
import argparse
import os
from utils.constants import (
OUTPUT_DIR,
DATA_DIR,
MODEL_DIR,
FIGURE_DIR,
TUNING_DIR,
VECTOR_DIR,
VECTOR_FILE,
)
def init_dirs(output_dir):
assert os.path.exists(output_dir + DATA_DIR), 'Data directory is missing'
assert os.path.exists(output_dir + MODEL_DIR), 'Model directory is missing'
if not os.path.exists(output_dir + FIGURE_DIR):
os.makedirs(output_dir + FIGURE_DIR)
if not os.path.exists(output_dir + TUNING_DIR):
os.makedirs(output_dir + TUNING_DIR)
def setup_tuning_dir(output_dir, name):
dir_name = output_dir + TUNING_DIR + name
if not os.path.exists(dir_name):
os.makedirs(dir_name)
for c in range(1, 17):
comp_dir_name = dir_name + f'{c}/'
if not os.path.exists(comp_dir_name):
os.makedirs(comp_dir_name)
for label in ['sequences/', 'performance/', 'input_seeds']:
if not os.path.exists(comp_dir_name + label):
os.makedirs(comp_dir_name + label)
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('-o', '--output',
default=OUTPUT_DIR,
type=str,
help='The path of the output parent directory')
parser.add_argument('-n', '--name',
default='tuning_data',
type=str,
help='Name of the tuning write directory')
args = parser.parse_args()
output_dir = args.output
name = args.name
if name[-1] != '/':
name += '/'
init_dirs(output_dir)
setup_tuning_dir(output_dir, name)