Skip to content

Commit 4d22f45

Browse files
Runtime folder is no longer inside the engines path
1 parent 32dc27c commit 4d22f45

File tree

3 files changed

+37
-23
lines changed

3 files changed

+37
-23
lines changed

runtime/.gitignore

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
*
2+
!.gitignore

scripts/__init__.py

+1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
MMT_ROOT = os.path.abspath(os.path.join(__self_dir, os.pardir))
1010
ENGINES_DIR = os.path.join(MMT_ROOT, 'engines')
11+
RUNTIME_DIR = os.path.join(MMT_ROOT, 'runtime')
1112
OPT_DIR = os.path.join(MMT_ROOT, 'opt')
1213
LIB_DIR = os.path.join(MMT_ROOT, 'lib')
1314
BUILD_DIR = os.path.join(MMT_ROOT, 'build')

scripts/engine.py

+34-23
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,6 @@ def __init__(self, langs=None, name=None):
165165
self._data_path = os.path.join(self._root_path, 'data')
166166
self._logs_path = os.path.join(self._root_path, 'logs')
167167
self._temp_path = os.path.join(self._root_path, 'temp')
168-
self.runtime_path = os.path.join(self._root_path, 'runtime')
169168

170169
self._config_file = os.path.join(self._root_path, 'engine.ini')
171170
self._pt_model = os.path.join(self._data_path, 'phrase_tables')
@@ -218,23 +217,23 @@ def config(self):
218217
self._config.read(self._config_file)
219218
return self._config
220219

221-
def get_tempdir(self, name, ensure=True):
222-
if ensure and not os.path.isdir(self._temp_path):
223-
fileutils.makedirs(self._temp_path, exist_ok=True)
224-
225-
folder = os.path.join(self._temp_path, name)
226-
227-
if ensure:
228-
shutil.rmtree(folder, ignore_errors=True)
229-
os.makedirs(folder)
230-
231-
return folder
232-
233-
def get_logfile(self, name, ensure=True):
234-
if ensure and not os.path.isdir(self._logs_path):
235-
fileutils.makedirs(self._logs_path, exist_ok=True)
236-
237-
return os.path.join(self._logs_path, name + '.log')
220+
# def get_tempdir(self, name, ensure=True):
221+
# if ensure and not os.path.isdir(self._temp_path):
222+
# fileutils.makedirs(self._temp_path, exist_ok=True)
223+
#
224+
# folder = os.path.join(self._temp_path, name)
225+
#
226+
# if ensure:
227+
# shutil.rmtree(folder, ignore_errors=True)
228+
# os.makedirs(folder)
229+
#
230+
# return folder
231+
#
232+
# def get_logfile(self, name, ensure=True):
233+
# if ensure and not os.path.isdir(self._logs_path):
234+
# fileutils.makedirs(self._logs_path, exist_ok=True)
235+
#
236+
# return os.path.join(self._logs_path, name + '.log')
238237

239238
def build(self, corpora, debug=False, steps=None):
240239
if len(corpora) == 0:
@@ -448,9 +447,13 @@ def __exit__(self, *_):
448447

449448

450449
class MMTServer(_ProcessMonitor):
451-
def __init__(self, engine, api_port=None, cluster_ports=None):
452-
_ProcessMonitor.__init__(self, os.path.join(engine.runtime_path, 'master_pid'))
450+
def _get_runtimedir(self, ensure=True):
451+
path = os.path.join(scripts.RUNTIME_DIR, self.engine.name, 'master')
452+
if ensure:
453+
os.makedirs(path)
454+
return path
453455

456+
def __init__(self, engine, api_port=None, cluster_ports=None):
454457
self._mert_script = os.path.join(Moses.bin_path, 'scripts', 'mert-moses.pl')
455458
self._mert_i_script = os.path.join(scripts.MMT_ROOT, 'scripts', 'mertinterface.py')
456459

@@ -461,6 +464,8 @@ def __init__(self, engine, api_port=None, cluster_ports=None):
461464
self.log_file = engine.get_logfile('mmtmaster', ensure=False)
462465
self.api = MMTServerApi(api_port)
463466

467+
_ProcessMonitor.__init__(self, os.path.join(self._get_runtimedir(), 'process.pid'))
468+
464469
def _start_process(self):
465470
classpath = [scripts.MMT_JAR]
466471

@@ -548,7 +553,7 @@ def tune(self, corpora, tokenize=True, debug=False, context_enabled=True):
548553

549554
fileutils.makedirs(mert_wd, exist_ok=True)
550555

551-
runtime_moses_ini = os.path.join(self.engine.runtime_path, 'moses.ini')
556+
runtime_moses_ini = os.path.join(self._get_runtimedir(ensure=False), 'moses.ini')
552557
command = [self._mert_script, source_merged_corpus, target_merged_corpus,
553558
self._mert_i_script, runtime_moses_ini, '--mertdir', os.path.join(Moses.bin_path, 'bin'),
554559
'--mertargs', '\'--binary --sctype BLEU\'', '--working-dir', mert_wd,
@@ -590,15 +595,21 @@ def tune(self, corpora, tokenize=True, debug=False, context_enabled=True):
590595

591596

592597
class MMTWorker(_ProcessMonitor):
593-
def __init__(self, engine, cluster_ports, master=None):
594-
_ProcessMonitor.__init__(self, os.path.join(engine.runtime_path, 'slave_pid'))
598+
def _get_runtimedir(self, ensure=True):
599+
path = os.path.join(scripts.RUNTIME_DIR, self.engine.name, 'slave')
600+
if ensure:
601+
os.makedirs(path)
602+
return path
595603

604+
def __init__(self, engine, cluster_ports, master=None):
596605
self.engine = engine
597606
self.cluster_ports = cluster_ports
598607
self._master = master
599608

600609
self.log_file = engine.get_logfile('mmtslave', ensure=False)
601610

611+
_ProcessMonitor.__init__(self, os.path.join(self._get_runtimedir(), 'process.pid'))
612+
602613
def _start_process(self):
603614
classpath = [scripts.MMT_JAR]
604615

0 commit comments

Comments
 (0)