1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- import subprocess
- import sys
- import os
- # sys.executable to use the same Python interpreter used to invoke this command
- if len(sys.argv) < 2:
- port = "8001"
- else:
- port = sys.argv[1]
- # Start up the HUTN compilation service already
- try:
- hutn = subprocess.Popen([sys.executable, "services/HUTN/main.py", "127.0.0.1:%s" % port])
- json = subprocess.Popen([sys.executable, "services/JSON/main.py", "127.0.0.1:%s" % port])
- os.chdir("wrappers")
- subprocess.check_call([sys.executable, "-m", "sccd.compiler.sccdc", "-p", "threads", "modelverse_SCCD.xml"])
- os.chdir("../hybrid_server")
- subprocess.check_call([sys.executable, "-m", "sccd.compiler.sccdc", "-p", "threads", "server.xml"])
- program_to_execute = [sys.executable, "run_mvk_server.py", port]
- # Alternative execution modes
- #program_to_execute = [sys.executable, "-m", "cProfile", "-s", "tottime", "run_mvk_server.py", port]
- #program_to_execute = [sys.executable, "run_mvk_server.py", port, "--kernel=interpreter"]
- #program_to_execute = [sys.executable, "run_mvk_server.py", port, "--kernel=fast-jit"]
- server = subprocess.Popen(program_to_execute)
- server.wait()
- finally:
- try:
- server.terminate()
- except:
- pass
- try:
- hutn.terminate()
- except:
- pass
- try:
- json.terminate()
- except:
- pass
|