This commit is contained in:
quackerd 2022-11-26 00:08:26 +01:00
parent 5e76edab89
commit a3b7b7db5d
2 changed files with 23 additions and 10 deletions

View File

@ -21,7 +21,7 @@ SSL_CERT = "/certs/server.crt"
SSL_PKEY = "/certs/server.key"
SERVER_PORT_START = 8050
MEMLOAD_BLKSZ = 1024*1024*64
RUNS=3
RUNS=2
MILAN_CPULIST : ic.CPUList = ic.CPUList([64, 64])
ICELAKE_CPULIST : ic.CPUList = ic.CPUList([48, 48])
@ -37,13 +37,13 @@ KTLS_ARGS = [(False, False, False),
# MEMLOADGEN
MEMLOADGEN_ARGS_ICELAKE = []
for i in range(0, 100, 10):
for i in range(0, 100, 15):
MEMLOADGEN_ARGS_ICELAKE.append([f"{ICELAKE_CPULIST.get_cpulist_by_offset(domain = 1, offset = 3, num = NUM_CORES, stride = 4)}.0.{i}",
f"{ICELAKE_CPULIST.get_cpulist_by_offset(domain = 0, offset = 3, num = NUM_CORES, stride = 4)}.1.{i}"])
MEMLOADGEN_ARGS_ICELAKE.append(None)
MEMLOADGEN_ARGS_MILAN = []
for i in range(0, 100, 10):
for i in range(0, 100, 15):
MEMLOADGEN_ARGS_MILAN.append([f"{MILAN_CPULIST.get_cpulist_by_offset(domain = 1, offset = 3, num = NUM_CORES, stride = 4)}.0.{i}",
f"{MILAN_CPULIST.get_cpulist_by_offset(domain = 0, offset = 3, num = NUM_CORES, stride = 4)}.1.{i}"])
MEMLOADGEN_ARGS_MILAN.append(None)
@ -58,8 +58,10 @@ ICELAKE_SERVER_AFFINITY_SOCKET1 = ICELAKE_CPULIST.get_cpulist_by_offset(domain =
MILAN_SERVER_AFFINITY_SOCKET0 = MILAN_CPULIST.get_cpulist_by_offset(domain = 0, offset = 1, num = NUM_CORES, stride = 4)
MILAN_SERVER_AFFINITY_SOCKET1= MILAN_CPULIST.get_cpulist_by_offset(domain = 1, offset = 1, num = NUM_CORES, stride = 4)
# file system
FILE_PATHS = ["/tmpfs/large_file_#p"]
#FILE_PATHS = ["/tmpfs/large_file_#p"]
FILE_PATHS = ["/tmpfs0/small_file_0_#p", "/tmpfs1/small_file_1_#p"]
# mmap
USE_MMAP = [False]
# args start
@ -85,6 +87,8 @@ arg_types.add_arg(*MEMLOADGEN_ARGS_ICELAKE)
arg_types.add_arg(*FILE_PATHS)
# ODIRECT
arg_types.add_arg(False)
# mmap
arg_types.add_arg(*USE_MMAP)
all_args.append(arg_types)
@ -109,6 +113,8 @@ arg_types.add_arg(*MEMLOADGEN_ARGS_ICELAKE)
arg_types.add_arg(*FILE_PATHS)
# ODIRECT
arg_types.add_arg(False)
# mmap
arg_types.add_arg(*USE_MMAP)
all_args.append(arg_types)
@ -133,6 +139,8 @@ arg_types.add_arg(*MEMLOADGEN_ARGS_MILAN)
arg_types.add_arg(*FILE_PATHS)
# ODIRECT
arg_types.add_arg(False)
# mmap
arg_types.add_arg(*USE_MMAP)
all_args.append(arg_types)
@ -157,6 +165,8 @@ arg_types.add_arg(*MEMLOADGEN_ARGS_MILAN)
arg_types.add_arg(*FILE_PATHS)
# ODIRECT
arg_types.add_arg(False)
# mmap
arg_types.add_arg(*USE_MMAP)
all_args.append(arg_types)
@ -283,6 +293,8 @@ def run_exp(conf : ic.Conf):
server_cmd += " --enable-ssl-ktls"
if conf.odirect:
server_cmd += " --use-odirect"
if conf.mmap:
server_cmd += " --use-mmap"
# start server
tc.log_print("Starting server proc " + str(cur_srv_proc) + "...")
tc.log_print(server_cmd)
@ -305,7 +317,7 @@ def run_exp(conf : ic.Conf):
" --connect-timeout 1000" + \
" -A " + eaff + \
" -t 25" + \
" -P 4" + \
" -P 8" + \
" -R" + \
" -N" + \
" -4" + \
@ -359,7 +371,7 @@ def run_exp(conf : ic.Conf):
tc.errthr_stop()
stop_all(conf, clients_only=True)
tc.log_print("Cooling down...")
time.sleep(5)
time.sleep(3)
stop_all(conf)
if success:
@ -452,4 +464,4 @@ def main():
tc.begin(conf.to_string()+f"_run.{i}")
run_exp(conf)
tc.end()
main()
main()

View File

@ -3,7 +3,7 @@ import os
import libpar as par
class Conf:
def __init__(self, server, clients, server_dat, clients_dat, clients_affinity, affinity, sendfile, tls, ktls, memloadgen, filepath, odirect):
def __init__(self, server, clients, server_dat, clients_dat, clients_affinity, affinity, sendfile, tls, ktls, memloadgen, filepath, odirect, mmap):
self.affinity = affinity
self.ktls = ktls
self.sendfile = sendfile
@ -16,6 +16,7 @@ class Conf:
self.server_dat = server_dat
self.clients_dat = clients_dat
self.clients_affinity = clients_affinity
self.mmap = mmap
def to_string(self, verbose = False):
ret = f"server.{self.server[0]}_affinity.{self.affinity}_sendfile.{self.sendfile}_tls.{self.tls}_ktls.{self.ktls}_"
@ -23,7 +24,7 @@ class Conf:
ret += f"memloadgen.{False if self.memloadgen == None else (self.memloadgen[0] + '+' + self.memloadgen[1])}"
else:
ret += f"memloadgen.{False if self.memloadgen == None else (self.memloadgen[0].split('.')[2])}"
ret += f"_filepath.{self.filepath.replace('/','-')}_odirect.{self.odirect}"
ret += f"_filepath.{self.filepath.replace('/','-').replace('_','-')}_odirect.{self.odirect}_mmap.{self.mmap}"
return ret
def to_string_graph(self):