From c61f0219ffa81b86d4cf9bf43df4d8225062989b Mon Sep 17 00:00:00 2001 From: Erika Hunhoff Date: Thu, 3 Aug 2023 00:42:03 +0000 Subject: [PATCH 1/4] We want numa affinity even with only one core. Co-authored-by: Zack McKevitt --- kernel/run.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/run.py b/kernel/run.py index 6a11492f9..ff588750e 100644 --- a/kernel/run.py +++ b/kernel/run.py @@ -453,7 +453,7 @@ def query_host_numa(): num_host_numa_nodes = len(host_numa_nodes_list) if args.qemu_nodes and args.qemu_nodes > 0: for node in range(0, args.qemu_nodes): - if args.qemu_cores > 1: + if args.qemu_cores > 0: offset = args.qemu_node_offset if args.qemu_node_offset else 0 mem_per_node = args.qemu_memory / args.qemu_nodes prealloc = "on" if args.qemu_prealloc else "off" From dc19b64ca4fc9b11a507e0f495c1aa14bb51600b Mon Sep 17 00:00:00 2001 From: Erika Hunhoff Date: Thu, 3 Aug 2023 14:08:56 +0000 Subject: [PATCH 2/4] s10 shootdown ensure number of numa nodes does not exceed number of cores --- kernel/tests/s10_benchmarks.rs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/kernel/tests/s10_benchmarks.rs b/kernel/tests/s10_benchmarks.rs index 27beefcbf..f590ace52 100644 --- a/kernel/tests/s10_benchmarks.rs +++ b/kernel/tests/s10_benchmarks.rs @@ -223,12 +223,13 @@ fn s10_shootdown_simple() { cmdline = cmdline.memory(48 * 1024); } - if cfg!(feature = "smoke") && cores > 2 { - cmdline = cmdline.nodes(2); + let num_nodes = if cfg!(feature = "smoke") && cores > 2 { + core::cmp::min(cores, 2) } else { let max_numa_nodes = cmdline.machine.max_numa_nodes(); - cmdline = cmdline.nodes(max_numa_nodes); - } + core::cmp::min(cores, max_numa_nodes) + }; + cmdline = cmdline.nodes(num_nodes); let mut output = String::new(); let mut qemu_run = || -> Result { From 2231b54c8518feed4c98d5074c4871cb2a5bdda4 Mon Sep 17 00:00:00 2001 From: Erika Hunhoff Date: Thu, 3 Aug 2023 14:35:37 +0000 Subject: [PATCH 3/4] Add back in ignore statement that got accidentally deleted --- kernel/tests/s11_rackscale_benchmarks.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/kernel/tests/s11_rackscale_benchmarks.rs b/kernel/tests/s11_rackscale_benchmarks.rs index 1a9dc1241..f6a493d26 100644 --- a/kernel/tests/s11_rackscale_benchmarks.rs +++ b/kernel/tests/s11_rackscale_benchmarks.rs @@ -26,6 +26,7 @@ fn s11_rackscale_shmem_fxmark_benchmark() { } #[test] +#[ignore] #[cfg(not(feature = "baremetal"))] fn s11_rackscale_ethernet_fxmark_benchmark() { rackscale_fxmark_benchmark(RackscaleTransport::Ethernet); From cb4e2b57ce5469e32f3e5ee364f3f9dffe23011e Mon Sep 17 00:00:00 2001 From: Erika Hunhoff Date: Thu, 3 Aug 2023 16:30:04 +0000 Subject: [PATCH 4/4] Increase leveldb timeout --- kernel/tests/s11_rackscale_benchmarks.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/tests/s11_rackscale_benchmarks.rs b/kernel/tests/s11_rackscale_benchmarks.rs index f6a493d26..1e6cb37ad 100644 --- a/kernel/tests/s11_rackscale_benchmarks.rs +++ b/kernel/tests/s11_rackscale_benchmarks.rs @@ -432,7 +432,7 @@ fn s11_rackscale_shmem_leveldb_benchmark() { } fn rackscale_timeout_fn(num_cores: usize) -> u64 { - 180_000 + 500 * num_cores as u64 + 240_000 + 500 * num_cores as u64 } fn mem_fn(num_cores: usize, is_smoke: bool) -> usize {