in ftl/benchmark/benchmark.py [0:0]
def run_benchmarks(self):
logging.getLogger().setLevel("NOTSET")
logging.basicConfig(
format='%(asctime)s.%(msecs)03d %(levelname)-8s %(message)s',
datefmt='%Y-%m-%d,%H:%M:%S')
build_times = []
for i in range(self._gen_files):
file_name = os.path.join(self._directory, 'app_file_%d' % i)
with open(file_name, 'wb') as fout:
fout.write(os.urandom(1024))
logging.info('Beginning building {0} images'.format(self._runtime))
for _ in range(self._iterations):
try:
start_time = time.time()
# For the binary
builder_path = 'ftl/{0}_builder.par'.format(self._runtime)
# For container builder
if not os.path.isfile(builder_path):
builder_path = 'bazel-bin/ftl/{0}_builder.par'.format(
self._runtime)
cmd = subprocess.Popen(
[
builder_path, '--base', self._base, '--name',
self._name, '--directory', self._directory,
'--no-cache'
],
stderr=subprocess.PIPE)
_, output = cmd.communicate()
build_time = round(time.time() - start_time, 2)
build_times.append((build_time, output))
except OSError:
raise OSError(