diff --git a/frameworks/cardigan-grpc-tls/build.sh b/frameworks/cardigan-grpc-tls/build.sh
deleted file mode 100755
index e836994cc..000000000
--- a/frameworks/cardigan-grpc-tls/build.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/usr/bin/env bash
-# SPDX-License-Identifier: MPL-2.0
-set -euo pipefail
-
-SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd -P)"
-CONTEXT_DIR="$(cd "$SCRIPT_DIR/../cardigan" && pwd -P)"
-docker build -t httparena-cardigan-grpc-tls \
- --build-arg CARDIGAN_HTTPARENA_MODE=grpc-tls \
- "$CONTEXT_DIR"
diff --git a/frameworks/cardigan-grpc-tls/meta.json b/frameworks/cardigan-grpc-tls/meta.json
deleted file mode 100644
index d78be2869..000000000
--- a/frameworks/cardigan-grpc-tls/meta.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "display_name": "cardigan",
- "language": "Java",
- "type": "engine",
- "engine": "io_uring",
- "description": "Cardigan gRPC over HTTP/2 and TLS.",
- "repo": "https://github.com/phjeltman/cardigan",
- "enabled": true,
- "tests": [
- "unary-grpc-tls"
- ],
- "maintainers": [
- "phjeltman"
- ]
-}
diff --git a/frameworks/cardigan-grpc/build.sh b/frameworks/cardigan-grpc/build.sh
deleted file mode 100755
index 7e8fcda62..000000000
--- a/frameworks/cardigan-grpc/build.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/usr/bin/env bash
-# SPDX-License-Identifier: MPL-2.0
-set -euo pipefail
-
-SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd -P)"
-CONTEXT_DIR="$(cd "$SCRIPT_DIR/../cardigan" && pwd -P)"
-docker build -t httparena-cardigan-grpc \
- --build-arg CARDIGAN_HTTPARENA_MODE=grpc \
- "$CONTEXT_DIR"
diff --git a/frameworks/cardigan-grpc/meta.json b/frameworks/cardigan-grpc/meta.json
deleted file mode 100644
index 6f06e1d9d..000000000
--- a/frameworks/cardigan-grpc/meta.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "display_name": "cardigan",
- "language": "Java",
- "type": "engine",
- "engine": "io_uring",
- "description": "Cardigan gRPC over cleartext HTTP/2 prior knowledge.",
- "repo": "https://github.com/phjeltman/cardigan",
- "enabled": true,
- "tests": [
- "unary-grpc"
- ],
- "maintainers": [
- "phjeltman"
- ]
-}
diff --git a/frameworks/cardigan-h2/build.sh b/frameworks/cardigan-h2/build.sh
deleted file mode 100755
index c6316309c..000000000
--- a/frameworks/cardigan-h2/build.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/usr/bin/env bash
-# SPDX-License-Identifier: MPL-2.0
-set -euo pipefail
-
-SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd -P)"
-CONTEXT_DIR="$(cd "$SCRIPT_DIR/../cardigan" && pwd -P)"
-docker build -t httparena-cardigan-h2 \
- --build-arg CARDIGAN_HTTPARENA_MODE=h2 \
- "$CONTEXT_DIR"
diff --git a/frameworks/cardigan-h2/meta.json b/frameworks/cardigan-h2/meta.json
deleted file mode 100644
index 35e4bd36a..000000000
--- a/frameworks/cardigan-h2/meta.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "display_name": "cardigan",
- "language": "Java",
- "type": "engine",
- "engine": "io_uring",
- "description": "Cardigan HTTP/2 over TLS.",
- "repo": "https://github.com/phjeltman/cardigan",
- "enabled": true,
- "tests": [
- "baseline-h2",
- "static-h2"
- ],
- "maintainers": [
- "phjeltman"
- ]
-}
diff --git a/frameworks/cardigan-h2c/build.sh b/frameworks/cardigan-h2c/build.sh
deleted file mode 100755
index 2fc95d435..000000000
--- a/frameworks/cardigan-h2c/build.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/usr/bin/env bash
-# SPDX-License-Identifier: MPL-2.0
-set -euo pipefail
-
-SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd -P)"
-CONTEXT_DIR="$(cd "$SCRIPT_DIR/../cardigan" && pwd -P)"
-docker build -t httparena-cardigan-h2c \
- --build-arg CARDIGAN_HTTPARENA_MODE=h2c \
- "$CONTEXT_DIR"
diff --git a/frameworks/cardigan-h2c/meta.json b/frameworks/cardigan-h2c/meta.json
deleted file mode 100644
index c7a4d6624..000000000
--- a/frameworks/cardigan-h2c/meta.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "display_name": "cardigan",
- "language": "Java",
- "type": "engine",
- "engine": "io_uring",
- "description": "Cardigan HTTP/2 over cleartext prior knowledge.",
- "repo": "https://github.com/phjeltman/cardigan",
- "enabled": true,
- "tests": [
- "baseline-h2c"
- ],
- "maintainers": [
- "phjeltman"
- ]
-}
diff --git a/frameworks/cardigan-json-tls/build.sh b/frameworks/cardigan-json-tls/build.sh
deleted file mode 100755
index 20dd25062..000000000
--- a/frameworks/cardigan-json-tls/build.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/usr/bin/env bash
-# SPDX-License-Identifier: MPL-2.0
-set -euo pipefail
-
-SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd -P)"
-CONTEXT_DIR="$(cd "$SCRIPT_DIR/../cardigan" && pwd -P)"
-docker build -t httparena-cardigan-json-tls \
- --build-arg CARDIGAN_HTTPARENA_MODE=json-tls \
- "$CONTEXT_DIR"
diff --git a/frameworks/cardigan-json-tls/meta.json b/frameworks/cardigan-json-tls/meta.json
deleted file mode 100644
index 78e1ac722..000000000
--- a/frameworks/cardigan-json-tls/meta.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "display_name": "cardigan",
- "language": "Java",
- "type": "engine",
- "engine": "io_uring",
- "description": "Cardigan HTTP/1.1 over TLS.",
- "repo": "https://github.com/phjeltman/cardigan",
- "enabled": true,
- "tests": [
- "json-tls"
- ],
- "maintainers": [
- "phjeltman"
- ]
-}
diff --git a/frameworks/cardigan/Dockerfile b/frameworks/cardigan/Dockerfile
index 8b286def2..d03d6fdd5 100644
--- a/frameworks/cardigan/Dockerfile
+++ b/frameworks/cardigan/Dockerfile
@@ -14,9 +14,6 @@ RUN apt-get update \
&& apt-get install -y --no-install-recommends libssl3 \
&& rm -rf /var/lib/apt/lists/*
-ARG CARDIGAN_HTTPARENA_MODE=h1
-ENV CARDIGAN_HTTPARENA_MODE=${CARDIGAN_HTTPARENA_MODE}
-
WORKDIR /app
COPY --from=build /src/target/cardigan-httparena.jar ./cardigan-httparena.jar
COPY --from=build /deps ./lib
diff --git a/frameworks/cardigan/build.sh b/frameworks/cardigan/build.sh
index c9968b8ca..081d7180d 100755
--- a/frameworks/cardigan/build.sh
+++ b/frameworks/cardigan/build.sh
@@ -3,6 +3,4 @@
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd -P)"
-docker build -t httparena-cardigan \
- --build-arg CARDIGAN_HTTPARENA_MODE=h1 \
- "$SCRIPT_DIR"
+docker build -t httparena-cardigan "$SCRIPT_DIR"
diff --git a/frameworks/cardigan/meta.json b/frameworks/cardigan/meta.json
index 93f63d853..b5f1173c8 100644
--- a/frameworks/cardigan/meta.json
+++ b/frameworks/cardigan/meta.json
@@ -10,7 +10,13 @@
"baseline",
"latency-1m", "latency-10k",
"pipelined",
- "limited-conn"
+ "limited-conn",
+ "json-tls",
+ "baseline-h2",
+ "static-h2",
+ "baseline-h2c",
+ "unary-grpc",
+ "unary-grpc-tls"
],
"maintainers": [
"phjeltman"
diff --git a/frameworks/cardigan/pom.xml b/frameworks/cardigan/pom.xml
index b46ae7ad0..94412a4aa 100644
--- a/frameworks/cardigan/pom.xml
+++ b/frameworks/cardigan/pom.xml
@@ -14,7 +14,7 @@
26
UTF-8
true
- 0.1.0-alpha.3
+ 0.1.0-alpha.5
5.11.0
diff --git a/frameworks/cardigan/src/main/java/dev/cardigan/httparena/HttpArenaController.java b/frameworks/cardigan/src/main/java/dev/cardigan/httparena/HttpArenaController.java
index 02b954308..09f4eaa6c 100644
--- a/frameworks/cardigan/src/main/java/dev/cardigan/httparena/HttpArenaController.java
+++ b/frameworks/cardigan/src/main/java/dev/cardigan/httparena/HttpArenaController.java
@@ -18,7 +18,7 @@ public final class HttpArenaController {
public Response baseline11(
@QueryParam("a") int a,
@QueryParam("b") int b) {
- return Response.text(Long.toString((long) a + b));
+ return Response.text((long) a + b);
}
@Post("/baseline11")
@@ -31,7 +31,7 @@ public Response baseline11(
MemorySegment scratch = arena.allocate(64);
sum += readLong(body, scratch);
}
- return Response.text(Long.toString(sum));
+ return Response.text(sum);
}
@Get("/pipeline")
@@ -43,7 +43,7 @@ public Response pipeline() {
public Response baseline2(
@QueryParam("a") int a,
@QueryParam("b") int b) {
- return Response.text(Long.toString((long) a + b));
+ return Response.text((long) a + b);
}
private static long readLong(RequestBody body, MemorySegment scratch) {
diff --git a/frameworks/cardigan/src/main/java/dev/cardigan/httparena/HttpArenaDataset.java b/frameworks/cardigan/src/main/java/dev/cardigan/httparena/HttpArenaDataset.java
index 444ab1c46..e30a73729 100644
--- a/frameworks/cardigan/src/main/java/dev/cardigan/httparena/HttpArenaDataset.java
+++ b/frameworks/cardigan/src/main/java/dev/cardigan/httparena/HttpArenaDataset.java
@@ -48,7 +48,7 @@ static HttpArenaDataset load(Path path) throws IOException {
throw new IllegalArgumentException(
"Dataset item is not a JSON object");
}
- prefixes[index] = Arrays.copyOfRange(
+ prefixes[index] = compactJson(
source, range[0], close);
Value item = Serdes.parseOnDemand(
MemorySegment.ofArray(source),
@@ -159,6 +159,36 @@ private static List itemRanges(byte[] source) {
return ranges;
}
+ private static byte[] compactJson(byte[] source, int start, int end) {
+ byte[] compacted = new byte[end - start];
+ int output = 0;
+ boolean string = false;
+ boolean escaped = false;
+ for (int index = start; index < end; index++) {
+ byte current = source[index];
+ if (string) {
+ compacted[output++] = current;
+ if (escaped) {
+ escaped = false;
+ } else if (current == '\\') {
+ escaped = true;
+ } else if (current == '"') {
+ string = false;
+ }
+ } else if (current == '"') {
+ string = true;
+ compacted[output++] = current;
+ } else if (!isWhitespace(current)) {
+ compacted[output++] = current;
+ }
+ }
+ if (string) {
+ throw new IllegalArgumentException("Malformed JSON dataset");
+ }
+ return output == compacted.length
+ ? compacted : Arrays.copyOf(compacted, output);
+ }
+
private static int copy(byte[] source, long target, int offset) {
RawSegment.copy(source, 0, target + offset, source.length);
return offset + source.length;
diff --git a/frameworks/cardigan/src/main/java/dev/cardigan/httparena/HttpArenaMain.java b/frameworks/cardigan/src/main/java/dev/cardigan/httparena/HttpArenaMain.java
index b94996412..24f0d6d6b 100644
--- a/frameworks/cardigan/src/main/java/dev/cardigan/httparena/HttpArenaMain.java
+++ b/frameworks/cardigan/src/main/java/dev/cardigan/httparena/HttpArenaMain.java
@@ -3,21 +3,18 @@
package dev.cardigan.httparena;
import dev.cardigan.core.CardiganServer;
+import dev.cardigan.core.CardiganRuntime;
import dev.cardigan.core.ProtocolMode;
import dev.cardigan.tls.TlsConfig;
import java.nio.file.Path;
-/** Dedicated launcher for the independently scored HttpArena transports. */
+/** Launches Cardigan's HttpArena listeners in one process. */
public final class HttpArenaMain {
private HttpArenaMain() {
}
public static void main(String[] args) throws Exception {
- String mode = args.length == 0
- ? System.getenv().getOrDefault(
- "CARDIGAN_HTTPARENA_MODE", "h1")
- : args[0];
int threads = Integer.parseInt(
System.getenv().getOrDefault(
"CARDIGAN_THREADS",
@@ -29,87 +26,78 @@ public static void main(String[] args) throws Exception {
System.setProperty(
"jdk.virtualThreadScheduler.maxPoolSize",
Integer.toString(threads));
- if (mode.equals("h1")) {
- // Cardigan owns transport I/O for these profiles. One JDK read
- // poller keeps handler socket I/O ready without adding a
- // sub-poller for every server CPU.
- System.setProperty("jdk.readPollers", "1");
- }
+ // Cardigan owns transport I/O for these profiles. One JDK read poller
+ // keeps handler socket I/O ready for application-side socket clients.
+ System.setProperty("jdk.readPollers", "1");
- int port = switch (mode) {
- case "h1", "grpc" -> 8080;
- case "json-tls" -> 8081;
- case "h2c" -> 8082;
- case "h2", "grpc-tls" -> 8443;
- default -> throw new IllegalArgumentException(
- "Unknown HttpArena mode: " + mode);
- };
Path certificate = environmentPath(
"CARDIGAN_CERTIFICATE", "/certs/server.crt");
Path privateKey = environmentPath(
"CARDIGAN_PRIVATE_KEY", "/certs/server.key");
- boolean tlsMode = mode.equals("json-tls")
- || mode.equals("h2") || mode.equals("grpc-tls");
- TlsConfig tls = tlsMode
- ? new TlsConfig(certificate, privateKey)
- : null;
- ProtocolMode protocol = switch (mode) {
- case "h2", "h2c", "grpc", "grpc-tls" ->
- ProtocolMode.HTTP2_ONLY;
- case "h1", "json-tls" -> ProtocolMode.HTTP1_ONLY;
- default -> throw new AssertionError(mode);
- };
-
- CardiganServer.Builder builder = CardiganServer.builder()
- .port(port)
- .eventLoops(threads)
- .protocol(protocol)
- .routes(new HttpArenaController());
- if (tls == null) {
- builder.plaintext();
- } else {
- builder.tls(tls);
- }
- if (mode.equals("json-tls")) {
- builder.routes(new HttpArenaJsonController(
- HttpArenaDataset.load(environmentPath(
- "CARDIGAN_DATASET", "/data/dataset.json"))));
- } else if (mode.equals("h2")) {
- builder.routes(new HttpArenaStaticController(
- environmentPath(
- "CARDIGAN_STATIC_DIR", "/data/static")));
- } else if (mode.equals("grpc") || mode.equals("grpc-tls")) {
- builder.routes(new HttpArenaGrpcController());
- }
+ TlsConfig tls = new TlsConfig(certificate, privateKey);
+ Path staticDirectory = environmentPath(
+ "CARDIGAN_STATIC_DIR", "/data/static");
+ HttpArenaDataset dataset = HttpArenaDataset.load(environmentPath(
+ "CARDIGAN_DATASET", "/data/dataset.json"));
- CardiganServer plaintext = mode.equals("json-tls")
- ? CardiganServer.builder()
+ try (CardiganRuntime runtime = CardiganRuntime.builder()
+ .eventLoops(threads)
+ .build()) {
+ CardiganServer plaintext = CardiganServer.builder()
.port(8080)
- .eventLoops(1)
+ .runtime(runtime)
+ .protocol(ProtocolMode.HTTP1_AND_HTTP2)
+ .plaintext()
+ .routes(
+ new HttpArenaController(),
+ new HttpArenaGrpcController())
+ .build();
+ CardiganServer jsonTls = CardiganServer.builder()
+ .port(8081)
+ .runtime(runtime)
.protocol(ProtocolMode.HTTP1_ONLY)
+ .tls(tls)
+ .routes(
+ new HttpArenaController(),
+ new HttpArenaJsonController(dataset))
+ .build();
+ CardiganServer h2c = CardiganServer.builder()
+ .port(8082)
+ .runtime(runtime)
+ .protocol(ProtocolMode.HTTP2_ONLY)
.plaintext()
.routes(new HttpArenaController())
- .build()
- : null;
- try (plaintext; CardiganServer server = builder.build()) {
- Runtime.getRuntime().addShutdownHook(
- Thread.ofPlatform()
- .name("cardigan-httparena-shutdown")
- .unstarted(() -> {
- server.close();
- if (plaintext != null) plaintext.close();
- }));
- server.start();
- System.out.println(
- "Cardigan HttpArena mode " + mode
- + " is listening on " + port);
- if (plaintext != null) {
- plaintext.start();
+ .build();
+ CardiganServer h2Tls = CardiganServer.builder()
+ .port(8443)
+ .runtime(runtime)
+ .protocol(ProtocolMode.HTTP2_ONLY)
+ .tls(tls)
+ .routes(
+ new HttpArenaController(),
+ new HttpArenaStaticController(staticDirectory),
+ new HttpArenaGrpcController())
+ .build();
+
+ CardiganServer[] servers = {plaintext, jsonTls, h2c, h2Tls};
+ try (plaintext; jsonTls; h2c; h2Tls) {
+ Runtime.getRuntime().addShutdownHook(
+ Thread.ofPlatform()
+ .name("cardigan-httparena-shutdown")
+ .unstarted(() -> {
+ for (int i = servers.length - 1; i >= 0; i--) {
+ servers[i].close();
+ }
+ runtime.close();
+ }));
+ for (CardiganServer server : servers) {
+ server.start();
+ }
System.out.println(
- "Cardigan HttpArena baseline readiness is listening"
- + " on 8080");
+ "Cardigan HttpArena listeners are ready on"
+ + " 8080, 8081, 8082, and 8443");
+ Thread.currentThread().join();
}
- Thread.currentThread().join();
}
}
diff --git a/site/data/frameworks.json b/site/data/frameworks.json
index 87140146a..89b31a521 100644
--- a/site/data/frameworks.json
+++ b/site/data/frameworks.json
@@ -267,44 +267,7 @@
"description": "Java HTTP engine built on io_uring, Panama FFI, virtual threads, and thread-per-core event loops.",
"repo": "https://github.com/phjeltman/cardigan",
"type": "engine",
- "engine": "io_uring",
- "variants": [
- {
- "dir": "cardigan-grpc",
- "description": "Cardigan gRPC over cleartext HTTP/2 prior knowledge.",
- "repo": "https://github.com/phjeltman/cardigan",
- "type": "engine",
- "engine": "io_uring"
- },
- {
- "dir": "cardigan-grpc-tls",
- "description": "Cardigan gRPC over HTTP/2 and TLS.",
- "repo": "https://github.com/phjeltman/cardigan",
- "type": "engine",
- "engine": "io_uring"
- },
- {
- "dir": "cardigan-h2",
- "description": "Cardigan HTTP/2 over TLS.",
- "repo": "https://github.com/phjeltman/cardigan",
- "type": "engine",
- "engine": "io_uring"
- },
- {
- "dir": "cardigan-h2c",
- "description": "Cardigan HTTP/2 over cleartext prior knowledge.",
- "repo": "https://github.com/phjeltman/cardigan",
- "type": "engine",
- "engine": "io_uring"
- },
- {
- "dir": "cardigan-json-tls",
- "description": "Cardigan HTTP/1.1 over TLS.",
- "repo": "https://github.com/phjeltman/cardigan",
- "type": "engine",
- "engine": "io_uring"
- }
- ]
+ "engine": "io_uring"
},
"carter": {
"dir": "carter",
diff --git a/site/data/results/cardigan.json b/site/data/results/cardigan.json
index 331e5b9c7..b8c4bd704 100644
--- a/site/data/results/cardigan.json
+++ b/site/data/results/cardigan.json
@@ -4,19 +4,19 @@
"baseline-4096": {
"framework": "cardigan",
"language": "Java",
- "rps": 3746022,
- "avg_latency": "1.09ms",
- "p99_latency": "2.79ms",
- "cpu": "6424.7%",
- "memory": "5.5GiB",
+ "rps": 3947346,
+ "avg_latency": "1.04ms",
+ "p99_latency": "1.56ms",
+ "cpu": "6157.2%",
+ "memory": "1.2GiB",
"connections": 4096,
"threads": 64,
"duration": "5s",
"pipeline": 1,
- "bandwidth": "321.42MB/s",
- "input_bw": "289.37MB/s",
+ "bandwidth": "248.30MB/s",
+ "input_bw": "304.92MB/s",
"reconnects": 0,
- "status_2xx": 18730111,
+ "status_2xx": 19736732,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
@@ -24,18 +24,18 @@
"baseline-h2-1024": {
"framework": "cardigan",
"language": "Java",
- "rps": 13880907,
- "avg_latency": "3.44ms",
- "p99_latency": "81.81ms",
- "cpu": "1378.4%",
- "memory": "5.8GiB",
+ "rps": 14137905,
+ "avg_latency": "3.46ms",
+ "p99_latency": "81.28ms",
+ "cpu": "1613.7%",
+ "memory": "2.1GiB",
"connections": 1024,
"threads": 64,
"duration": "5s",
"pipeline": 1,
- "bandwidth": "496.66MB/s",
+ "bandwidth": "504.86MB/s",
"reconnects": 0,
- "status_2xx": 70376200,
+ "status_2xx": 71537800,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
@@ -43,18 +43,18 @@
"baseline-h2-256": {
"framework": "cardigan",
"language": "Java",
- "rps": 14563167,
- "avg_latency": "1.17ms",
- "p99_latency": "53.00ms",
- "cpu": "1477.1%",
- "memory": "5.0GiB",
+ "rps": 14467569,
+ "avg_latency": "1.05ms",
+ "p99_latency": "51.62ms",
+ "cpu": "1473.8%",
+ "memory": "1.2GiB",
"connections": 256,
"threads": 64,
"duration": "5s",
"pipeline": 1,
- "bandwidth": "515.93MB/s",
+ "bandwidth": "512.55MB/s",
"reconnects": 0,
- "status_2xx": 73107100,
+ "status_2xx": 72627200,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
@@ -62,18 +62,18 @@
"baseline-h2c-1024": {
"framework": "cardigan",
"language": "Java",
- "rps": 15036099,
- "avg_latency": "3.37ms",
- "p99_latency": "19.65ms",
- "cpu": "1345.3%",
- "memory": "5.6GiB",
+ "rps": 14978636,
+ "avg_latency": "3.27ms",
+ "p99_latency": "24.32ms",
+ "cpu": "1454.2%",
+ "memory": "2.5GiB",
"connections": 1024,
"threads": 64,
"duration": "5s",
"pipeline": 1,
- "bandwidth": "535.87MB/s",
+ "bandwidth": "534.88MB/s",
"reconnects": 0,
- "status_2xx": 75932300,
+ "status_2xx": 75791900,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
@@ -81,18 +81,18 @@
"baseline-h2c-256": {
"framework": "cardigan",
"language": "Java",
- "rps": 15171113,
- "avg_latency": "918us",
- "p99_latency": "14.22ms",
- "cpu": "1381.8%",
- "memory": "5.5GiB",
+ "rps": 15144652,
+ "avg_latency": "854us",
+ "p99_latency": "12.78ms",
+ "cpu": "1344.8%",
+ "memory": "1.2GiB",
"connections": 256,
"threads": 64,
"duration": "5s",
"pipeline": 1,
- "bandwidth": "538.54MB/s",
+ "bandwidth": "537.60MB/s",
"reconnects": 0,
- "status_2xx": 76310700,
+ "status_2xx": 76177600,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
@@ -100,18 +100,18 @@
"baseline-h2c-4096": {
"framework": "cardigan",
"language": "Java",
- "rps": 13930862,
- "avg_latency": "17.04ms",
- "p99_latency": "127.51ms",
- "cpu": "1287.7%",
- "memory": "5.8GiB",
+ "rps": 13644450,
+ "avg_latency": "15.42ms",
+ "p99_latency": "115.38ms",
+ "cpu": "1241.8%",
+ "memory": "5.9GiB",
"connections": 4096,
"threads": 64,
"duration": "5s",
"pipeline": 1,
- "bandwidth": "501.41MB/s",
+ "bandwidth": "491.11MB/s",
"reconnects": 0,
- "status_2xx": 71047397,
+ "status_2xx": 69586698,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
@@ -119,18 +119,18 @@
"json-tls-4096": {
"framework": "cardigan",
"language": "Java",
- "rps": 1568164,
- "avg_latency": "2.53ms",
- "p99_latency": "164.90ms",
- "cpu": "6328.1%",
- "memory": "5.7GiB",
+ "rps": 1703461,
+ "avg_latency": "2.36ms",
+ "p99_latency": "205.72ms",
+ "cpu": "6156.2%",
+ "memory": "1.7GiB",
"connections": 4096,
"threads": 64,
"duration": "5s",
"pipeline": 1,
- "bandwidth": "8.13GB",
+ "bandwidth": "5.70GB",
"reconnects": 0,
- "status_2xx": 7999020,
+ "status_2xx": 8686858,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
@@ -138,67 +138,67 @@
"latency-10k-1024": {
"framework": "cardigan",
"language": "Java",
- "rps": 9981,
- "avg_latency": "81.9us",
- "p99_latency": "108.0us",
- "cpu": "29.3%",
- "memory": "4.9GiB",
+ "rps": 9980,
+ "avg_latency": "86.1us",
+ "p99_latency": "110.0us",
+ "cpu": "30.2%",
+ "memory": "854MiB",
"connections": 1024,
"threads": 64,
"duration": "20s",
"pipeline": 1,
- "bandwidth": "0.89MB/s",
+ "bandwidth": "0.65MB/s",
"reconnects": 0,
- "status_2xx": 199645,
+ "status_2xx": 199628,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0,
- "cpu_usec": 5980553,
- "cpu_per_req_us": 29.9559,
+ "cpu_usec": 6332140,
+ "cpu_per_req_us": 31.7197,
"target_rate": 10000,
- "rate_ratio": 0.9981,
- "p99_9_latency": "3121.0us"
+ "rate_ratio": 0.998,
+ "p99_9_latency": "531.0us"
},
"latency-1m-1024": {
"framework": "cardigan",
"language": "Java",
- "rps": 998132,
- "avg_latency": "93.7us",
- "p99_latency": "180.0us",
- "cpu": "2348.7%",
- "memory": "4.8GiB",
+ "rps": 998087,
+ "avg_latency": "90.8us",
+ "p99_latency": "164.0us",
+ "cpu": "2236.3%",
+ "memory": "900MiB",
"connections": 1024,
"threads": 64,
"duration": "20s",
"pipeline": 1,
- "bandwidth": "88.83MB/s",
+ "bandwidth": "64.88MB/s",
"reconnects": 0,
- "status_2xx": 19966262,
+ "status_2xx": 19965369,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0,
- "cpu_usec": 426215328,
- "cpu_per_req_us": 21.3468,
+ "cpu_usec": 408117456,
+ "cpu_per_req_us": 20.4413,
"target_rate": 1000000,
"rate_ratio": 0.9981,
- "p99_9_latency": "2533.0us"
+ "p99_9_latency": "2955.0us"
},
"limited-conn-4096": {
"framework": "cardigan",
"language": "Java",
- "rps": 2641220,
- "avg_latency": "1.42ms",
- "p99_latency": "2.45ms",
- "cpu": "6208.9%",
- "memory": "5.6GiB",
+ "rps": 2613832,
+ "avg_latency": "1.43ms",
+ "p99_latency": "2.95ms",
+ "cpu": "5751.9%",
+ "memory": "1.6GiB",
"connections": 4096,
"threads": 64,
"duration": "5s",
"pipeline": 1,
- "bandwidth": "226.60MB/s",
- "input_bw": "204.03MB/s",
- "reconnects": 1320909,
- "status_2xx": 13206101,
+ "bandwidth": "164.45MB/s",
+ "input_bw": "201.91MB/s",
+ "reconnects": 1307188,
+ "status_2xx": 13069164,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
@@ -206,18 +206,18 @@
"pipelined-4096": {
"framework": "cardigan",
"language": "Java",
- "rps": 44616992,
- "avg_latency": "1.47ms",
- "p99_latency": "2.27ms",
- "cpu": "6490.1%",
- "memory": "5.5GiB",
+ "rps": 45708428,
+ "avg_latency": "1.43ms",
+ "p99_latency": "2.73ms",
+ "cpu": "6479.0%",
+ "memory": "1.5GiB",
"connections": 4096,
"threads": 64,
"duration": "5s",
"pipeline": 16,
- "bandwidth": "3.74GB/s",
+ "bandwidth": "2.81GB/s",
"reconnects": 0,
- "status_2xx": 223084960,
+ "status_2xx": 228542144,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
@@ -225,18 +225,18 @@
"static-h2-1024": {
"framework": "cardigan",
"language": "Java",
- "rps": 733221,
- "avg_latency": "38.47ms",
- "p99_latency": "1.56s",
- "cpu": "2592.5%",
- "memory": "6.0GiB",
+ "rps": 1042076,
+ "avg_latency": "30.22ms",
+ "p99_latency": "781.38ms",
+ "cpu": "6132.8%",
+ "memory": "2.8GiB",
"connections": 1024,
"threads": 64,
"duration": "5s",
"pipeline": 1,
- "bandwidth": "11.30GB/s",
+ "bandwidth": "16.06GB/s",
"reconnects": 0,
- "status_2xx": 3710100,
+ "status_2xx": 5272907,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
@@ -244,18 +244,18 @@
"static-h2-256": {
"framework": "cardigan",
"language": "Java",
- "rps": 790555,
- "avg_latency": "10.14ms",
- "p99_latency": "265.12ms",
- "cpu": "2996.9%",
- "memory": "5.8GiB",
+ "rps": 1178212,
+ "avg_latency": "7.45ms",
+ "p99_latency": "33.72ms",
+ "cpu": "6073.4%",
+ "memory": "1.5GiB",
"connections": 256,
"threads": 64,
"duration": "5s",
"pipeline": 1,
- "bandwidth": "12.11GB/s",
+ "bandwidth": "18.05GB/s",
"reconnects": 0,
- "status_2xx": 3976494,
+ "status_2xx": 5926407,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
@@ -263,18 +263,18 @@
"unary-grpc-1024": {
"framework": "cardigan",
"language": "Java",
- "rps": 7040612,
- "avg_latency": "8.08ms",
- "p99_latency": "69.28ms",
- "cpu": "1560.1%",
- "memory": "6.1GiB",
+ "rps": 6900612,
+ "avg_latency": "8.77ms",
+ "p99_latency": "127.89ms",
+ "cpu": "1605.4%",
+ "memory": "3.4GiB",
"connections": 1024,
"threads": 64,
"duration": "5s",
"pipeline": 1,
- "bandwidth": "496.06MB/s",
+ "bandwidth": "486.20MB/s",
"reconnects": 0,
- "status_2xx": 35625500,
+ "status_2xx": 34917100,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
@@ -282,18 +282,18 @@
"unary-grpc-256": {
"framework": "cardigan",
"language": "Java",
- "rps": 7176354,
- "avg_latency": "2.26ms",
- "p99_latency": "40.30ms",
- "cpu": "1343.0%",
- "memory": "5.3GiB",
+ "rps": 7039343,
+ "avg_latency": "2.16ms",
+ "p99_latency": "20.32ms",
+ "cpu": "1390.5%",
+ "memory": "2.0GiB",
"connections": 256,
"threads": 64,
"duration": "5s",
"pipeline": 1,
- "bandwidth": "501.63MB/s",
+ "bandwidth": "493.03MB/s",
"reconnects": 0,
- "status_2xx": 36025300,
+ "status_2xx": 35407900,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
@@ -301,18 +301,18 @@
"unary-grpc-tls-1024": {
"framework": "cardigan",
"language": "Java",
- "rps": 6699743,
- "avg_latency": "8.03ms",
- "p99_latency": "87.13ms",
- "cpu": "1680.5%",
- "memory": "6.7GiB",
+ "rps": 6575246,
+ "avg_latency": "8.63ms",
+ "p99_latency": "99.81ms",
+ "cpu": "1756.7%",
+ "memory": "3.9GiB",
"connections": 1024,
"threads": 64,
"duration": "5s",
"pipeline": 1,
- "bandwidth": "472.05MB/s",
+ "bandwidth": "464.19MB/s",
"reconnects": 0,
- "status_2xx": 33900700,
+ "status_2xx": 33336500,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
@@ -320,18 +320,18 @@
"unary-grpc-tls-256": {
"framework": "cardigan",
"language": "Java",
- "rps": 6972380,
- "avg_latency": "2.15ms",
- "p99_latency": "28.07ms",
- "cpu": "1454.2%",
- "memory": "5.7GiB",
+ "rps": 6951550,
+ "avg_latency": "2.16ms",
+ "p99_latency": "23.64ms",
+ "cpu": "1535.9%",
+ "memory": "2.0GiB",
"connections": 256,
"threads": 64,
"duration": "5s",
"pipeline": 1,
- "bandwidth": "489.31MB/s",
+ "bandwidth": "486.88MB/s",
"reconnects": 0,
- "status_2xx": 35140800,
+ "status_2xx": 34966300,
"status_3xx": 0,
"status_4xx": 0,
"status_5xx": 0
diff --git a/site/static/logs/baseline-h2/1024/cardigan.log b/site/static/logs/baseline-h2/1024/cardigan.log
new file mode 100644
index 000000000..4021d0c11
--- /dev/null
+++ b/site/static/logs/baseline-h2/1024/cardigan.log
@@ -0,0 +1,368 @@
+WARNING: Using incubator modules: jdk.incubator.vector
+Pinned cardigan-loop-0 to Linux CPU 0
+Pinned cardigan-loop-1 to Linux CPU 1
+Pinned cardigan-loop-2 to Linux CPU 2
+Pinned cardigan-loop-3 to Linux CPU 3
+Pinned cardigan-loop-4 to Linux CPU 4
+Pinned cardigan-loop-5 to Linux CPU 5
+Pinned cardigan-loop-6 to Linux CPU 6
+Pinned cardigan-loop-7 to Linux CPU 7
+Pinned cardigan-loop-8 to Linux CPU 8
+Pinned cardigan-loop-9 to Linux CPU 9
+Pinned cardigan-loop-10 to Linux CPU 10
+Pinned cardigan-loop-11 to Linux CPU 11
+Pinned cardigan-loop-12 to Linux CPU 12
+Pinned cardigan-loop-13 to Linux CPU 13
+Pinned cardigan-loop-14 to Linux CPU 14
+Pinned cardigan-loop-15 to Linux CPU 15
+Pinned cardigan-loop-16 to Linux CPU 16
+Pinned cardigan-loop-17 to Linux CPU 17
+Pinned cardigan-loop-18 to Linux CPU 18
+Pinned cardigan-loop-19 to Linux CPU 19
+Pinned cardigan-loop-20 to Linux CPU 20
+Pinned cardigan-loop-21 to Linux CPU 21
+Pinned cardigan-loop-22 to Linux CPU 22
+Pinned cardigan-loop-23 to Linux CPU 23
+Pinned cardigan-loop-24 to Linux CPU 24
+Pinned cardigan-loop-25 to Linux CPU 25
+Pinned cardigan-loop-26 to Linux CPU 26
+Pinned cardigan-loop-27 to Linux CPU 27
+Pinned cardigan-loop-28 to Linux CPU 28
+Pinned cardigan-loop-29 to Linux CPU 29
+Pinned cardigan-loop-30 to Linux CPU 30
+Pinned cardigan-loop-31 to Linux CPU 31
+Pinned cardigan-loop-64 to Linux CPU 64
+Pinned cardigan-loop-65 to Linux CPU 65
+Pinned cardigan-loop-66 to Linux CPU 66
+Pinned cardigan-loop-67 to Linux CPU 67
+Pinned cardigan-loop-68 to Linux CPU 68
+Pinned cardigan-loop-69 to Linux CPU 69
+Pinned cardigan-loop-70 to Linux CPU 70
+Pinned cardigan-loop-71 to Linux CPU 71
+Pinned cardigan-loop-72 to Linux CPU 72
+Pinned cardigan-loop-73 to Linux CPU 73
+Pinned cardigan-loop-74 to Linux CPU 74
+Pinned cardigan-loop-75 to Linux CPU 75
+Pinned cardigan-loop-76 to Linux CPU 76
+Pinned cardigan-loop-77 to Linux CPU 77
+Pinned cardigan-loop-78 to Linux CPU 78
+Pinned cardigan-loop-79 to Linux CPU 79
+Pinned cardigan-loop-80 to Linux CPU 80
+Pinned cardigan-loop-81 to Linux CPU 81
+Pinned cardigan-loop-82 to Linux CPU 82
+Pinned cardigan-loop-83 to Linux CPU 83
+Pinned cardigan-loop-84 to Linux CPU 84
+Pinned cardigan-loop-85 to Linux CPU 85
+Pinned cardigan-loop-86 to Linux CPU 86
+Pinned cardigan-loop-87 to Linux CPU 87
+Pinned cardigan-loop-88 to Linux CPU 88
+Pinned cardigan-loop-89 to Linux CPU 89
+Pinned cardigan-loop-90 to Linux CPU 90
+Pinned cardigan-loop-91 to Linux CPU 91
+Pinned cardigan-loop-92 to Linux CPU 92
+Pinned cardigan-loop-93 to Linux CPU 93
+Pinned cardigan-loop-94 to Linux CPU 94
+Pinned cardigan-loop-95 to Linux CPU 95
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 28 listening on socket FD 178
+Loop 21 listening on socket FD 166
+Loop 90 listening on socket FD 152
+Loop 29 listening on socket FD 171
+Loop 88 listening on socket FD 194
+Loop 7 listening on socket FD 164
+Loop 71 listening on socket FD 143
+Loop 94 listening on socket FD 154
+Loop 80 listening on socket FD 181
+Loop 82 listening on socket FD 172
+Loop 64 listening on socket FD 170
+Loop 26 listening on socket FD 179
+Loop 70 listening on socket FD 174
+Loop 17 listening on socket FD 142
+Loop 76 listening on socket FD 158
+Loop 4 listening on socket FD 195
+Loop 2 listening on socket FD 193
+Loop 27 listening on socket FD 141
+Loop 23 listening on socket FD 176
+Loop 6 listening on socket FD 155
+Loop 14 listening on socket FD 139
+Loop 65 listening on socket FD 182
+Loop 95 listening on socket FD 198
+Loop 31 listening on socket FD 183
+Loop 8 listening on socket FD 201
+Loop 13 listening on socket FD 186
+Loop 68 listening on socket FD 200
+Loop 18 listening on socket FD 148
+Loop 83 listening on socket FD 175
+Loop 19 listening on socket FD 196
+Loop 22 listening on socket FD 147
+Loop 12 listening on socket FD 169
+Loop 1 listening on socket FD 149
+Loop 74 listening on socket FD 167
+Loop 73 listening on socket FD 190
+Loop 84 listening on socket FD 184
+Loop 87 listening on socket FD 146
+Loop 85 listening on socket FD 185
+Loop 77 listening on socket FD 159
+Loop 15 listening on socket FD 157
+Loop 10 listening on socket FD 168
+Loop 92 listening on socket FD 165
+Loop 93 listening on socket FD 187
+Loop 91 listening on socket FD 156
+Loop 24 listening on socket FD 145
+Loop 81 listening on socket FD 191
+Loop 72 listening on socket FD 192
+Loop 67 listening on socket FD 153
+Loop 78 listening on socket FD 161
+Loop 11 listening on socket FD 162
+Loop 5 listening on socket FD 188
+Loop 69 listening on socket FD 150
+Loop 66 listening on socket FD 177
+Loop 86 listening on socket FD 163
+Loop 89 listening on socket FD 199
+Loop 79 listening on socket FD 197
+Loop 25 listening on socket FD 180
+Loop 9 listening on socket FD 160
+Loop 16 listening on socket FD 138
+Loop 0 listening on socket FD 151
+Loop 30 listening on socket FD 140
+Loop 20 listening on socket FD 144
+Loop 75 listening on socket FD 173
+Loop 3 listening on socket FD 189
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 0 listening on socket FD 202
+Loop 1 listening on socket FD 203
+Loop 4 listening on socket FD 206
+Loop 7 listening on socket FD 209
+Loop 2 listening on socket FD 204
+Loop 3 listening on socket FD 205
+Loop 6 listening on socket FD 207
+Loop 5 listening on socket FD 208
+Loop 11 listening on socket FD 213
+Loop 19 listening on socket FD 217
+Loop 17 listening on socket FD 216
+Loop 16 listening on socket FD 215
+Loop 10 listening on socket FD 212
+Loop 20 listening on socket FD 219
+Loop 9 listening on socket FD 210
+Loop 25 listening on socket FD 223
+Loop 8 listening on socket FD 211
+Loop 26 listening on socket FD 226
+Loop 30 listening on socket FD 227
+Loop 64 listening on socket FD 229
+Loop 31 listening on socket FD 230
+Loop 69 listening on socket FD 233
+Loop 18 listening on socket FD 218
+Loop 12 listening on socket FD 214
+Loop 21 listening on socket FD 220
+Loop 22 listening on socket FD 221
+Loop 24 listening on socket FD 224
+Loop 23 listening on socket FD 222
+Loop 27 listening on socket FD 225
+Loop 68 listening on socket FD 228
+Loop 66 listening on socket FD 231
+Loop 71 listening on socket FD 232
+Loop 70 listening on socket FD 234
+Loop 67 listening on socket FD 236
+Loop 74 listening on socket FD 237
+Loop 13 listening on socket FD 235
+Loop 75 listening on socket FD 239
+Loop 72 listening on socket FD 238
+Loop 81 listening on socket FD 242
+Loop 73 listening on socket FD 241
+Loop 77 listening on socket FD 243
+Loop 79 listening on socket FD 240
+Loop 80 listening on socket FD 245
+Loop 78 listening on socket FD 244
+Loop 85 listening on socket FD 251
+Loop 86 listening on socket FD 252
+Loop 91 listening on socket FD 253
+Loop 90 listening on socket FD 255
+Loop 88 listening on socket FD 250
+Loop 82 listening on socket FD 248
+Loop 89 listening on socket FD 254
+Loop 83 listening on socket FD 246
+Loop 84 listening on socket FD 247
+Loop 95 listening on socket FD 260
+Loop 87 listening on socket FD 249
+Loop 28 listening on socket FD 267
+Loop 92 listening on socket FD 266
+Loop 15 listening on socket FD 265
+Loop 14 listening on socket FD 268
+Loop 65 listening on socket FD 271
+Loop 76 listening on socket FD 273
+Loop 93 listening on socket FD 277
+Loop 29 listening on socket FD 278
+Loop 94 listening on socket FD 257
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 4 listening on socket FD 259
+Loop 0 listening on socket FD 258
+Loop 3 listening on socket FD 263
+Loop 7 listening on socket FD 264
+Loop 14 listening on socket FD 269
+Loop 13 listening on socket FD 272
+Loop 15 listening on socket FD 270
+Loop 16 listening on socket FD 282
+Loop 17 listening on socket FD 280
+Loop 19 listening on socket FD 283
+Loop 11 listening on socket FD 275
+Loop 6 listening on socket FD 262
+Loop 2 listening on socket FD 288
+Loop 26 listening on socket FD 289
+Loop 67 listening on socket FD 295
+Loop 29 listening on socket FD 290
+Loop 18 listening on socket FD 281
+Loop 72 listening on socket FD 300
+Loop 71 listening on socket FD 297
+Loop 73 listening on socket FD 304
+Loop 79 listening on socket FD 311
+Loop 12 listening on socket FD 309
+Loop 86 listening on socket FD 316
+Loop 89 listening on socket FD 320
+Loop 94 listening on socket FD 325
+Loop 21 listening on socket FD 285
+Loop 20 listening on socket FD 284
+Loop 93 listening on socket FD 326
+Loop 24 listening on socket FD 327
+Loop 90 listening on socket FD 329
+Loop 9 listening on socket FD 279
+Loop 10 listening on socket FD 274
+Loop 8 listening on socket FD 276
+Loop 22 listening on socket FD 286
+Loop 23 listening on socket FD 287
+Loop 31 listening on socket FD 291
+Loop 68 listening on socket FD 293
+Loop 64 listening on socket FD 292
+Loop 66 listening on socket FD 294
+Loop 65 listening on socket FD 296
+Loop 69 listening on socket FD 298
+Loop 70 listening on socket FD 302
+Loop 78 listening on socket FD 306
+Loop 30 listening on socket FD 303
+Loop 28 listening on socket FD 299
+Loop 74 listening on socket FD 305
+Loop 75 listening on socket FD 310
+Loop 77 listening on socket FD 307
+Loop 76 listening on socket FD 308
+Loop 81 listening on socket FD 315
+Loop 27 listening on socket FD 301
+Loop 82 listening on socket FD 314
+Loop 87 listening on socket FD 319
+Loop 83 listening on socket FD 318
+Loop 85 listening on socket FD 317
+Loop 5 listening on socket FD 261
+Loop 88 listening on socket FD 321
+Loop 84 listening on socket FD 313
+Loop 95 listening on socket FD 322
+Loop 92 listening on socket FD 323
+Loop 80 listening on socket FD 312
+Loop 91 listening on socket FD 324
+Loop 1 listening on socket FD 256
+Loop 25 listening on socket FD 328
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 0 listening on socket FD 332
+Loop 3 listening on socket FD 333
+Loop 2 listening on socket FD 331
+Loop 11 listening on socket FD 340
+Loop 12 listening on socket FD 341
+Loop 14 listening on socket FD 344
+Loop 16 listening on socket FD 346
+Loop 1 listening on socket FD 330
+Loop 4 listening on socket FD 335
+Loop 6 listening on socket FD 336
+Loop 5 listening on socket FD 334
+Loop 7 listening on socket FD 337
+Loop 9 listening on socket FD 338
+Loop 19 listening on socket FD 349
+Loop 8 listening on socket FD 339
+Loop 24 listening on socket FD 353
+Loop 13 listening on socket FD 342
+Loop 18 listening on socket FD 345
+Loop 28 listening on socket FD 356
+Loop 30 listening on socket FD 357
+Loop 17 listening on socket FD 343
+Loop 15 listening on socket FD 348
+Loop 70 listening on socket FD 365
+Loop 21 listening on socket FD 350
+Loop 20 listening on socket FD 347
+Loop 72 listening on socket FD 368
+Loop 10 listening on socket FD 372
+Loop 22 listening on socket FD 351
+Loop 23 listening on socket FD 352
+Loop 27 listening on socket FD 354
+Loop 26 listening on socket FD 355
+Loop 29 listening on socket FD 358
+Loop 77 listening on socket FD 377
+Loop 31 listening on socket FD 359
+Loop 66 listening on socket FD 361
+Loop 84 listening on socket FD 380
+Loop 64 listening on socket FD 360
+Loop 88 listening on socket FD 385
+Loop 67 listening on socket FD 362
+Loop 68 listening on socket FD 364
+Loop 69 listening on socket FD 366
+Loop 65 listening on socket FD 363
+Loop 71 listening on socket FD 367
+Loop 83 listening on socket FD 378
+Loop 78 listening on socket FD 389
+Loop 80 listening on socket FD 379
+Loop 94 listening on socket FD 391
+Loop 76 listening on socket FD 370
+Loop 75 listening on socket FD 369
+Loop 74 listening on socket FD 374
+Loop 73 listening on socket FD 373
+Loop 81 listening on socket FD 371
+Loop 82 listening on socket FD 376
+Loop 91 listening on socket FD 387
+Loop 86 listening on socket FD 381
+Loop 87 listening on socket FD 383
+Loop 92 listening on socket FD 386
+Loop 25 listening on socket FD 384
+Loop 90 listening on socket FD 388
+Loop 79 listening on socket FD 375
+Loop 93 listening on socket FD 390
+Loop 89 listening on socket FD 392
+Loop 85 listening on socket FD 382
+Loop 95 listening on socket FD 393
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443
+TLS/OpenSSL negotiated h2; kTLS TX=true, RX=true, direct RX=false
diff --git a/site/static/logs/baseline-h2/256/cardigan.log b/site/static/logs/baseline-h2/256/cardigan.log
new file mode 100644
index 000000000..3f88b6a02
--- /dev/null
+++ b/site/static/logs/baseline-h2/256/cardigan.log
@@ -0,0 +1,368 @@
+WARNING: Using incubator modules: jdk.incubator.vector
+Pinned cardigan-loop-0 to Linux CPU 0
+Pinned cardigan-loop-1 to Linux CPU 1
+Pinned cardigan-loop-2 to Linux CPU 2
+Pinned cardigan-loop-3 to Linux CPU 3
+Pinned cardigan-loop-4 to Linux CPU 4
+Pinned cardigan-loop-5 to Linux CPU 5
+Pinned cardigan-loop-6 to Linux CPU 6
+Pinned cardigan-loop-7 to Linux CPU 7
+Pinned cardigan-loop-8 to Linux CPU 8
+Pinned cardigan-loop-9 to Linux CPU 9
+Pinned cardigan-loop-10 to Linux CPU 10
+Pinned cardigan-loop-11 to Linux CPU 11
+Pinned cardigan-loop-12 to Linux CPU 12
+Pinned cardigan-loop-13 to Linux CPU 13
+Pinned cardigan-loop-14 to Linux CPU 14
+Pinned cardigan-loop-15 to Linux CPU 15
+Pinned cardigan-loop-16 to Linux CPU 16
+Pinned cardigan-loop-17 to Linux CPU 17
+Pinned cardigan-loop-18 to Linux CPU 18
+Pinned cardigan-loop-19 to Linux CPU 19
+Pinned cardigan-loop-20 to Linux CPU 20
+Pinned cardigan-loop-21 to Linux CPU 21
+Pinned cardigan-loop-22 to Linux CPU 22
+Pinned cardigan-loop-23 to Linux CPU 23
+Pinned cardigan-loop-24 to Linux CPU 24
+Pinned cardigan-loop-25 to Linux CPU 25
+Pinned cardigan-loop-26 to Linux CPU 26
+Pinned cardigan-loop-27 to Linux CPU 27
+Pinned cardigan-loop-28 to Linux CPU 28
+Pinned cardigan-loop-29 to Linux CPU 29
+Pinned cardigan-loop-30 to Linux CPU 30
+Pinned cardigan-loop-31 to Linux CPU 31
+Pinned cardigan-loop-64 to Linux CPU 64
+Pinned cardigan-loop-65 to Linux CPU 65
+Pinned cardigan-loop-66 to Linux CPU 66
+Pinned cardigan-loop-67 to Linux CPU 67
+Pinned cardigan-loop-68 to Linux CPU 68
+Pinned cardigan-loop-69 to Linux CPU 69
+Pinned cardigan-loop-70 to Linux CPU 70
+Pinned cardigan-loop-71 to Linux CPU 71
+Pinned cardigan-loop-72 to Linux CPU 72
+Pinned cardigan-loop-73 to Linux CPU 73
+Pinned cardigan-loop-74 to Linux CPU 74
+Pinned cardigan-loop-75 to Linux CPU 75
+Pinned cardigan-loop-76 to Linux CPU 76
+Pinned cardigan-loop-77 to Linux CPU 77
+Pinned cardigan-loop-78 to Linux CPU 78
+Pinned cardigan-loop-79 to Linux CPU 79
+Pinned cardigan-loop-80 to Linux CPU 80
+Pinned cardigan-loop-81 to Linux CPU 81
+Pinned cardigan-loop-82 to Linux CPU 82
+Pinned cardigan-loop-83 to Linux CPU 83
+Pinned cardigan-loop-84 to Linux CPU 84
+Pinned cardigan-loop-85 to Linux CPU 85
+Pinned cardigan-loop-86 to Linux CPU 86
+Pinned cardigan-loop-87 to Linux CPU 87
+Pinned cardigan-loop-88 to Linux CPU 88
+Pinned cardigan-loop-89 to Linux CPU 89
+Pinned cardigan-loop-90 to Linux CPU 90
+Pinned cardigan-loop-91 to Linux CPU 91
+Pinned cardigan-loop-92 to Linux CPU 92
+Pinned cardigan-loop-93 to Linux CPU 93
+Pinned cardigan-loop-94 to Linux CPU 94
+Pinned cardigan-loop-95 to Linux CPU 95
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 1 listening on socket FD 161
+Loop 2 listening on socket FD 145
+Loop 79 listening on socket FD 143
+Loop 13 listening on socket FD 180
+Loop 16 listening on socket FD 146
+Loop 93 listening on socket FD 164
+Loop 92 listening on socket FD 166
+Loop 84 listening on socket FD 169
+Loop 70 listening on socket FD 200
+Loop 17 listening on socket FD 178
+Loop 6 listening on socket FD 197
+Loop 66 listening on socket FD 165
+Loop 86 listening on socket FD 153
+Loop 87 listening on socket FD 185
+Loop 65 listening on socket FD 167
+Loop 12 listening on socket FD 181
+Loop 76 listening on socket FD 194
+Loop 21 listening on socket FD 174
+Loop 95 listening on socket FD 187
+Loop 81 listening on socket FD 140
+Loop 75 listening on socket FD 171
+Loop 69 listening on socket FD 173
+Loop 4 listening on socket FD 177
+Loop 88 listening on socket FD 144
+Loop 19 listening on socket FD 201
+Loop 25 listening on socket FD 193
+Loop 5 listening on socket FD 170
+Loop 74 listening on socket FD 198
+Loop 83 listening on socket FD 186
+Loop 89 listening on socket FD 195
+Loop 18 listening on socket FD 184
+Loop 72 listening on socket FD 159
+Loop 68 listening on socket FD 172
+Loop 0 listening on socket FD 139
+Loop 31 listening on socket FD 163
+Loop 67 listening on socket FD 148
+Loop 27 listening on socket FD 142
+Loop 80 listening on socket FD 162
+Loop 9 listening on socket FD 183
+Loop 73 listening on socket FD 152
+Loop 15 listening on socket FD 147
+Loop 85 listening on socket FD 175
+Loop 22 listening on socket FD 192
+Loop 77 listening on socket FD 190
+Loop 20 listening on socket FD 176
+Loop 90 listening on socket FD 150
+Loop 14 listening on socket FD 160
+Loop 78 listening on socket FD 157
+Loop 82 listening on socket FD 199
+Loop 30 listening on socket FD 138
+Loop 26 listening on socket FD 191
+Loop 24 listening on socket FD 151
+Loop 8 listening on socket FD 158
+Loop 71 listening on socket FD 149
+Loop 28 listening on socket FD 182
+Loop 10 listening on socket FD 196
+Loop 11 listening on socket FD 141
+Loop 29 listening on socket FD 189
+Loop 91 listening on socket FD 155
+Loop 7 listening on socket FD 179
+Loop 64 listening on socket FD 156
+Loop 94 listening on socket FD 168
+Loop 3 listening on socket FD 154
+Loop 23 listening on socket FD 188
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 4 listening on socket FD 207
+Loop 3 listening on socket FD 205
+Loop 7 listening on socket FD 209
+Loop 5 listening on socket FD 206
+Loop 6 listening on socket FD 208
+Loop 10 listening on socket FD 211
+Loop 13 listening on socket FD 213
+Loop 27 listening on socket FD 225
+Loop 2 listening on socket FD 204
+Loop 1 listening on socket FD 203
+Loop 11 listening on socket FD 212
+Loop 20 listening on socket FD 221
+Loop 66 listening on socket FD 234
+Loop 68 listening on socket FD 236
+Loop 8 listening on socket FD 210
+Loop 77 listening on socket FD 242
+Loop 12 listening on socket FD 214
+Loop 18 listening on socket FD 220
+Loop 16 listening on socket FD 215
+Loop 23 listening on socket FD 224
+Loop 22 listening on socket FD 223
+Loop 19 listening on socket FD 218
+Loop 17 listening on socket FD 219
+Loop 21 listening on socket FD 222
+Loop 15 listening on socket FD 216
+Loop 14 listening on socket FD 217
+Loop 0 listening on socket FD 202
+Loop 26 listening on socket FD 226
+Loop 25 listening on socket FD 227
+Loop 28 listening on socket FD 230
+Loop 31 listening on socket FD 231
+Loop 30 listening on socket FD 228
+Loop 29 listening on socket FD 229
+Loop 64 listening on socket FD 235
+Loop 67 listening on socket FD 233
+Loop 9 listening on socket FD 232
+Loop 70 listening on socket FD 238
+Loop 72 listening on socket FD 239
+Loop 69 listening on socket FD 237
+Loop 71 listening on socket FD 240
+Loop 80 listening on socket FD 243
+Loop 84 listening on socket FD 247
+Loop 89 listening on socket FD 253
+Loop 65 listening on socket FD 266
+Loop 92 listening on socket FD 254
+Loop 79 listening on socket FD 275
+Loop 87 listening on socket FD 250
+Loop 86 listening on socket FD 251
+Loop 85 listening on socket FD 252
+Loop 74 listening on socket FD 259
+Loop 75 listening on socket FD 248
+Loop 83 listening on socket FD 249
+Loop 93 listening on socket FD 274
+Loop 73 listening on socket FD 241
+Loop 95 listening on socket FD 265
+Loop 94 listening on socket FD 276
+Loop 90 listening on socket FD 255
+Loop 91 listening on socket FD 272
+Loop 24 listening on socket FD 262
+Loop 82 listening on socket FD 246
+Loop 81 listening on socket FD 245
+Loop 88 listening on socket FD 256
+Loop 76 listening on socket FD 257
+Loop 78 listening on socket FD 244
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 6 listening on socket FD 263
+Loop 3 listening on socket FD 267
+Loop 26 listening on socket FD 291
+Loop 27 listening on socket FD 292
+Loop 28 listening on socket FD 293
+Loop 11 listening on socket FD 271
+Loop 8 listening on socket FD 270
+Loop 15 listening on socket FD 279
+Loop 70 listening on socket FD 303
+Loop 13 listening on socket FD 302
+Loop 14 listening on socket FD 273
+Loop 78 listening on socket FD 307
+Loop 9 listening on socket FD 268
+Loop 10 listening on socket FD 269
+Loop 66 listening on socket FD 298
+Loop 85 listening on socket FD 311
+Loop 89 listening on socket FD 314
+Loop 77 listening on socket FD 312
+Loop 67 listening on socket FD 299
+Loop 12 listening on socket FD 277
+Loop 71 listening on socket FD 317
+Loop 16 listening on socket FD 278
+Loop 18 listening on socket FD 281
+Loop 92 listening on socket FD 321
+Loop 17 listening on socket FD 280
+Loop 91 listening on socket FD 325
+Loop 19 listening on socket FD 282
+Loop 20 listening on socket FD 286
+Loop 23 listening on socket FD 287
+Loop 21 listening on socket FD 285
+Loop 22 listening on socket FD 288
+Loop 0 listening on socket FD 283
+Loop 1 listening on socket FD 284
+Loop 2 listening on socket FD 258
+Loop 7 listening on socket FD 264
+Loop 4 listening on socket FD 260
+Loop 24 listening on socket FD 289
+Loop 25 listening on socket FD 290
+Loop 29 listening on socket FD 294
+Loop 31 listening on socket FD 296
+Loop 30 listening on socket FD 295
+Loop 65 listening on socket FD 300
+Loop 64 listening on socket FD 297
+Loop 73 listening on socket FD 329
+Loop 68 listening on socket FD 301
+Loop 5 listening on socket FD 261
+Loop 69 listening on socket FD 304
+Loop 75 listening on socket FD 306
+Loop 81 listening on socket FD 308
+Loop 83 listening on socket FD 310
+Loop 82 listening on socket FD 309
+Loop 87 listening on socket FD 313
+Loop 76 listening on socket FD 305
+Loop 90 listening on socket FD 315
+Loop 79 listening on socket FD 316
+Loop 86 listening on socket FD 318
+Loop 84 listening on socket FD 319
+Loop 88 listening on socket FD 320
+Loop 94 listening on socket FD 322
+Loop 93 listening on socket FD 323
+Loop 95 listening on socket FD 324
+Loop 80 listening on socket FD 326
+Loop 74 listening on socket FD 327
+Loop 72 listening on socket FD 328
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 0 listening on socket FD 331
+Loop 3 listening on socket FD 333
+Loop 2 listening on socket FD 332
+Loop 1 listening on socket FD 330
+Loop 4 listening on socket FD 335
+Loop 5 listening on socket FD 334
+Loop 9 listening on socket FD 339
+Loop 7 listening on socket FD 337
+Loop 6 listening on socket FD 336
+Loop 8 listening on socket FD 338
+Loop 11 listening on socket FD 341
+Loop 12 listening on socket FD 342
+Loop 10 listening on socket FD 340
+Loop 13 listening on socket FD 343
+Loop 15 listening on socket FD 346
+Loop 27 listening on socket FD 356
+Loop 23 listening on socket FD 353
+Loop 25 listening on socket FD 354
+Loop 17 listening on socket FD 344
+Loop 16 listening on socket FD 347
+Loop 18 listening on socket FD 348
+Loop 68 listening on socket FD 365
+Loop 21 listening on socket FD 351
+Loop 72 listening on socket FD 371
+Loop 14 listening on socket FD 345
+Loop 76 listening on socket FD 372
+Loop 20 listening on socket FD 349
+Loop 81 listening on socket FD 374
+Loop 82 listening on socket FD 375
+Loop 85 listening on socket FD 377
+Loop 19 listening on socket FD 350
+Loop 30 listening on socket FD 359
+Loop 75 listening on socket FD 383
+Loop 22 listening on socket FD 352
+Loop 31 listening on socket FD 360
+Loop 29 listening on socket FD 357
+Loop 28 listening on socket FD 358
+Loop 26 listening on socket FD 355
+Loop 64 listening on socket FD 361
+Loop 67 listening on socket FD 363
+Loop 66 listening on socket FD 362
+Loop 69 listening on socket FD 366
+Loop 71 listening on socket FD 367
+Loop 65 listening on socket FD 364
+Loop 79 listening on socket FD 390
+Loop 90 listening on socket FD 393
+Loop 73 listening on socket FD 369
+Loop 74 listening on socket FD 370
+Loop 70 listening on socket FD 368
+Loop 80 listening on socket FD 373
+Loop 83 listening on socket FD 376
+Loop 87 listening on socket FD 379
+Loop 91 listening on socket FD 382
+Loop 84 listening on socket FD 378
+Loop 88 listening on socket FD 381
+Loop 92 listening on socket FD 384
+Loop 86 listening on socket FD 385
+Loop 93 listening on socket FD 387
+Loop 78 listening on socket FD 386
+Loop 24 listening on socket FD 380
+Loop 77 listening on socket FD 392
+Loop 95 listening on socket FD 391
+Loop 94 listening on socket FD 388
+Loop 89 listening on socket FD 389
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443
+TLS/OpenSSL negotiated h2; kTLS TX=true, RX=true, direct RX=false
diff --git a/site/static/logs/baseline-h2c/1024/cardigan.log b/site/static/logs/baseline-h2c/1024/cardigan.log
new file mode 100644
index 000000000..074c8b5e1
--- /dev/null
+++ b/site/static/logs/baseline-h2c/1024/cardigan.log
@@ -0,0 +1,367 @@
+WARNING: Using incubator modules: jdk.incubator.vector
+Pinned cardigan-loop-0 to Linux CPU 0
+Pinned cardigan-loop-1 to Linux CPU 1
+Pinned cardigan-loop-2 to Linux CPU 2
+Pinned cardigan-loop-3 to Linux CPU 3
+Pinned cardigan-loop-4 to Linux CPU 4
+Pinned cardigan-loop-5 to Linux CPU 5
+Pinned cardigan-loop-6 to Linux CPU 6
+Pinned cardigan-loop-7 to Linux CPU 7
+Pinned cardigan-loop-8 to Linux CPU 8
+Pinned cardigan-loop-9 to Linux CPU 9
+Pinned cardigan-loop-10 to Linux CPU 10
+Pinned cardigan-loop-11 to Linux CPU 11
+Pinned cardigan-loop-12 to Linux CPU 12
+Pinned cardigan-loop-13 to Linux CPU 13
+Pinned cardigan-loop-14 to Linux CPU 14
+Pinned cardigan-loop-15 to Linux CPU 15
+Pinned cardigan-loop-16 to Linux CPU 16
+Pinned cardigan-loop-17 to Linux CPU 17
+Pinned cardigan-loop-18 to Linux CPU 18
+Pinned cardigan-loop-19 to Linux CPU 19
+Pinned cardigan-loop-20 to Linux CPU 20
+Pinned cardigan-loop-21 to Linux CPU 21
+Pinned cardigan-loop-22 to Linux CPU 22
+Pinned cardigan-loop-23 to Linux CPU 23
+Pinned cardigan-loop-24 to Linux CPU 24
+Pinned cardigan-loop-25 to Linux CPU 25
+Pinned cardigan-loop-26 to Linux CPU 26
+Pinned cardigan-loop-27 to Linux CPU 27
+Pinned cardigan-loop-28 to Linux CPU 28
+Pinned cardigan-loop-29 to Linux CPU 29
+Pinned cardigan-loop-30 to Linux CPU 30
+Pinned cardigan-loop-31 to Linux CPU 31
+Pinned cardigan-loop-64 to Linux CPU 64
+Pinned cardigan-loop-65 to Linux CPU 65
+Pinned cardigan-loop-66 to Linux CPU 66
+Pinned cardigan-loop-67 to Linux CPU 67
+Pinned cardigan-loop-68 to Linux CPU 68
+Pinned cardigan-loop-69 to Linux CPU 69
+Pinned cardigan-loop-70 to Linux CPU 70
+Pinned cardigan-loop-71 to Linux CPU 71
+Pinned cardigan-loop-72 to Linux CPU 72
+Pinned cardigan-loop-73 to Linux CPU 73
+Pinned cardigan-loop-74 to Linux CPU 74
+Pinned cardigan-loop-75 to Linux CPU 75
+Pinned cardigan-loop-76 to Linux CPU 76
+Pinned cardigan-loop-77 to Linux CPU 77
+Pinned cardigan-loop-78 to Linux CPU 78
+Pinned cardigan-loop-79 to Linux CPU 79
+Pinned cardigan-loop-80 to Linux CPU 80
+Pinned cardigan-loop-81 to Linux CPU 81
+Pinned cardigan-loop-82 to Linux CPU 82
+Pinned cardigan-loop-83 to Linux CPU 83
+Pinned cardigan-loop-84 to Linux CPU 84
+Pinned cardigan-loop-85 to Linux CPU 85
+Pinned cardigan-loop-86 to Linux CPU 86
+Pinned cardigan-loop-87 to Linux CPU 87
+Pinned cardigan-loop-88 to Linux CPU 88
+Pinned cardigan-loop-89 to Linux CPU 89
+Pinned cardigan-loop-90 to Linux CPU 90
+Pinned cardigan-loop-91 to Linux CPU 91
+Pinned cardigan-loop-92 to Linux CPU 92
+Pinned cardigan-loop-93 to Linux CPU 93
+Pinned cardigan-loop-94 to Linux CPU 94
+Pinned cardigan-loop-95 to Linux CPU 95
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 72 listening on socket FD 150
+Loop 9 listening on socket FD 189
+Loop 81 listening on socket FD 157
+Loop 65 listening on socket FD 142
+Loop 16 listening on socket FD 159
+Loop 24 listening on socket FD 144
+Loop 91 listening on socket FD 164
+Loop 71 listening on socket FD 198
+Loop 68 listening on socket FD 195
+Loop 64 listening on socket FD 171
+Loop 21 listening on socket FD 175
+Loop 79 listening on socket FD 168
+Loop 20 listening on socket FD 155
+Loop 22 listening on socket FD 176
+Loop 84 listening on socket FD 191
+Loop 2 listening on socket FD 141
+Loop 3 listening on socket FD 188
+Loop 67 listening on socket FD 151
+Loop 5 listening on socket FD 147
+Loop 70 listening on socket FD 148
+Loop 94 listening on socket FD 196
+Loop 25 listening on socket FD 145
+Loop 66 listening on socket FD 200
+Loop 76 listening on socket FD 201
+Loop 90 listening on socket FD 165
+Loop 86 listening on socket FD 153
+Loop 19 listening on socket FD 183
+Loop 73 listening on socket FD 184
+Loop 85 listening on socket FD 139
+Loop 18 listening on socket FD 170
+Loop 8 listening on socket FD 169
+Loop 95 listening on socket FD 197
+Loop 88 listening on socket FD 185
+Loop 12 listening on socket FD 199
+Loop 13 listening on socket FD 149
+Loop 14 listening on socket FD 154
+Loop 26 listening on socket FD 156
+Loop 11 listening on socket FD 146
+Loop 69 listening on socket FD 140
+Loop 1 listening on socket FD 193
+Loop 92 listening on socket FD 161
+Loop 77 listening on socket FD 179
+Loop 82 listening on socket FD 143
+Loop 80 listening on socket FD 178
+Loop 31 listening on socket FD 190
+Loop 6 listening on socket FD 172
+Loop 93 listening on socket FD 186
+Loop 89 listening on socket FD 173
+Loop 15 listening on socket FD 152
+Loop 75 listening on socket FD 160
+Loop 30 listening on socket FD 162
+Loop 27 listening on socket FD 138
+Loop 17 listening on socket FD 181
+Loop 87 listening on socket FD 174
+Loop 7 listening on socket FD 167
+Loop 28 listening on socket FD 166
+Loop 23 listening on socket FD 177
+Loop 83 listening on socket FD 187
+Loop 78 listening on socket FD 163
+Loop 4 listening on socket FD 180
+Loop 29 listening on socket FD 192
+Loop 10 listening on socket FD 158
+Loop 74 listening on socket FD 182
+Loop 0 listening on socket FD 194
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 0 listening on socket FD 202
+Loop 1 listening on socket FD 203
+Loop 4 listening on socket FD 204
+Loop 2 listening on socket FD 205
+Loop 5 listening on socket FD 207
+Loop 6 listening on socket FD 209
+Loop 8 listening on socket FD 211
+Loop 11 listening on socket FD 214
+Loop 7 listening on socket FD 208
+Loop 3 listening on socket FD 206
+Loop 10 listening on socket FD 212
+Loop 12 listening on socket FD 215
+Loop 9 listening on socket FD 210
+Loop 15 listening on socket FD 219
+Loop 14 listening on socket FD 220
+Loop 26 listening on socket FD 227
+Loop 27 listening on socket FD 226
+Loop 16 listening on socket FD 216
+Loop 31 listening on socket FD 231
+Loop 29 listening on socket FD 229
+Loop 68 listening on socket FD 234
+Loop 64 listening on socket FD 233
+Loop 70 listening on socket FD 237
+Loop 18 listening on socket FD 218
+Loop 66 listening on socket FD 236
+Loop 73 listening on socket FD 241
+Loop 17 listening on socket FD 217
+Loop 13 listening on socket FD 213
+Loop 19 listening on socket FD 221
+Loop 20 listening on socket FD 223
+Loop 21 listening on socket FD 222
+Loop 23 listening on socket FD 224
+Loop 22 listening on socket FD 225
+Loop 30 listening on socket FD 228
+Loop 28 listening on socket FD 230
+Loop 65 listening on socket FD 232
+Loop 69 listening on socket FD 235
+Loop 72 listening on socket FD 238
+Loop 83 listening on socket FD 249
+Loop 74 listening on socket FD 244
+Loop 94 listening on socket FD 271
+Loop 95 listening on socket FD 260
+Loop 80 listening on socket FD 246
+Loop 71 listening on socket FD 240
+Loop 88 listening on socket FD 253
+Loop 93 listening on socket FD 270
+Loop 92 listening on socket FD 274
+Loop 89 listening on socket FD 254
+Loop 82 listening on socket FD 247
+Loop 67 listening on socket FD 250
+Loop 75 listening on socket FD 243
+Loop 85 listening on socket FD 251
+Loop 76 listening on socket FD 242
+Loop 77 listening on socket FD 239
+Loop 86 listening on socket FD 252
+Loop 84 listening on socket FD 248
+Loop 90 listening on socket FD 275
+Loop 91 listening on socket FD 272
+Loop 78 listening on socket FD 258
+Loop 25 listening on socket FD 261
+Loop 81 listening on socket FD 245
+Loop 24 listening on socket FD 256
+Loop 87 listening on socket FD 257
+Loop 79 listening on socket FD 255
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 6 listening on socket FD 266
+Loop 5 listening on socket FD 265
+Loop 4 listening on socket FD 264
+Loop 7 listening on socket FD 267
+Loop 16 listening on socket FD 277
+Loop 18 listening on socket FD 279
+Loop 20 listening on socket FD 281
+Loop 17 listening on socket FD 276
+Loop 9 listening on socket FD 269
+Loop 3 listening on socket FD 263
+Loop 19 listening on socket FD 280
+Loop 21 listening on socket FD 282
+Loop 15 listening on socket FD 278
+Loop 12 listening on socket FD 273
+Loop 25 listening on socket FD 288
+Loop 28 listening on socket FD 290
+Loop 29 listening on socket FD 291
+Loop 65 listening on socket FD 295
+Loop 70 listening on socket FD 300
+Loop 10 listening on socket FD 268
+Loop 71 listening on socket FD 302
+Loop 22 listening on socket FD 283
+Loop 77 listening on socket FD 304
+Loop 81 listening on socket FD 306
+Loop 26 listening on socket FD 299
+Loop 0 listening on socket FD 259
+Loop 87 listening on socket FD 315
+Loop 23 listening on socket FD 284
+Loop 1 listening on socket FD 285
+Loop 90 listening on socket FD 321
+Loop 2 listening on socket FD 262
+Loop 73 listening on socket FD 324
+Loop 24 listening on socket FD 286
+Loop 27 listening on socket FD 289
+Loop 11 listening on socket FD 287
+Loop 30 listening on socket FD 292
+Loop 64 listening on socket FD 294
+Loop 31 listening on socket FD 293
+Loop 69 listening on socket FD 298
+Loop 66 listening on socket FD 297
+Loop 68 listening on socket FD 296
+Loop 67 listening on socket FD 301
+Loop 75 listening on socket FD 308
+Loop 76 listening on socket FD 329
+Loop 72 listening on socket FD 303
+Loop 78 listening on socket FD 305
+Loop 80 listening on socket FD 307
+Loop 85 listening on socket FD 313
+Loop 83 listening on socket FD 312
+Loop 82 listening on socket FD 309
+Loop 84 listening on socket FD 314
+Loop 86 listening on socket FD 310
+Loop 8 listening on socket FD 311
+Loop 89 listening on socket FD 317
+Loop 94 listening on socket FD 318
+Loop 91 listening on socket FD 316
+Loop 93 listening on socket FD 319
+Loop 95 listening on socket FD 322
+Loop 92 listening on socket FD 320
+Loop 79 listening on socket FD 323
+Loop 14 listening on socket FD 325
+Loop 88 listening on socket FD 326
+Loop 74 listening on socket FD 327
+Loop 13 listening on socket FD 328
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 1 listening on socket FD 331
+Loop 3 listening on socket FD 333
+Loop 0 listening on socket FD 330
+Loop 5 listening on socket FD 334
+Loop 6 listening on socket FD 336
+Loop 7 listening on socket FD 337
+Loop 2 listening on socket FD 332
+Loop 8 listening on socket FD 338
+Loop 13 listening on socket FD 342
+Loop 4 listening on socket FD 335
+Loop 10 listening on socket FD 340
+Loop 19 listening on socket FD 347
+Loop 20 listening on socket FD 348
+Loop 21 listening on socket FD 350
+Loop 22 listening on socket FD 351
+Loop 9 listening on socket FD 339
+Loop 24 listening on socket FD 353
+Loop 27 listening on socket FD 354
+Loop 12 listening on socket FD 341
+Loop 16 listening on socket FD 345
+Loop 29 listening on socket FD 356
+Loop 69 listening on socket FD 364
+Loop 17 listening on socket FD 344
+Loop 18 listening on socket FD 346
+Loop 15 listening on socket FD 343
+Loop 14 listening on socket FD 349
+Loop 23 listening on socket FD 352
+Loop 26 listening on socket FD 355
+Loop 30 listening on socket FD 357
+Loop 11 listening on socket FD 359
+Loop 28 listening on socket FD 358
+Loop 64 listening on socket FD 360
+Loop 31 listening on socket FD 361
+Loop 78 listening on socket FD 380
+Loop 80 listening on socket FD 372
+Loop 85 listening on socket FD 378
+Loop 73 listening on socket FD 384
+Loop 92 listening on socket FD 386
+Loop 66 listening on socket FD 362
+Loop 88 listening on socket FD 389
+Loop 65 listening on socket FD 363
+Loop 70 listening on socket FD 365
+Loop 68 listening on socket FD 366
+Loop 67 listening on socket FD 367
+Loop 71 listening on socket FD 368
+Loop 72 listening on socket FD 369
+Loop 74 listening on socket FD 370
+Loop 76 listening on socket FD 371
+Loop 82 listening on socket FD 373
+Loop 81 listening on socket FD 374
+Loop 86 listening on socket FD 382
+Loop 25 listening on socket FD 381
+Loop 91 listening on socket FD 383
+Loop 84 listening on socket FD 376
+Loop 89 listening on socket FD 385
+Loop 93 listening on socket FD 388
+Loop 75 listening on socket FD 375
+Loop 83 listening on socket FD 377
+Loop 95 listening on socket FD 387
+Loop 87 listening on socket FD 379
+Loop 77 listening on socket FD 390
+Loop 79 listening on socket FD 391
+Loop 94 listening on socket FD 392
+Loop 90 listening on socket FD 393
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443
diff --git a/site/static/logs/baseline-h2c/256/cardigan.log b/site/static/logs/baseline-h2c/256/cardigan.log
new file mode 100644
index 000000000..d830672ad
--- /dev/null
+++ b/site/static/logs/baseline-h2c/256/cardigan.log
@@ -0,0 +1,367 @@
+WARNING: Using incubator modules: jdk.incubator.vector
+Pinned cardigan-loop-0 to Linux CPU 0
+Pinned cardigan-loop-1 to Linux CPU 1
+Pinned cardigan-loop-2 to Linux CPU 2
+Pinned cardigan-loop-3 to Linux CPU 3
+Pinned cardigan-loop-4 to Linux CPU 4
+Pinned cardigan-loop-5 to Linux CPU 5
+Pinned cardigan-loop-6 to Linux CPU 6
+Pinned cardigan-loop-7 to Linux CPU 7
+Pinned cardigan-loop-8 to Linux CPU 8
+Pinned cardigan-loop-9 to Linux CPU 9
+Pinned cardigan-loop-10 to Linux CPU 10
+Pinned cardigan-loop-11 to Linux CPU 11
+Pinned cardigan-loop-12 to Linux CPU 12
+Pinned cardigan-loop-13 to Linux CPU 13
+Pinned cardigan-loop-14 to Linux CPU 14
+Pinned cardigan-loop-15 to Linux CPU 15
+Pinned cardigan-loop-16 to Linux CPU 16
+Pinned cardigan-loop-17 to Linux CPU 17
+Pinned cardigan-loop-18 to Linux CPU 18
+Pinned cardigan-loop-19 to Linux CPU 19
+Pinned cardigan-loop-20 to Linux CPU 20
+Pinned cardigan-loop-21 to Linux CPU 21
+Pinned cardigan-loop-22 to Linux CPU 22
+Pinned cardigan-loop-23 to Linux CPU 23
+Pinned cardigan-loop-24 to Linux CPU 24
+Pinned cardigan-loop-25 to Linux CPU 25
+Pinned cardigan-loop-26 to Linux CPU 26
+Pinned cardigan-loop-27 to Linux CPU 27
+Pinned cardigan-loop-28 to Linux CPU 28
+Pinned cardigan-loop-29 to Linux CPU 29
+Pinned cardigan-loop-30 to Linux CPU 30
+Pinned cardigan-loop-31 to Linux CPU 31
+Pinned cardigan-loop-64 to Linux CPU 64
+Pinned cardigan-loop-65 to Linux CPU 65
+Pinned cardigan-loop-66 to Linux CPU 66
+Pinned cardigan-loop-67 to Linux CPU 67
+Pinned cardigan-loop-68 to Linux CPU 68
+Pinned cardigan-loop-69 to Linux CPU 69
+Pinned cardigan-loop-70 to Linux CPU 70
+Pinned cardigan-loop-71 to Linux CPU 71
+Pinned cardigan-loop-72 to Linux CPU 72
+Pinned cardigan-loop-73 to Linux CPU 73
+Pinned cardigan-loop-74 to Linux CPU 74
+Pinned cardigan-loop-75 to Linux CPU 75
+Pinned cardigan-loop-76 to Linux CPU 76
+Pinned cardigan-loop-77 to Linux CPU 77
+Pinned cardigan-loop-78 to Linux CPU 78
+Pinned cardigan-loop-79 to Linux CPU 79
+Pinned cardigan-loop-80 to Linux CPU 80
+Pinned cardigan-loop-81 to Linux CPU 81
+Pinned cardigan-loop-82 to Linux CPU 82
+Pinned cardigan-loop-83 to Linux CPU 83
+Pinned cardigan-loop-84 to Linux CPU 84
+Pinned cardigan-loop-85 to Linux CPU 85
+Pinned cardigan-loop-86 to Linux CPU 86
+Pinned cardigan-loop-87 to Linux CPU 87
+Pinned cardigan-loop-88 to Linux CPU 88
+Pinned cardigan-loop-89 to Linux CPU 89
+Pinned cardigan-loop-90 to Linux CPU 90
+Pinned cardigan-loop-91 to Linux CPU 91
+Pinned cardigan-loop-92 to Linux CPU 92
+Pinned cardigan-loop-93 to Linux CPU 93
+Pinned cardigan-loop-94 to Linux CPU 94
+Pinned cardigan-loop-95 to Linux CPU 95
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 81 listening on socket FD 156
+Loop 2 listening on socket FD 155
+Loop 92 listening on socket FD 194
+Loop 65 listening on socket FD 171
+Loop 29 listening on socket FD 195
+Loop 84 listening on socket FD 190
+Loop 87 listening on socket FD 148
+Loop 24 listening on socket FD 160
+Loop 13 listening on socket FD 138
+Loop 80 listening on socket FD 199
+Loop 6 listening on socket FD 166
+Loop 70 listening on socket FD 191
+Loop 16 listening on socket FD 163
+Loop 20 listening on socket FD 147
+Loop 78 listening on socket FD 170
+Loop 10 listening on socket FD 139
+Loop 28 listening on socket FD 161
+Loop 90 listening on socket FD 150
+Loop 69 listening on socket FD 178
+Loop 5 listening on socket FD 169
+Loop 17 listening on socket FD 154
+Loop 7 listening on socket FD 189
+Loop 85 listening on socket FD 159
+Loop 26 listening on socket FD 164
+Loop 15 listening on socket FD 184
+Loop 72 listening on socket FD 181
+Loop 76 listening on socket FD 167
+Loop 3 listening on socket FD 168
+Loop 66 listening on socket FD 188
+Loop 89 listening on socket FD 140
+Loop 12 listening on socket FD 180
+Loop 77 listening on socket FD 165
+Loop 31 listening on socket FD 142
+Loop 82 listening on socket FD 185
+Loop 14 listening on socket FD 145
+Loop 95 listening on socket FD 193
+Loop 73 listening on socket FD 157
+Loop 1 listening on socket FD 197
+Loop 88 listening on socket FD 182
+Loop 67 listening on socket FD 192
+Loop 0 listening on socket FD 179
+Loop 8 listening on socket FD 186
+Loop 83 listening on socket FD 149
+Loop 21 listening on socket FD 200
+Loop 23 listening on socket FD 175
+Loop 86 listening on socket FD 162
+Loop 64 listening on socket FD 196
+Loop 93 listening on socket FD 176
+Loop 94 listening on socket FD 201
+Loop 74 listening on socket FD 198
+Loop 22 listening on socket FD 177
+Loop 25 listening on socket FD 153
+Loop 19 listening on socket FD 152
+Loop 79 listening on socket FD 173
+Loop 11 listening on socket FD 151
+Loop 9 listening on socket FD 141
+Loop 18 listening on socket FD 172
+Loop 75 listening on socket FD 187
+Loop 71 listening on socket FD 183
+Loop 91 listening on socket FD 144
+Loop 27 listening on socket FD 174
+Loop 4 listening on socket FD 158
+Loop 68 listening on socket FD 146
+Loop 30 listening on socket FD 143
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 3 listening on socket FD 203
+Loop 1 listening on socket FD 204
+Loop 5 listening on socket FD 205
+Loop 6 listening on socket FD 207
+Loop 7 listening on socket FD 209
+Loop 2 listening on socket FD 208
+Loop 4 listening on socket FD 206
+Loop 9 listening on socket FD 211
+Loop 14 listening on socket FD 214
+Loop 13 listening on socket FD 215
+Loop 12 listening on socket FD 216
+Loop 15 listening on socket FD 213
+Loop 8 listening on socket FD 210
+Loop 21 listening on socket FD 222
+Loop 18 listening on socket FD 221
+Loop 11 listening on socket FD 224
+Loop 10 listening on socket FD 212
+Loop 23 listening on socket FD 225
+Loop 17 listening on socket FD 217
+Loop 24 listening on socket FD 226
+Loop 16 listening on socket FD 218
+Loop 27 listening on socket FD 229
+Loop 19 listening on socket FD 219
+Loop 0 listening on socket FD 202
+Loop 64 listening on socket FD 234
+Loop 20 listening on socket FD 220
+Loop 22 listening on socket FD 223
+Loop 25 listening on socket FD 227
+Loop 26 listening on socket FD 228
+Loop 72 listening on socket FD 242
+Loop 76 listening on socket FD 241
+Loop 30 listening on socket FD 230
+Loop 29 listening on socket FD 231
+Loop 31 listening on socket FD 233
+Loop 28 listening on socket FD 232
+Loop 67 listening on socket FD 235
+Loop 68 listening on socket FD 236
+Loop 70 listening on socket FD 238
+Loop 69 listening on socket FD 237
+Loop 71 listening on socket FD 240
+Loop 66 listening on socket FD 239
+Loop 73 listening on socket FD 243
+Loop 86 listening on socket FD 255
+Loop 80 listening on socket FD 251
+Loop 79 listening on socket FD 244
+Loop 74 listening on socket FD 246
+Loop 75 listening on socket FD 245
+Loop 92 listening on socket FD 258
+Loop 87 listening on socket FD 254
+Loop 77 listening on socket FD 270
+Loop 65 listening on socket FD 250
+Loop 81 listening on socket FD 249
+Loop 84 listening on socket FD 252
+Loop 85 listening on socket FD 253
+Loop 82 listening on socket FD 248
+Loop 78 listening on socket FD 247
+Loop 83 listening on socket FD 256
+Loop 95 listening on socket FD 257
+Loop 93 listening on socket FD 268
+Loop 94 listening on socket FD 267
+Loop 88 listening on socket FD 261
+Loop 89 listening on socket FD 259
+Loop 90 listening on socket FD 260
+Loop 91 listening on socket FD 276
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 1 listening on socket FD 263
+Loop 4 listening on socket FD 265
+Loop 6 listening on socket FD 269
+Loop 7 listening on socket FD 271
+Loop 10 listening on socket FD 272
+Loop 11 listening on socket FD 274
+Loop 8 listening on socket FD 273
+Loop 14 listening on socket FD 275
+Loop 12 listening on socket FD 278
+Loop 15 listening on socket FD 279
+Loop 13 listening on socket FD 277
+Loop 16 listening on socket FD 282
+Loop 18 listening on socket FD 281
+Loop 31 listening on socket FD 295
+Loop 17 listening on socket FD 280
+Loop 5 listening on socket FD 266
+Loop 20 listening on socket FD 283
+Loop 3 listening on socket FD 264
+Loop 68 listening on socket FD 312
+Loop 75 listening on socket FD 315
+Loop 82 listening on socket FD 317
+Loop 21 listening on socket FD 285
+Loop 86 listening on socket FD 319
+Loop 19 listening on socket FD 284
+Loop 0 listening on socket FD 262
+Loop 2 listening on socket FD 286
+Loop 91 listening on socket FD 325
+Loop 23 listening on socket FD 287
+Loop 89 listening on socket FD 330
+Loop 24 listening on socket FD 290
+Loop 22 listening on socket FD 288
+Loop 9 listening on socket FD 289
+Loop 29 listening on socket FD 294
+Loop 28 listening on socket FD 293
+Loop 25 listening on socket FD 292
+Loop 65 listening on socket FD 297
+Loop 30 listening on socket FD 296
+Loop 66 listening on socket FD 298
+Loop 74 listening on socket FD 300
+Loop 78 listening on socket FD 302
+Loop 76 listening on socket FD 301
+Loop 77 listening on socket FD 303
+Loop 81 listening on socket FD 304
+Loop 79 listening on socket FD 307
+Loop 26 listening on socket FD 291
+Loop 73 listening on socket FD 306
+Loop 72 listening on socket FD 305
+Loop 83 listening on socket FD 309
+Loop 80 listening on socket FD 310
+Loop 84 listening on socket FD 308
+Loop 27 listening on socket FD 299
+Loop 67 listening on socket FD 311
+Loop 71 listening on socket FD 313
+Loop 69 listening on socket FD 314
+Loop 64 listening on socket FD 316
+Loop 85 listening on socket FD 318
+Loop 87 listening on socket FD 321
+Loop 88 listening on socket FD 320
+Loop 90 listening on socket FD 322
+Loop 93 listening on socket FD 323
+Loop 92 listening on socket FD 324
+Loop 70 listening on socket FD 326
+Loop 94 listening on socket FD 328
+Loop 95 listening on socket FD 327
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 14 listening on socket FD 342
+Loop 19 listening on socket FD 347
+Loop 18 listening on socket FD 345
+Loop 21 listening on socket FD 348
+Loop 26 listening on socket FD 352
+Loop 27 listening on socket FD 355
+Loop 6 listening on socket FD 335
+Loop 31 listening on socket FD 357
+Loop 28 listening on socket FD 356
+Loop 24 listening on socket FD 353
+Loop 67 listening on socket FD 362
+Loop 1 listening on socket FD 332
+Loop 15 listening on socket FD 340
+Loop 17 listening on socket FD 346
+Loop 7 listening on socket FD 331
+Loop 72 listening on socket FD 367
+Loop 16 listening on socket FD 344
+Loop 77 listening on socket FD 373
+Loop 79 listening on socket FD 371
+Loop 5 listening on socket FD 329
+Loop 81 listening on socket FD 374
+Loop 91 listening on socket FD 381
+Loop 85 listening on socket FD 379
+Loop 13 listening on socket FD 341
+Loop 95 listening on socket FD 384
+Loop 94 listening on socket FD 386
+Loop 30 listening on socket FD 358
+Loop 4 listening on socket FD 336
+Loop 11 listening on socket FD 343
+Loop 88 listening on socket FD 392
+Loop 20 listening on socket FD 349
+Loop 73 listening on socket FD 393
+Loop 9 listening on socket FD 338
+Loop 23 listening on socket FD 351
+Loop 25 listening on socket FD 354
+Loop 66 listening on socket FD 361
+Loop 2 listening on socket FD 334
+Loop 22 listening on socket FD 350
+Loop 3 listening on socket FD 333
+Loop 0 listening on socket FD 337
+Loop 64 listening on socket FD 359
+Loop 10 listening on socket FD 339
+Loop 69 listening on socket FD 365
+Loop 68 listening on socket FD 363
+Loop 71 listening on socket FD 366
+Loop 70 listening on socket FD 364
+Loop 65 listening on socket FD 360
+Loop 75 listening on socket FD 369
+Loop 74 listening on socket FD 368
+Loop 78 listening on socket FD 370
+Loop 80 listening on socket FD 372
+Loop 82 listening on socket FD 376
+Loop 87 listening on socket FD 377
+Loop 84 listening on socket FD 375
+Loop 83 listening on socket FD 378
+Loop 86 listening on socket FD 380
+Loop 90 listening on socket FD 382
+Loop 92 listening on socket FD 383
+Loop 93 listening on socket FD 385
+Loop 8 listening on socket FD 388
+Loop 89 listening on socket FD 389
+Loop 12 listening on socket FD 387
+Loop 76 listening on socket FD 390
+Loop 29 listening on socket FD 391
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443
diff --git a/site/static/logs/baseline-h2c/4096/cardigan.log b/site/static/logs/baseline-h2c/4096/cardigan.log
new file mode 100644
index 000000000..8d7704eab
--- /dev/null
+++ b/site/static/logs/baseline-h2c/4096/cardigan.log
@@ -0,0 +1,367 @@
+WARNING: Using incubator modules: jdk.incubator.vector
+Pinned cardigan-loop-0 to Linux CPU 0
+Pinned cardigan-loop-1 to Linux CPU 1
+Pinned cardigan-loop-2 to Linux CPU 2
+Pinned cardigan-loop-3 to Linux CPU 3
+Pinned cardigan-loop-4 to Linux CPU 4
+Pinned cardigan-loop-5 to Linux CPU 5
+Pinned cardigan-loop-6 to Linux CPU 6
+Pinned cardigan-loop-7 to Linux CPU 7
+Pinned cardigan-loop-8 to Linux CPU 8
+Pinned cardigan-loop-9 to Linux CPU 9
+Pinned cardigan-loop-10 to Linux CPU 10
+Pinned cardigan-loop-11 to Linux CPU 11
+Pinned cardigan-loop-12 to Linux CPU 12
+Pinned cardigan-loop-13 to Linux CPU 13
+Pinned cardigan-loop-14 to Linux CPU 14
+Pinned cardigan-loop-15 to Linux CPU 15
+Pinned cardigan-loop-16 to Linux CPU 16
+Pinned cardigan-loop-17 to Linux CPU 17
+Pinned cardigan-loop-18 to Linux CPU 18
+Pinned cardigan-loop-19 to Linux CPU 19
+Pinned cardigan-loop-20 to Linux CPU 20
+Pinned cardigan-loop-21 to Linux CPU 21
+Pinned cardigan-loop-22 to Linux CPU 22
+Pinned cardigan-loop-23 to Linux CPU 23
+Pinned cardigan-loop-24 to Linux CPU 24
+Pinned cardigan-loop-25 to Linux CPU 25
+Pinned cardigan-loop-26 to Linux CPU 26
+Pinned cardigan-loop-27 to Linux CPU 27
+Pinned cardigan-loop-28 to Linux CPU 28
+Pinned cardigan-loop-29 to Linux CPU 29
+Pinned cardigan-loop-30 to Linux CPU 30
+Pinned cardigan-loop-31 to Linux CPU 31
+Pinned cardigan-loop-64 to Linux CPU 64
+Pinned cardigan-loop-65 to Linux CPU 65
+Pinned cardigan-loop-66 to Linux CPU 66
+Pinned cardigan-loop-67 to Linux CPU 67
+Pinned cardigan-loop-68 to Linux CPU 68
+Pinned cardigan-loop-69 to Linux CPU 69
+Pinned cardigan-loop-70 to Linux CPU 70
+Pinned cardigan-loop-71 to Linux CPU 71
+Pinned cardigan-loop-72 to Linux CPU 72
+Pinned cardigan-loop-73 to Linux CPU 73
+Pinned cardigan-loop-74 to Linux CPU 74
+Pinned cardigan-loop-75 to Linux CPU 75
+Pinned cardigan-loop-76 to Linux CPU 76
+Pinned cardigan-loop-77 to Linux CPU 77
+Pinned cardigan-loop-78 to Linux CPU 78
+Pinned cardigan-loop-79 to Linux CPU 79
+Pinned cardigan-loop-80 to Linux CPU 80
+Pinned cardigan-loop-81 to Linux CPU 81
+Pinned cardigan-loop-82 to Linux CPU 82
+Pinned cardigan-loop-83 to Linux CPU 83
+Pinned cardigan-loop-84 to Linux CPU 84
+Pinned cardigan-loop-85 to Linux CPU 85
+Pinned cardigan-loop-86 to Linux CPU 86
+Pinned cardigan-loop-87 to Linux CPU 87
+Pinned cardigan-loop-88 to Linux CPU 88
+Pinned cardigan-loop-89 to Linux CPU 89
+Pinned cardigan-loop-90 to Linux CPU 90
+Pinned cardigan-loop-91 to Linux CPU 91
+Pinned cardigan-loop-92 to Linux CPU 92
+Pinned cardigan-loop-93 to Linux CPU 93
+Pinned cardigan-loop-94 to Linux CPU 94
+Pinned cardigan-loop-95 to Linux CPU 95
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 31 listening on socket FD 177
+Loop 0 listening on socket FD 157
+Loop 28 listening on socket FD 169
+Loop 30 listening on socket FD 149
+Loop 29 listening on socket FD 139
+Loop 89 listening on socket FD 168
+Loop 93 listening on socket FD 198
+Loop 16 listening on socket FD 155
+Loop 27 listening on socket FD 193
+Loop 8 listening on socket FD 146
+Loop 23 listening on socket FD 174
+Loop 12 listening on socket FD 158
+Loop 26 listening on socket FD 180
+Loop 24 listening on socket FD 185
+Loop 84 listening on socket FD 141
+Loop 76 listening on socket FD 147
+Loop 22 listening on socket FD 171
+Loop 73 listening on socket FD 183
+Loop 10 listening on socket FD 189
+Loop 65 listening on socket FD 170
+Loop 18 listening on socket FD 184
+Loop 71 listening on socket FD 194
+Loop 70 listening on socket FD 201
+Loop 17 listening on socket FD 164
+Loop 81 listening on socket FD 165
+Loop 78 listening on socket FD 182
+Loop 79 listening on socket FD 154
+Loop 15 listening on socket FD 175
+Loop 2 listening on socket FD 179
+Loop 66 listening on socket FD 192
+Loop 64 listening on socket FD 138
+Loop 72 listening on socket FD 200
+Loop 11 listening on socket FD 191
+Loop 74 listening on socket FD 162
+Loop 67 listening on socket FD 145
+Loop 20 listening on socket FD 152
+Loop 83 listening on socket FD 181
+Loop 77 listening on socket FD 142
+Loop 5 listening on socket FD 166
+Loop 75 listening on socket FD 196
+Loop 95 listening on socket FD 140
+Loop 6 listening on socket FD 197
+Loop 86 listening on socket FD 148
+Loop 87 listening on socket FD 159
+Loop 4 listening on socket FD 156
+Loop 88 listening on socket FD 195
+Loop 91 listening on socket FD 150
+Loop 3 listening on socket FD 151
+Loop 25 listening on socket FD 186
+Loop 7 listening on socket FD 190
+Loop 85 listening on socket FD 144
+Loop 19 listening on socket FD 167
+Loop 13 listening on socket FD 199
+Loop 9 listening on socket FD 172
+Loop 68 listening on socket FD 173
+Loop 92 listening on socket FD 188
+Loop 1 listening on socket FD 176
+Loop 82 listening on socket FD 178
+Loop 21 listening on socket FD 161
+Loop 69 listening on socket FD 160
+Loop 90 listening on socket FD 187
+Loop 94 listening on socket FD 143
+Loop 80 listening on socket FD 163
+Loop 14 listening on socket FD 153
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 1 listening on socket FD 202
+Loop 4 listening on socket FD 205
+Loop 7 listening on socket FD 208
+Loop 0 listening on socket FD 203
+Loop 6 listening on socket FD 206
+Loop 10 listening on socket FD 211
+Loop 2 listening on socket FD 204
+Loop 3 listening on socket FD 207
+Loop 15 listening on socket FD 216
+Loop 13 listening on socket FD 213
+Loop 17 listening on socket FD 218
+Loop 16 listening on socket FD 217
+Loop 5 listening on socket FD 209
+Loop 20 listening on socket FD 223
+Loop 25 listening on socket FD 226
+Loop 8 listening on socket FD 210
+Loop 11 listening on socket FD 212
+Loop 14 listening on socket FD 215
+Loop 12 listening on socket FD 214
+Loop 28 listening on socket FD 230
+Loop 18 listening on socket FD 219
+Loop 70 listening on socket FD 237
+Loop 67 listening on socket FD 238
+Loop 21 listening on socket FD 222
+Loop 19 listening on socket FD 220
+Loop 22 listening on socket FD 221
+Loop 24 listening on socket FD 224
+Loop 23 listening on socket FD 225
+Loop 27 listening on socket FD 229
+Loop 26 listening on socket FD 228
+Loop 9 listening on socket FD 227
+Loop 31 listening on socket FD 231
+Loop 65 listening on socket FD 232
+Loop 64 listening on socket FD 233
+Loop 66 listening on socket FD 234
+Loop 68 listening on socket FD 235
+Loop 69 listening on socket FD 236
+Loop 71 listening on socket FD 239
+Loop 75 listening on socket FD 241
+Loop 74 listening on socket FD 240
+Loop 78 listening on socket FD 244
+Loop 80 listening on socket FD 243
+Loop 81 listening on socket FD 245
+Loop 72 listening on socket FD 249
+Loop 84 listening on socket FD 250
+Loop 85 listening on socket FD 248
+Loop 91 listening on socket FD 254
+Loop 89 listening on socket FD 252
+Loop 79 listening on socket FD 242
+Loop 90 listening on socket FD 255
+Loop 86 listening on socket FD 247
+Loop 88 listening on socket FD 253
+Loop 83 listening on socket FD 246
+Loop 87 listening on socket FD 251
+Loop 92 listening on socket FD 259
+Loop 95 listening on socket FD 258
+Loop 94 listening on socket FD 268
+Loop 30 listening on socket FD 257
+Loop 29 listening on socket FD 262
+Loop 93 listening on socket FD 270
+Loop 82 listening on socket FD 263
+Loop 73 listening on socket FD 261
+Loop 76 listening on socket FD 260
+Loop 77 listening on socket FD 256
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 1 listening on socket FD 266
+Loop 5 listening on socket FD 269
+Loop 4 listening on socket FD 267
+Loop 7 listening on socket FD 272
+Loop 11 listening on socket FD 273
+Loop 9 listening on socket FD 274
+Loop 8 listening on socket FD 275
+Loop 12 listening on socket FD 276
+Loop 10 listening on socket FD 278
+Loop 2 listening on socket FD 265
+Loop 13 listening on socket FD 277
+Loop 20 listening on socket FD 284
+Loop 3 listening on socket FD 283
+Loop 25 listening on socket FD 289
+Loop 27 listening on socket FD 292
+Loop 30 listening on socket FD 293
+Loop 15 listening on socket FD 279
+Loop 14 listening on socket FD 296
+Loop 31 listening on socket FD 298
+Loop 16 listening on socket FD 280
+Loop 65 listening on socket FD 297
+Loop 70 listening on socket FD 305
+Loop 73 listening on socket FD 306
+Loop 6 listening on socket FD 271
+Loop 78 listening on socket FD 312
+Loop 74 listening on socket FD 314
+Loop 18 listening on socket FD 282
+Loop 17 listening on socket FD 281
+Loop 0 listening on socket FD 264
+Loop 21 listening on socket FD 286
+Loop 19 listening on socket FD 285
+Loop 80 listening on socket FD 315
+Loop 81 listening on socket FD 310
+Loop 84 listening on socket FD 317
+Loop 23 listening on socket FD 288
+Loop 83 listening on socket FD 319
+Loop 22 listening on socket FD 287
+Loop 26 listening on socket FD 291
+Loop 24 listening on socket FD 290
+Loop 28 listening on socket FD 294
+Loop 29 listening on socket FD 295
+Loop 68 listening on socket FD 301
+Loop 64 listening on socket FD 299
+Loop 88 listening on socket FD 329
+Loop 71 listening on socket FD 303
+Loop 69 listening on socket FD 302
+Loop 67 listening on socket FD 300
+Loop 66 listening on socket FD 304
+Loop 72 listening on socket FD 307
+Loop 75 listening on socket FD 308
+Loop 76 listening on socket FD 311
+Loop 77 listening on socket FD 309
+Loop 79 listening on socket FD 313
+Loop 82 listening on socket FD 316
+Loop 85 listening on socket FD 318
+Loop 86 listening on socket FD 320
+Loop 87 listening on socket FD 321
+Loop 89 listening on socket FD 322
+Loop 91 listening on socket FD 323
+Loop 93 listening on socket FD 325
+Loop 92 listening on socket FD 324
+Loop 90 listening on socket FD 328
+Loop 95 listening on socket FD 327
+Loop 94 listening on socket FD 326
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 2 listening on socket FD 331
+Loop 1 listening on socket FD 332
+Loop 0 listening on socket FD 330
+Loop 3 listening on socket FD 333
+Loop 6 listening on socket FD 336
+Loop 5 listening on socket FD 334
+Loop 4 listening on socket FD 335
+Loop 10 listening on socket FD 341
+Loop 12 listening on socket FD 342
+Loop 7 listening on socket FD 337
+Loop 9 listening on socket FD 339
+Loop 13 listening on socket FD 344
+Loop 15 listening on socket FD 345
+Loop 19 listening on socket FD 349
+Loop 8 listening on socket FD 338
+Loop 21 listening on socket FD 351
+Loop 11 listening on socket FD 340
+Loop 14 listening on socket FD 343
+Loop 24 listening on socket FD 355
+Loop 16 listening on socket FD 346
+Loop 17 listening on socket FD 347
+Loop 18 listening on socket FD 348
+Loop 64 listening on socket FD 361
+Loop 67 listening on socket FD 364
+Loop 71 listening on socket FD 368
+Loop 74 listening on socket FD 370
+Loop 75 listening on socket FD 371
+Loop 20 listening on socket FD 350
+Loop 22 listening on socket FD 352
+Loop 81 listening on socket FD 372
+Loop 23 listening on socket FD 353
+Loop 25 listening on socket FD 356
+Loop 83 listening on socket FD 379
+Loop 87 listening on socket FD 381
+Loop 91 listening on socket FD 383
+Loop 26 listening on socket FD 354
+Loop 89 listening on socket FD 386
+Loop 30 listening on socket FD 357
+Loop 28 listening on socket FD 391
+Loop 31 listening on socket FD 358
+Loop 66 listening on socket FD 362
+Loop 27 listening on socket FD 359
+Loop 68 listening on socket FD 363
+Loop 79 listening on socket FD 392
+Loop 69 listening on socket FD 365
+Loop 29 listening on socket FD 360
+Loop 88 listening on socket FD 393
+Loop 70 listening on socket FD 366
+Loop 65 listening on socket FD 367
+Loop 73 listening on socket FD 369
+Loop 76 listening on socket FD 373
+Loop 82 listening on socket FD 375
+Loop 72 listening on socket FD 377
+Loop 80 listening on socket FD 374
+Loop 84 listening on socket FD 376
+Loop 77 listening on socket FD 378
+Loop 85 listening on socket FD 380
+Loop 86 listening on socket FD 382
+Loop 92 listening on socket FD 384
+Loop 94 listening on socket FD 385
+Loop 78 listening on socket FD 387
+Loop 95 listening on socket FD 388
+Loop 90 listening on socket FD 390
+Loop 93 listening on socket FD 389
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443
diff --git a/site/static/logs/baseline/4096/cardigan.log b/site/static/logs/baseline/4096/cardigan.log
index cbdc204b6..7d79170fb 100644
--- a/site/static/logs/baseline/4096/cardigan.log
+++ b/site/static/logs/baseline/4096/cardigan.log
@@ -1,9 +1,4 @@
WARNING: Using incubator modules: jdk.incubator.vector
-Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
-Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
-Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
-Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
-Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
Pinned cardigan-loop-0 to Linux CPU 0
Pinned cardigan-loop-1 to Linux CPU 1
Pinned cardigan-loop-2 to Linux CPU 2
@@ -68,68 +63,305 @@ Pinned cardigan-loop-92 to Linux CPU 92
Pinned cardigan-loop-93 to Linux CPU 93
Pinned cardigan-loop-94 to Linux CPU 94
Pinned cardigan-loop-95 to Linux CPU 95
-Loop 71 listening on socket FD 153
-Loop 23 listening on socket FD 169
-Loop 70 listening on socket FD 155
-Loop 82 listening on socket FD 156
-Loop 13 listening on socket FD 152
-Loop 18 listening on socket FD 168
-Loop 4 listening on socket FD 165
-Loop 87 listening on socket FD 189
-Loop 80 listening on socket FD 182
-Loop 67 listening on socket FD 198
-Loop 20 listening on socket FD 197
-Loop 24 listening on socket FD 144
-Loop 86 listening on socket FD 175
-Loop 69 listening on socket FD 143
-Loop 95 listening on socket FD 183
-Loop 28 listening on socket FD 180
-Loop 15 listening on socket FD 185
-Loop 83 listening on socket FD 166
-Loop 21 listening on socket FD 181
-Loop 79 listening on socket FD 159
-Loop 9 listening on socket FD 141
-Loop 84 listening on socket FD 154
-Loop 19 listening on socket FD 184
-Loop 76 listening on socket FD 151
-Loop 26 listening on socket FD 162
-Loop 72 listening on socket FD 139
-Loop 29 listening on socket FD 188
-Loop 81 listening on socket FD 200
-Loop 17 listening on socket FD 146
-Loop 85 listening on socket FD 170
-Loop 91 listening on socket FD 163
-Loop 75 listening on socket FD 164
-Loop 27 listening on socket FD 173
-Loop 74 listening on socket FD 199
-Loop 8 listening on socket FD 194
-Loop 65 listening on socket FD 191
-Loop 1 listening on socket FD 171
-Loop 66 listening on socket FD 149
-Loop 2 listening on socket FD 174
-Loop 6 listening on socket FD 193
-Loop 73 listening on socket FD 147
-Loop 11 listening on socket FD 140
-Loop 7 listening on socket FD 161
-Loop 78 listening on socket FD 195
-Loop 68 listening on socket FD 148
-Loop 5 listening on socket FD 196
-Loop 89 listening on socket FD 138
-Loop 25 listening on socket FD 190
-Loop 14 listening on socket FD 142
-Loop 94 listening on socket FD 179
-Loop 30 listening on socket FD 157
-Loop 64 listening on socket FD 178
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 25 listening on socket FD 174
+Loop 27 listening on socket FD 156
+Loop 7 listening on socket FD 147
+Loop 80 listening on socket FD 186
+Loop 18 listening on socket FD 189
+Loop 75 listening on socket FD 183
+Loop 66 listening on socket FD 194
+Loop 83 listening on socket FD 179
+Loop 79 listening on socket FD 181
+Loop 8 listening on socket FD 160
+Loop 84 listening on socket FD 182
+Loop 30 listening on socket FD 200
+Loop 28 listening on socket FD 138
+Loop 81 listening on socket FD 192
+Loop 72 listening on socket FD 188
+Loop 5 listening on socket FD 144
+Loop 91 listening on socket FD 146
+Loop 17 listening on socket FD 199
+Loop 11 listening on socket FD 170
+Loop 12 listening on socket FD 191
+Loop 73 listening on socket FD 159
+Loop 93 listening on socket FD 151
+Loop 68 listening on socket FD 149
+Loop 3 listening on socket FD 167
+Loop 67 listening on socket FD 193
+Loop 24 listening on socket FD 185
Loop 88 listening on socket FD 145
-Loop 16 listening on socket FD 160
-Loop 0 listening on socket FD 201
-Loop 31 listening on socket FD 167
-Loop 77 listening on socket FD 158
-Loop 12 listening on socket FD 186
-Loop 10 listening on socket FD 187
-Loop 93 listening on socket FD 176
-Loop 92 listening on socket FD 172
-Loop 90 listening on socket FD 150
-Loop 22 listening on socket FD 192
-Loop 3 listening on socket FD 177
-Cardigan HttpArena mode h1 is listening on 8080
+Loop 14 listening on socket FD 180
+Loop 22 listening on socket FD 155
+Loop 76 listening on socket FD 161
+Loop 74 listening on socket FD 158
+Loop 85 listening on socket FD 175
+Loop 77 listening on socket FD 150
+Loop 82 listening on socket FD 143
+Loop 4 listening on socket FD 169
+Loop 69 listening on socket FD 196
+Loop 71 listening on socket FD 198
+Loop 70 listening on socket FD 178
+Loop 20 listening on socket FD 148
+Loop 15 listening on socket FD 153
+Loop 23 listening on socket FD 139
+Loop 95 listening on socket FD 140
+Loop 6 listening on socket FD 195
+Loop 13 listening on socket FD 154
+Loop 9 listening on socket FD 142
+Loop 31 listening on socket FD 165
+Loop 64 listening on socket FD 152
+Loop 0 listening on socket FD 173
+Loop 21 listening on socket FD 164
+Loop 16 listening on socket FD 157
+Loop 78 listening on socket FD 176
+Loop 87 listening on socket FD 197
+Loop 26 listening on socket FD 163
+Loop 19 listening on socket FD 184
+Loop 92 listening on socket FD 187
+Loop 90 listening on socket FD 177
+Loop 86 listening on socket FD 141
+Loop 1 listening on socket FD 162
+Loop 94 listening on socket FD 172
+Loop 2 listening on socket FD 201
+Loop 29 listening on socket FD 168
+Loop 65 listening on socket FD 171
+Loop 89 listening on socket FD 190
+Loop 10 listening on socket FD 166
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 4 listening on socket FD 205
+Loop 3 listening on socket FD 204
+Loop 5 listening on socket FD 206
+Loop 10 listening on socket FD 211
+Loop 8 listening on socket FD 210
+Loop 2 listening on socket FD 203
+Loop 6 listening on socket FD 207
+Loop 14 listening on socket FD 215
+Loop 15 listening on socket FD 217
+Loop 7 listening on socket FD 209
+Loop 17 listening on socket FD 216
+Loop 12 listening on socket FD 214
+Loop 18 listening on socket FD 219
+Loop 1 listening on socket FD 208
+Loop 21 listening on socket FD 221
+Loop 11 listening on socket FD 212
+Loop 23 listening on socket FD 223
+Loop 13 listening on socket FD 213
+Loop 0 listening on socket FD 202
+Loop 16 listening on socket FD 218
+Loop 22 listening on socket FD 222
+Loop 31 listening on socket FD 233
+Loop 29 listening on socket FD 229
+Loop 25 listening on socket FD 236
+Loop 66 listening on socket FD 238
+Loop 75 listening on socket FD 245
+Loop 20 listening on socket FD 220
+Loop 24 listening on socket FD 224
+Loop 27 listening on socket FD 225
+Loop 9 listening on socket FD 226
+Loop 26 listening on socket FD 227
+Loop 30 listening on socket FD 230
+Loop 68 listening on socket FD 231
+Loop 70 listening on socket FD 235
+Loop 69 listening on socket FD 234
+Loop 64 listening on socket FD 232
+Loop 78 listening on socket FD 241
+Loop 28 listening on socket FD 228
+Loop 65 listening on socket FD 239
+Loop 19 listening on socket FD 237
+Loop 74 listening on socket FD 240
+Loop 71 listening on socket FD 243
+Loop 73 listening on socket FD 244
+Loop 77 listening on socket FD 246
+Loop 76 listening on socket FD 242
+Loop 79 listening on socket FD 247
+Loop 86 listening on socket FD 255
+Loop 83 listening on socket FD 253
+Loop 82 listening on socket FD 249
+Loop 84 listening on socket FD 252
+Loop 85 listening on socket FD 254
+Loop 89 listening on socket FD 267
+Loop 81 listening on socket FD 250
+Loop 87 listening on socket FD 270
+Loop 92 listening on socket FD 256
+Loop 88 listening on socket FD 261
+Loop 80 listening on socket FD 248
+Loop 90 listening on socket FD 257
+Loop 67 listening on socket FD 259
+Loop 91 listening on socket FD 265
+Loop 94 listening on socket FD 260
+Loop 95 listening on socket FD 258
+Loop 93 listening on socket FD 264
+Loop 72 listening on socket FD 251
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 0 listening on socket FD 262
+Loop 6 listening on socket FD 269
+Loop 7 listening on socket FD 272
+Loop 3 listening on socket FD 271
+Loop 9 listening on socket FD 275
+Loop 5 listening on socket FD 268
+Loop 8 listening on socket FD 273
+Loop 1 listening on socket FD 263
+Loop 19 listening on socket FD 282
+Loop 10 listening on socket FD 274
+Loop 2 listening on socket FD 279
+Loop 17 listening on socket FD 280
+Loop 22 listening on socket FD 286
+Loop 29 listening on socket FD 292
+Loop 30 listening on socket FD 291
+Loop 31 listening on socket FD 293
+Loop 28 listening on socket FD 294
+Loop 64 listening on socket FD 296
+Loop 65 listening on socket FD 295
+Loop 68 listening on socket FD 299
+Loop 70 listening on socket FD 301
+Loop 71 listening on socket FD 305
+Loop 78 listening on socket FD 307
+Loop 79 listening on socket FD 310
+Loop 23 listening on socket FD 287
+Loop 16 listening on socket FD 281
+Loop 91 listening on socket FD 315
+Loop 89 listening on socket FD 320
+Loop 88 listening on socket FD 319
+Loop 21 listening on socket FD 285
+Loop 20 listening on socket FD 284
+Loop 4 listening on socket FD 266
+Loop 12 listening on socket FD 276
+Loop 11 listening on socket FD 278
+Loop 25 listening on socket FD 289
+Loop 26 listening on socket FD 288
+Loop 13 listening on socket FD 277
+Loop 18 listening on socket FD 283
+Loop 76 listening on socket FD 326
+Loop 27 listening on socket FD 290
+Loop 66 listening on socket FD 297
+Loop 69 listening on socket FD 300
+Loop 67 listening on socket FD 302
+Loop 24 listening on socket FD 298
+Loop 75 listening on socket FD 304
+Loop 72 listening on socket FD 303
+Loop 14 listening on socket FD 306
+Loop 80 listening on socket FD 308
+Loop 81 listening on socket FD 311
+Loop 82 listening on socket FD 309
+Loop 85 listening on socket FD 314
+Loop 84 listening on socket FD 313
+Loop 83 listening on socket FD 312
+Loop 87 listening on socket FD 317
+Loop 86 listening on socket FD 316
+Loop 92 listening on socket FD 322
+Loop 94 listening on socket FD 323
+Loop 90 listening on socket FD 318
+Loop 93 listening on socket FD 321
+Loop 74 listening on socket FD 324
+Loop 95 listening on socket FD 325
+Loop 15 listening on socket FD 327
+Loop 77 listening on socket FD 328
+Loop 73 listening on socket FD 329
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 10 listening on socket FD 338
+Loop 1 listening on socket FD 330
+Loop 5 listening on socket FD 333
+Loop 6 listening on socket FD 332
+Loop 14 listening on socket FD 341
+Loop 7 listening on socket FD 336
+Loop 12 listening on socket FD 348
+Loop 75 listening on socket FD 362
+Loop 74 listening on socket FD 365
+Loop 66 listening on socket FD 367
+Loop 80 listening on socket FD 368
+Loop 77 listening on socket FD 366
+Loop 71 listening on socket FD 373
+Loop 78 listening on socket FD 377
+Loop 89 listening on socket FD 383
+Loop 92 listening on socket FD 381
+Loop 8 listening on socket FD 340
+Loop 17 listening on socket FD 343
+Loop 11 listening on socket FD 339
+Loop 3 listening on socket FD 334
+Loop 2 listening on socket FD 337
+Loop 79 listening on socket FD 389
+Loop 24 listening on socket FD 390
+Loop 90 listening on socket FD 392
+Loop 93 listening on socket FD 393
+Loop 18 listening on socket FD 344
+Loop 0 listening on socket FD 335
+Loop 19 listening on socket FD 345
+Loop 20 listening on socket FD 347
+Loop 21 listening on socket FD 346
+Loop 22 listening on socket FD 349
+Loop 16 listening on socket FD 342
+Loop 4 listening on socket FD 331
+Loop 23 listening on socket FD 350
+Loop 26 listening on socket FD 351
+Loop 27 listening on socket FD 352
+Loop 28 listening on socket FD 354
+Loop 30 listening on socket FD 355
+Loop 15 listening on socket FD 353
+Loop 29 listening on socket FD 356
+Loop 65 listening on socket FD 357
+Loop 31 listening on socket FD 358
+Loop 64 listening on socket FD 360
+Loop 67 listening on socket FD 359
+Loop 68 listening on socket FD 361
+Loop 69 listening on socket FD 364
+Loop 72 listening on socket FD 363
+Loop 70 listening on socket FD 372
+Loop 83 listening on socket FD 370
+Loop 73 listening on socket FD 369
+Loop 87 listening on socket FD 379
+Loop 85 listening on socket FD 380
+Loop 84 listening on socket FD 376
+Loop 94 listening on socket FD 384
+Loop 81 listening on socket FD 371
+Loop 82 listening on socket FD 374
+Loop 86 listening on socket FD 382
+Loop 95 listening on socket FD 386
+Loop 9 listening on socket FD 378
+Loop 25 listening on socket FD 387
+Loop 88 listening on socket FD 375
+Loop 76 listening on socket FD 388
+Loop 13 listening on socket FD 385
+Loop 91 listening on socket FD 391
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443
diff --git a/site/static/logs/json-tls/4096/cardigan.log b/site/static/logs/json-tls/4096/cardigan.log
new file mode 100644
index 000000000..dc9adf17a
--- /dev/null
+++ b/site/static/logs/json-tls/4096/cardigan.log
@@ -0,0 +1,368 @@
+WARNING: Using incubator modules: jdk.incubator.vector
+Pinned cardigan-loop-0 to Linux CPU 0
+Pinned cardigan-loop-1 to Linux CPU 1
+Pinned cardigan-loop-2 to Linux CPU 2
+Pinned cardigan-loop-3 to Linux CPU 3
+Pinned cardigan-loop-4 to Linux CPU 4
+Pinned cardigan-loop-5 to Linux CPU 5
+Pinned cardigan-loop-6 to Linux CPU 6
+Pinned cardigan-loop-7 to Linux CPU 7
+Pinned cardigan-loop-8 to Linux CPU 8
+Pinned cardigan-loop-9 to Linux CPU 9
+Pinned cardigan-loop-10 to Linux CPU 10
+Pinned cardigan-loop-11 to Linux CPU 11
+Pinned cardigan-loop-12 to Linux CPU 12
+Pinned cardigan-loop-13 to Linux CPU 13
+Pinned cardigan-loop-14 to Linux CPU 14
+Pinned cardigan-loop-15 to Linux CPU 15
+Pinned cardigan-loop-16 to Linux CPU 16
+Pinned cardigan-loop-17 to Linux CPU 17
+Pinned cardigan-loop-18 to Linux CPU 18
+Pinned cardigan-loop-19 to Linux CPU 19
+Pinned cardigan-loop-20 to Linux CPU 20
+Pinned cardigan-loop-21 to Linux CPU 21
+Pinned cardigan-loop-22 to Linux CPU 22
+Pinned cardigan-loop-23 to Linux CPU 23
+Pinned cardigan-loop-24 to Linux CPU 24
+Pinned cardigan-loop-25 to Linux CPU 25
+Pinned cardigan-loop-26 to Linux CPU 26
+Pinned cardigan-loop-27 to Linux CPU 27
+Pinned cardigan-loop-28 to Linux CPU 28
+Pinned cardigan-loop-29 to Linux CPU 29
+Pinned cardigan-loop-30 to Linux CPU 30
+Pinned cardigan-loop-31 to Linux CPU 31
+Pinned cardigan-loop-64 to Linux CPU 64
+Pinned cardigan-loop-65 to Linux CPU 65
+Pinned cardigan-loop-66 to Linux CPU 66
+Pinned cardigan-loop-67 to Linux CPU 67
+Pinned cardigan-loop-68 to Linux CPU 68
+Pinned cardigan-loop-69 to Linux CPU 69
+Pinned cardigan-loop-70 to Linux CPU 70
+Pinned cardigan-loop-71 to Linux CPU 71
+Pinned cardigan-loop-72 to Linux CPU 72
+Pinned cardigan-loop-73 to Linux CPU 73
+Pinned cardigan-loop-74 to Linux CPU 74
+Pinned cardigan-loop-75 to Linux CPU 75
+Pinned cardigan-loop-76 to Linux CPU 76
+Pinned cardigan-loop-77 to Linux CPU 77
+Pinned cardigan-loop-78 to Linux CPU 78
+Pinned cardigan-loop-79 to Linux CPU 79
+Pinned cardigan-loop-80 to Linux CPU 80
+Pinned cardigan-loop-81 to Linux CPU 81
+Pinned cardigan-loop-82 to Linux CPU 82
+Pinned cardigan-loop-83 to Linux CPU 83
+Pinned cardigan-loop-84 to Linux CPU 84
+Pinned cardigan-loop-85 to Linux CPU 85
+Pinned cardigan-loop-86 to Linux CPU 86
+Pinned cardigan-loop-87 to Linux CPU 87
+Pinned cardigan-loop-88 to Linux CPU 88
+Pinned cardigan-loop-89 to Linux CPU 89
+Pinned cardigan-loop-90 to Linux CPU 90
+Pinned cardigan-loop-91 to Linux CPU 91
+Pinned cardigan-loop-92 to Linux CPU 92
+Pinned cardigan-loop-93 to Linux CPU 93
+Pinned cardigan-loop-94 to Linux CPU 94
+Pinned cardigan-loop-95 to Linux CPU 95
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 12 listening on socket FD 172
+Loop 2 listening on socket FD 198
+Loop 1 listening on socket FD 140
+Loop 65 listening on socket FD 151
+Loop 72 listening on socket FD 187
+Loop 70 listening on socket FD 199
+Loop 77 listening on socket FD 191
+Loop 21 listening on socket FD 182
+Loop 18 listening on socket FD 188
+Loop 85 listening on socket FD 193
+Loop 14 listening on socket FD 160
+Loop 7 listening on socket FD 150
+Loop 5 listening on socket FD 185
+Loop 11 listening on socket FD 190
+Loop 84 listening on socket FD 175
+Loop 20 listening on socket FD 162
+Loop 83 listening on socket FD 174
+Loop 92 listening on socket FD 186
+Loop 81 listening on socket FD 180
+Loop 80 listening on socket FD 155
+Loop 31 listening on socket FD 159
+Loop 94 listening on socket FD 153
+Loop 64 listening on socket FD 163
+Loop 67 listening on socket FD 176
+Loop 17 listening on socket FD 177
+Loop 15 listening on socket FD 189
+Loop 29 listening on socket FD 144
+Loop 24 listening on socket FD 194
+Loop 69 listening on socket FD 184
+Loop 4 listening on socket FD 195
+Loop 66 listening on socket FD 168
+Loop 3 listening on socket FD 157
+Loop 73 listening on socket FD 142
+Loop 87 listening on socket FD 152
+Loop 10 listening on socket FD 197
+Loop 95 listening on socket FD 196
+Loop 13 listening on socket FD 138
+Loop 68 listening on socket FD 192
+Loop 6 listening on socket FD 169
+Loop 91 listening on socket FD 178
+Loop 19 listening on socket FD 167
+Loop 16 listening on socket FD 183
+Loop 75 listening on socket FD 147
+Loop 0 listening on socket FD 141
+Loop 88 listening on socket FD 179
+Loop 71 listening on socket FD 161
+Loop 78 listening on socket FD 154
+Loop 30 listening on socket FD 143
+Loop 25 listening on socket FD 148
+Loop 76 listening on socket FD 156
+Loop 82 listening on socket FD 166
+Loop 79 listening on socket FD 139
+Loop 28 listening on socket FD 201
+Loop 9 listening on socket FD 164
+Loop 74 listening on socket FD 171
+Loop 22 listening on socket FD 173
+Loop 90 listening on socket FD 149
+Loop 27 listening on socket FD 170
+Loop 93 listening on socket FD 165
+Loop 8 listening on socket FD 158
+Loop 23 listening on socket FD 181
+Loop 89 listening on socket FD 146
+Loop 86 listening on socket FD 145
+Loop 26 listening on socket FD 200
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 1 listening on socket FD 203
+Loop 2 listening on socket FD 204
+Loop 5 listening on socket FD 206
+Loop 4 listening on socket FD 205
+Loop 3 listening on socket FD 207
+Loop 6 listening on socket FD 209
+Loop 7 listening on socket FD 208
+Loop 8 listening on socket FD 210
+Loop 10 listening on socket FD 212
+Loop 9 listening on socket FD 211
+Loop 11 listening on socket FD 213
+Loop 18 listening on socket FD 221
+Loop 19 listening on socket FD 219
+Loop 12 listening on socket FD 218
+Loop 0 listening on socket FD 202
+Loop 25 listening on socket FD 227
+Loop 28 listening on socket FD 226
+Loop 26 listening on socket FD 229
+Loop 30 listening on socket FD 230
+Loop 31 listening on socket FD 234
+Loop 64 listening on socket FD 231
+Loop 67 listening on socket FD 238
+Loop 71 listening on socket FD 239
+Loop 16 listening on socket FD 216
+Loop 17 listening on socket FD 220
+Loop 14 listening on socket FD 215
+Loop 21 listening on socket FD 222
+Loop 15 listening on socket FD 214
+Loop 13 listening on socket FD 217
+Loop 22 listening on socket FD 223
+Loop 23 listening on socket FD 224
+Loop 24 listening on socket FD 225
+Loop 29 listening on socket FD 228
+Loop 66 listening on socket FD 233
+Loop 68 listening on socket FD 235
+Loop 65 listening on socket FD 236
+Loop 27 listening on socket FD 232
+Loop 69 listening on socket FD 237
+Loop 82 listening on socket FD 253
+Loop 89 listening on socket FD 264
+Loop 83 listening on socket FD 255
+Loop 87 listening on socket FD 252
+Loop 81 listening on socket FD 245
+Loop 75 listening on socket FD 248
+Loop 73 listening on socket FD 249
+Loop 86 listening on socket FD 251
+Loop 88 listening on socket FD 263
+Loop 76 listening on socket FD 241
+Loop 78 listening on socket FD 256
+Loop 79 listening on socket FD 243
+Loop 77 listening on socket FD 244
+Loop 91 listening on socket FD 277
+Loop 80 listening on socket FD 247
+Loop 84 listening on socket FD 250
+Loop 85 listening on socket FD 254
+Loop 70 listening on socket FD 240
+Loop 20 listening on socket FD 266
+Loop 92 listening on socket FD 274
+Loop 94 listening on socket FD 267
+Loop 95 listening on socket FD 261
+Loop 74 listening on socket FD 242
+Loop 93 listening on socket FD 276
+Loop 72 listening on socket FD 246
+Loop 90 listening on socket FD 272
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 3 listening on socket FD 259
+Loop 7 listening on socket FD 265
+Loop 2 listening on socket FD 257
+Loop 11 listening on socket FD 268
+Loop 16 listening on socket FD 281
+Loop 9 listening on socket FD 269
+Loop 19 listening on socket FD 285
+Loop 15 listening on socket FD 282
+Loop 22 listening on socket FD 288
+Loop 10 listening on socket FD 270
+Loop 1 listening on socket FD 279
+Loop 4 listening on socket FD 258
+Loop 5 listening on socket FD 260
+Loop 12 listening on socket FD 275
+Loop 70 listening on socket FD 302
+Loop 71 listening on socket FD 303
+Loop 72 listening on socket FD 304
+Loop 75 listening on socket FD 305
+Loop 14 listening on socket FD 273
+Loop 82 listening on socket FD 308
+Loop 84 listening on socket FD 312
+Loop 6 listening on socket FD 262
+Loop 17 listening on socket FD 280
+Loop 18 listening on socket FD 284
+Loop 0 listening on socket FD 283
+Loop 93 listening on socket FD 320
+Loop 78 listening on socket FD 319
+Loop 8 listening on socket FD 271
+Loop 13 listening on socket FD 278
+Loop 21 listening on socket FD 287
+Loop 23 listening on socket FD 289
+Loop 20 listening on socket FD 286
+Loop 28 listening on socket FD 321
+Loop 24 listening on socket FD 290
+Loop 27 listening on socket FD 292
+Loop 31 listening on socket FD 295
+Loop 30 listening on socket FD 293
+Loop 26 listening on socket FD 291
+Loop 74 listening on socket FD 328
+Loop 29 listening on socket FD 294
+Loop 66 listening on socket FD 298
+Loop 64 listening on socket FD 296
+Loop 65 listening on socket FD 297
+Loop 67 listening on socket FD 299
+Loop 68 listening on socket FD 300
+Loop 25 listening on socket FD 324
+Loop 69 listening on socket FD 301
+Loop 76 listening on socket FD 306
+Loop 80 listening on socket FD 307
+Loop 83 listening on socket FD 309
+Loop 81 listening on socket FD 310
+Loop 85 listening on socket FD 311
+Loop 87 listening on socket FD 313
+Loop 86 listening on socket FD 314
+Loop 73 listening on socket FD 315
+Loop 89 listening on socket FD 317
+Loop 94 listening on socket FD 318
+Loop 88 listening on socket FD 316
+Loop 92 listening on socket FD 322
+Loop 95 listening on socket FD 323
+Loop 77 listening on socket FD 325
+Loop 91 listening on socket FD 326
+Loop 90 listening on socket FD 327
+Loop 79 listening on socket FD 329
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 1 listening on socket FD 330
+Loop 0 listening on socket FD 331
+Loop 7 listening on socket FD 337
+Loop 2 listening on socket FD 332
+Loop 3 listening on socket FD 333
+Loop 5 listening on socket FD 335
+Loop 4 listening on socket FD 334
+Loop 6 listening on socket FD 336
+Loop 9 listening on socket FD 338
+Loop 11 listening on socket FD 340
+Loop 16 listening on socket FD 341
+Loop 15 listening on socket FD 343
+Loop 17 listening on socket FD 342
+Loop 23 listening on socket FD 347
+Loop 10 listening on socket FD 339
+Loop 22 listening on socket FD 349
+Loop 27 listening on socket FD 353
+Loop 29 listening on socket FD 352
+Loop 65 listening on socket FD 358
+Loop 69 listening on socket FD 363
+Loop 67 listening on socket FD 360
+Loop 71 listening on socket FD 362
+Loop 77 listening on socket FD 367
+Loop 12 listening on socket FD 370
+Loop 83 listening on socket FD 372
+Loop 84 listening on socket FD 371
+Loop 14 listening on socket FD 378
+Loop 85 listening on socket FD 375
+Loop 18 listening on socket FD 345
+Loop 89 listening on socket FD 382
+Loop 92 listening on socket FD 386
+Loop 21 listening on socket FD 344
+Loop 93 listening on socket FD 389
+Loop 25 listening on socket FD 390
+Loop 20 listening on socket FD 346
+Loop 19 listening on socket FD 348
+Loop 24 listening on socket FD 350
+Loop 26 listening on socket FD 351
+Loop 90 listening on socket FD 392
+Loop 30 listening on socket FD 355
+Loop 31 listening on socket FD 356
+Loop 28 listening on socket FD 354
+Loop 64 listening on socket FD 357
+Loop 72 listening on socket FD 359
+Loop 66 listening on socket FD 364
+Loop 68 listening on socket FD 361
+Loop 70 listening on socket FD 365
+Loop 78 listening on socket FD 366
+Loop 76 listening on socket FD 368
+Loop 79 listening on socket FD 369
+Loop 80 listening on socket FD 373
+Loop 82 listening on socket FD 374
+Loop 13 listening on socket FD 377
+Loop 86 listening on socket FD 380
+Loop 87 listening on socket FD 379
+Loop 81 listening on socket FD 376
+Loop 8 listening on socket FD 383
+Loop 91 listening on socket FD 384
+Loop 88 listening on socket FD 381
+Loop 73 listening on socket FD 385
+Loop 94 listening on socket FD 388
+Loop 74 listening on socket FD 387
+Loop 95 listening on socket FD 391
+Loop 75 listening on socket FD 393
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443
+TLS/OpenSSL negotiated http/1.1; kTLS TX=true, RX=true, direct RX=false
diff --git a/site/static/logs/latency-10k/1024/cardigan.log b/site/static/logs/latency-10k/1024/cardigan.log
index 4e9d19f21..8fffac895 100644
--- a/site/static/logs/latency-10k/1024/cardigan.log
+++ b/site/static/logs/latency-10k/1024/cardigan.log
@@ -1,9 +1,4 @@
WARNING: Using incubator modules: jdk.incubator.vector
-Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
-Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
-Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
-Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
-Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
Pinned cardigan-loop-0 to Linux CPU 0
Pinned cardigan-loop-1 to Linux CPU 1
Pinned cardigan-loop-2 to Linux CPU 2
@@ -68,68 +63,305 @@ Pinned cardigan-loop-92 to Linux CPU 92
Pinned cardigan-loop-93 to Linux CPU 93
Pinned cardigan-loop-94 to Linux CPU 94
Pinned cardigan-loop-95 to Linux CPU 95
-Loop 26 listening on socket FD 177
-Loop 5 listening on socket FD 145
-Loop 11 listening on socket FD 161
-Loop 79 listening on socket FD 139
-Loop 23 listening on socket FD 181
-Loop 27 listening on socket FD 188
-Loop 67 listening on socket FD 155
-Loop 22 listening on socket FD 187
-Loop 72 listening on socket FD 194
-Loop 18 listening on socket FD 176
-Loop 25 listening on socket FD 174
-Loop 82 listening on socket FD 186
-Loop 86 listening on socket FD 142
-Loop 65 listening on socket FD 167
-Loop 29 listening on socket FD 152
-Loop 19 listening on socket FD 163
-Loop 8 listening on socket FD 151
-Loop 6 listening on socket FD 141
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 83 listening on socket FD 184
+Loop 94 listening on socket FD 194
+Loop 0 listening on socket FD 189
+Loop 21 listening on socket FD 180
+Loop 13 listening on socket FD 138
+Loop 19 listening on socket FD 161
+Loop 2 listening on socket FD 181
+Loop 77 listening on socket FD 201
+Loop 28 listening on socket FD 150
+Loop 4 listening on socket FD 200
+Loop 66 listening on socket FD 174
+Loop 65 listening on socket FD 163
+Loop 91 listening on socket FD 144
+Loop 73 listening on socket FD 157
+Loop 9 listening on socket FD 186
+Loop 80 listening on socket FD 197
+Loop 25 listening on socket FD 159
+Loop 3 listening on socket FD 148
+Loop 26 listening on socket FD 158
+Loop 82 listening on socket FD 173
+Loop 10 listening on socket FD 177
+Loop 8 listening on socket FD 139
+Loop 11 listening on socket FD 185
+Loop 16 listening on socket FD 160
+Loop 93 listening on socket FD 193
+Loop 30 listening on socket FD 164
+Loop 87 listening on socket FD 147
+Loop 20 listening on socket FD 182
+Loop 86 listening on socket FD 152
+Loop 22 listening on socket FD 191
+Loop 15 listening on socket FD 151
+Loop 12 listening on socket FD 170
+Loop 69 listening on socket FD 188
+Loop 70 listening on socket FD 198
+Loop 27 listening on socket FD 179
+Loop 67 listening on socket FD 166
+Loop 23 listening on socket FD 167
+Loop 74 listening on socket FD 154
+Loop 78 listening on socket FD 140
+Loop 14 listening on socket FD 176
+Loop 6 listening on socket FD 162
+Loop 5 listening on socket FD 146
+Loop 90 listening on socket FD 155
+Loop 24 listening on socket FD 190
Loop 1 listening on socket FD 168
-Loop 14 listening on socket FD 192
-Loop 13 listening on socket FD 199
-Loop 66 listening on socket FD 198
-Loop 73 listening on socket FD 164
Loop 84 listening on socket FD 169
-Loop 85 listening on socket FD 197
-Loop 70 listening on socket FD 160
-Loop 80 listening on socket FD 175
-Loop 31 listening on socket FD 180
-Loop 17 listening on socket FD 193
-Loop 77 listening on socket FD 185
-Loop 76 listening on socket FD 179
-Loop 81 listening on socket FD 158
-Loop 87 listening on socket FD 196
-Loop 64 listening on socket FD 170
-Loop 93 listening on socket FD 184
-Loop 28 listening on socket FD 143
-Loop 91 listening on socket FD 183
-Loop 3 listening on socket FD 166
-Loop 15 listening on socket FD 157
-Loop 95 listening on socket FD 190
-Loop 4 listening on socket FD 202
-Loop 68 listening on socket FD 153
-Loop 30 listening on socket FD 148
-Loop 89 listening on socket FD 144
-Loop 75 listening on socket FD 171
-Loop 21 listening on socket FD 191
-Loop 10 listening on socket FD 162
-Loop 94 listening on socket FD 182
-Loop 2 listening on socket FD 154
-Loop 78 listening on socket FD 189
-Loop 24 listening on socket FD 165
-Loop 83 listening on socket FD 172
-Loop 90 listening on socket FD 156
-Loop 12 listening on socket FD 138
-Loop 71 listening on socket FD 195
-Loop 7 listening on socket FD 159
-Loop 16 listening on socket FD 149
-Loop 9 listening on socket FD 147
-Loop 74 listening on socket FD 140
-Loop 69 listening on socket FD 173
-Loop 88 listening on socket FD 146
-Loop 20 listening on socket FD 178
-Loop 92 listening on socket FD 150
-Loop 0 listening on socket FD 200
-Cardigan HttpArena mode h1 is listening on 8080
+Loop 68 listening on socket FD 165
+Loop 71 listening on socket FD 172
+Loop 7 listening on socket FD 143
+Loop 31 listening on socket FD 149
+Loop 17 listening on socket FD 171
+Loop 18 listening on socket FD 187
+Loop 79 listening on socket FD 175
+Loop 95 listening on socket FD 141
+Loop 29 listening on socket FD 142
+Loop 75 listening on socket FD 199
+Loop 72 listening on socket FD 183
+Loop 81 listening on socket FD 195
+Loop 89 listening on socket FD 145
+Loop 88 listening on socket FD 178
+Loop 76 listening on socket FD 156
+Loop 92 listening on socket FD 192
+Loop 85 listening on socket FD 153
+Loop 64 listening on socket FD 196
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 0 listening on socket FD 202
+Loop 1 listening on socket FD 203
+Loop 4 listening on socket FD 205
+Loop 7 listening on socket FD 207
+Loop 6 listening on socket FD 210
+Loop 2 listening on socket FD 206
+Loop 3 listening on socket FD 204
+Loop 5 listening on socket FD 208
+Loop 11 listening on socket FD 212
+Loop 9 listening on socket FD 209
+Loop 8 listening on socket FD 211
+Loop 17 listening on socket FD 217
+Loop 10 listening on socket FD 220
+Loop 22 listening on socket FD 222
+Loop 24 listening on socket FD 223
+Loop 30 listening on socket FD 227
+Loop 23 listening on socket FD 231
+Loop 14 listening on socket FD 215
+Loop 12 listening on socket FD 213
+Loop 20 listening on socket FD 240
+Loop 13 listening on socket FD 214
+Loop 16 listening on socket FD 216
+Loop 18 listening on socket FD 219
+Loop 19 listening on socket FD 218
+Loop 21 listening on socket FD 221
+Loop 25 listening on socket FD 225
+Loop 29 listening on socket FD 224
+Loop 28 listening on socket FD 228
+Loop 31 listening on socket FD 230
+Loop 27 listening on socket FD 229
+Loop 26 listening on socket FD 226
+Loop 68 listening on socket FD 234
+Loop 15 listening on socket FD 232
+Loop 64 listening on socket FD 233
+Loop 65 listening on socket FD 235
+Loop 69 listening on socket FD 238
+Loop 70 listening on socket FD 236
+Loop 67 listening on socket FD 237
+Loop 71 listening on socket FD 239
+Loop 74 listening on socket FD 243
+Loop 77 listening on socket FD 246
+Loop 66 listening on socket FD 241
+Loop 75 listening on socket FD 244
+Loop 76 listening on socket FD 245
+Loop 72 listening on socket FD 242
+Loop 79 listening on socket FD 248
+Loop 93 listening on socket FD 261
+Loop 87 listening on socket FD 267
+Loop 90 listening on socket FD 265
+Loop 84 listening on socket FD 255
+Loop 82 listening on socket FD 250
+Loop 88 listening on socket FD 256
+Loop 73 listening on socket FD 252
+Loop 83 listening on socket FD 253
+Loop 80 listening on socket FD 251
+Loop 86 listening on socket FD 254
+Loop 81 listening on socket FD 249
+Loop 78 listening on socket FD 247
+Loop 94 listening on socket FD 259
+Loop 92 listening on socket FD 262
+Loop 95 listening on socket FD 260
+Loop 85 listening on socket FD 268
+Loop 91 listening on socket FD 264
+Loop 89 listening on socket FD 263
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 3 listening on socket FD 257
+Loop 2 listening on socket FD 258
+Loop 7 listening on socket FD 271
+Loop 11 listening on socket FD 272
+Loop 1 listening on socket FD 275
+Loop 10 listening on socket FD 274
+Loop 16 listening on socket FD 278
+Loop 17 listening on socket FD 280
+Loop 19 listening on socket FD 282
+Loop 22 listening on socket FD 285
+Loop 18 listening on socket FD 281
+Loop 4 listening on socket FD 266
+Loop 6 listening on socket FD 270
+Loop 9 listening on socket FD 273
+Loop 15 listening on socket FD 279
+Loop 30 listening on socket FD 291
+Loop 21 listening on socket FD 284
+Loop 69 listening on socket FD 299
+Loop 20 listening on socket FD 283
+Loop 12 listening on socket FD 276
+Loop 81 listening on socket FD 308
+Loop 27 listening on socket FD 309
+Loop 73 listening on socket FD 311
+Loop 5 listening on socket FD 269
+Loop 83 listening on socket FD 314
+Loop 13 listening on socket FD 312
+Loop 85 listening on socket FD 316
+Loop 87 listening on socket FD 319
+Loop 66 listening on socket FD 320
+Loop 92 listening on socket FD 317
+Loop 0 listening on socket FD 277
+Loop 93 listening on socket FD 322
+Loop 14 listening on socket FD 326
+Loop 23 listening on socket FD 286
+Loop 26 listening on socket FD 288
+Loop 24 listening on socket FD 287
+Loop 25 listening on socket FD 289
+Loop 29 listening on socket FD 290
+Loop 31 listening on socket FD 292
+Loop 65 listening on socket FD 295
+Loop 64 listening on socket FD 293
+Loop 67 listening on socket FD 296
+Loop 88 listening on socket FD 329
+Loop 8 listening on socket FD 294
+Loop 68 listening on socket FD 297
+Loop 70 listening on socket FD 298
+Loop 71 listening on socket FD 300
+Loop 76 listening on socket FD 303
+Loop 28 listening on socket FD 302
+Loop 75 listening on socket FD 304
+Loop 72 listening on socket FD 301
+Loop 82 listening on socket FD 310
+Loop 80 listening on socket FD 307
+Loop 78 listening on socket FD 306
+Loop 77 listening on socket FD 305
+Loop 74 listening on socket FD 313
+Loop 84 listening on socket FD 318
+Loop 86 listening on socket FD 315
+Loop 90 listening on socket FD 321
+Loop 91 listening on socket FD 323
+Loop 94 listening on socket FD 325
+Loop 95 listening on socket FD 324
+Loop 79 listening on socket FD 327
+Loop 89 listening on socket FD 328
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 2 listening on socket FD 330
+Loop 1 listening on socket FD 331
+Loop 3 listening on socket FD 333
+Loop 0 listening on socket FD 332
+Loop 9 listening on socket FD 340
+Loop 5 listening on socket FD 335
+Loop 4 listening on socket FD 334
+Loop 6 listening on socket FD 336
+Loop 8 listening on socket FD 338
+Loop 12 listening on socket FD 342
+Loop 17 listening on socket FD 344
+Loop 15 listening on socket FD 345
+Loop 19 listening on socket FD 347
+Loop 7 listening on socket FD 337
+Loop 11 listening on socket FD 339
+Loop 23 listening on socket FD 352
+Loop 27 listening on socket FD 354
+Loop 16 listening on socket FD 343
+Loop 13 listening on socket FD 341
+Loop 18 listening on socket FD 348
+Loop 64 listening on socket FD 364
+Loop 68 listening on socket FD 360
+Loop 74 listening on socket FD 370
+Loop 75 listening on socket FD 368
+Loop 20 listening on socket FD 346
+Loop 21 listening on socket FD 349
+Loop 22 listening on socket FD 350
+Loop 81 listening on socket FD 376
+Loop 82 listening on socket FD 377
+Loop 88 listening on socket FD 382
+Loop 79 listening on socket FD 383
+Loop 87 listening on socket FD 384
+Loop 95 listening on socket FD 388
+Loop 24 listening on socket FD 351
+Loop 83 listening on socket FD 381
+Loop 26 listening on socket FD 353
+Loop 31 listening on socket FD 358
+Loop 29 listening on socket FD 355
+Loop 30 listening on socket FD 357
+Loop 93 listening on socket FD 392
+Loop 94 listening on socket FD 393
+Loop 25 listening on socket FD 356
+Loop 66 listening on socket FD 359
+Loop 65 listening on socket FD 362
+Loop 67 listening on socket FD 363
+Loop 69 listening on socket FD 366
+Loop 71 listening on socket FD 361
+Loop 70 listening on socket FD 365
+Loop 72 listening on socket FD 369
+Loop 76 listening on socket FD 371
+Loop 28 listening on socket FD 367
+Loop 73 listening on socket FD 372
+Loop 86 listening on socket FD 380
+Loop 14 listening on socket FD 373
+Loop 78 listening on socket FD 374
+Loop 80 listening on socket FD 375
+Loop 84 listening on socket FD 378
+Loop 85 listening on socket FD 379
+Loop 90 listening on socket FD 385
+Loop 91 listening on socket FD 386
+Loop 89 listening on socket FD 387
+Loop 10 listening on socket FD 389
+Loop 92 listening on socket FD 390
+Loop 77 listening on socket FD 391
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443
diff --git a/site/static/logs/latency-1m/1024/cardigan.log b/site/static/logs/latency-1m/1024/cardigan.log
index b49c128bb..934905338 100644
--- a/site/static/logs/latency-1m/1024/cardigan.log
+++ b/site/static/logs/latency-1m/1024/cardigan.log
@@ -1,9 +1,4 @@
WARNING: Using incubator modules: jdk.incubator.vector
-Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
-Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
-Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
-Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
-Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
Pinned cardigan-loop-0 to Linux CPU 0
Pinned cardigan-loop-1 to Linux CPU 1
Pinned cardigan-loop-2 to Linux CPU 2
@@ -68,68 +63,305 @@ Pinned cardigan-loop-92 to Linux CPU 92
Pinned cardigan-loop-93 to Linux CPU 93
Pinned cardigan-loop-94 to Linux CPU 94
Pinned cardigan-loop-95 to Linux CPU 95
-Loop 25 listening on socket FD 181
-Loop 23 listening on socket FD 153
-Loop 17 listening on socket FD 145
-Loop 91 listening on socket FD 149
-Loop 26 listening on socket FD 150
-Loop 69 listening on socket FD 201
-Loop 29 listening on socket FD 156
-Loop 72 listening on socket FD 195
-Loop 70 listening on socket FD 170
-Loop 7 listening on socket FD 169
-Loop 68 listening on socket FD 167
-Loop 95 listening on socket FD 173
-Loop 30 listening on socket FD 179
-Loop 0 listening on socket FD 185
-Loop 28 listening on socket FD 184
-Loop 66 listening on socket FD 166
-Loop 80 listening on socket FD 155
-Loop 83 listening on socket FD 140
-Loop 11 listening on socket FD 190
-Loop 81 listening on socket FD 146
-Loop 22 listening on socket FD 142
-Loop 75 listening on socket FD 200
-Loop 31 listening on socket FD 177
-Loop 71 listening on socket FD 178
-Loop 64 listening on socket FD 174
-Loop 14 listening on socket FD 141
-Loop 16 listening on socket FD 154
-Loop 24 listening on socket FD 151
-Loop 76 listening on socket FD 152
-Loop 90 listening on socket FD 192
-Loop 1 listening on socket FD 164
-Loop 19 listening on socket FD 147
-Loop 78 listening on socket FD 159
-Loop 94 listening on socket FD 158
-Loop 21 listening on socket FD 148
-Loop 4 listening on socket FD 182
-Loop 18 listening on socket FD 139
-Loop 9 listening on socket FD 194
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 23 listening on socket FD 156
+Loop 69 listening on socket FD 179
+Loop 1 listening on socket FD 178
Loop 2 listening on socket FD 191
-Loop 74 listening on socket FD 198
-Loop 15 listening on socket FD 197
-Loop 73 listening on socket FD 188
-Loop 84 listening on socket FD 196
-Loop 82 listening on socket FD 163
-Loop 85 listening on socket FD 165
-Loop 88 listening on socket FD 186
-Loop 20 listening on socket FD 143
-Loop 10 listening on socket FD 176
-Loop 93 listening on socket FD 138
-Loop 13 listening on socket FD 187
-Loop 3 listening on socket FD 162
-Loop 12 listening on socket FD 189
-Loop 79 listening on socket FD 168
-Loop 89 listening on socket FD 180
-Loop 65 listening on socket FD 144
-Loop 86 listening on socket FD 199
-Loop 92 listening on socket FD 183
-Loop 27 listening on socket FD 171
-Loop 6 listening on socket FD 172
-Loop 67 listening on socket FD 160
-Loop 8 listening on socket FD 175
-Loop 77 listening on socket FD 157
-Loop 5 listening on socket FD 161
-Loop 87 listening on socket FD 193
-Cardigan HttpArena mode h1 is listening on 8080
+Loop 67 listening on socket FD 145
+Loop 6 listening on socket FD 166
+Loop 22 listening on socket FD 148
+Loop 66 listening on socket FD 199
+Loop 12 listening on socket FD 184
+Loop 28 listening on socket FD 176
+Loop 13 listening on socket FD 172
+Loop 30 listening on socket FD 154
+Loop 90 listening on socket FD 161
+Loop 8 listening on socket FD 195
+Loop 84 listening on socket FD 158
+Loop 75 listening on socket FD 197
+Loop 11 listening on socket FD 150
+Loop 86 listening on socket FD 163
+Loop 10 listening on socket FD 138
+Loop 78 listening on socket FD 194
+Loop 76 listening on socket FD 189
+Loop 15 listening on socket FD 168
+Loop 65 listening on socket FD 182
+Loop 68 listening on socket FD 183
+Loop 82 listening on socket FD 142
+Loop 9 listening on socket FD 162
+Loop 80 listening on socket FD 151
+Loop 87 listening on socket FD 186
+Loop 14 listening on socket FD 193
+Loop 74 listening on socket FD 202
+Loop 27 listening on socket FD 174
+Loop 18 listening on socket FD 157
+Loop 73 listening on socket FD 175
+Loop 83 listening on socket FD 146
+Loop 70 listening on socket FD 155
+Loop 7 listening on socket FD 152
+Loop 93 listening on socket FD 185
+Loop 91 listening on socket FD 169
+Loop 16 listening on socket FD 171
+Loop 24 listening on socket FD 181
+Loop 20 listening on socket FD 165
+Loop 79 listening on socket FD 187
+Loop 71 listening on socket FD 170
+Loop 88 listening on socket FD 141
+Loop 85 listening on socket FD 153
+Loop 26 listening on socket FD 164
+Loop 5 listening on socket FD 160
+Loop 19 listening on socket FD 143
+Loop 72 listening on socket FD 144
+Loop 92 listening on socket FD 149
+Loop 94 listening on socket FD 140
+Loop 81 listening on socket FD 192
+Loop 25 listening on socket FD 139
+Loop 17 listening on socket FD 177
+Loop 29 listening on socket FD 147
+Loop 0 listening on socket FD 188
+Loop 64 listening on socket FD 198
+Loop 3 listening on socket FD 173
+Loop 4 listening on socket FD 167
+Loop 21 listening on socket FD 190
+Loop 77 listening on socket FD 200
+Loop 89 listening on socket FD 196
+Loop 95 listening on socket FD 159
+Loop 31 listening on socket FD 180
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 0 listening on socket FD 201
+Loop 2 listening on socket FD 204
+Loop 3 listening on socket FD 205
+Loop 4 listening on socket FD 206
+Loop 11 listening on socket FD 212
+Loop 5 listening on socket FD 208
+Loop 7 listening on socket FD 210
+Loop 10 listening on socket FD 209
+Loop 6 listening on socket FD 207
+Loop 9 listening on socket FD 211
+Loop 15 listening on socket FD 214
+Loop 1 listening on socket FD 203
+Loop 14 listening on socket FD 213
+Loop 16 listening on socket FD 216
+Loop 17 listening on socket FD 217
+Loop 8 listening on socket FD 215
+Loop 21 listening on socket FD 223
+Loop 28 listening on socket FD 226
+Loop 24 listening on socket FD 224
+Loop 18 listening on socket FD 218
+Loop 72 listening on socket FD 234
+Loop 77 listening on socket FD 238
+Loop 12 listening on socket FD 243
+Loop 13 listening on socket FD 244
+Loop 19 listening on socket FD 219
+Loop 20 listening on socket FD 220
+Loop 22 listening on socket FD 221
+Loop 23 listening on socket FD 222
+Loop 26 listening on socket FD 225
+Loop 71 listening on socket FD 227
+Loop 30 listening on socket FD 241
+Loop 81 listening on socket FD 239
+Loop 80 listening on socket FD 242
+Loop 73 listening on socket FD 240
+Loop 78 listening on socket FD 245
+Loop 66 listening on socket FD 246
+Loop 84 listening on socket FD 247
+Loop 31 listening on socket FD 229
+Loop 86 listening on socket FD 249
+Loop 92 listening on socket FD 256
+Loop 83 listening on socket FD 269
+Loop 88 listening on socket FD 258
+Loop 67 listening on socket FD 233
+Loop 93 listening on socket FD 254
+Loop 27 listening on socket FD 228
+Loop 70 listening on socket FD 237
+Loop 65 listening on socket FD 232
+Loop 25 listening on socket FD 235
+Loop 87 listening on socket FD 251
+Loop 68 listening on socket FD 231
+Loop 69 listening on socket FD 236
+Loop 64 listening on socket FD 230
+Loop 89 listening on socket FD 253
+Loop 91 listening on socket FD 255
+Loop 90 listening on socket FD 252
+Loop 79 listening on socket FD 248
+Loop 85 listening on socket FD 250
+Loop 74 listening on socket FD 257
+Loop 76 listening on socket FD 265
+Loop 75 listening on socket FD 266
+Loop 29 listening on socket FD 274
+Loop 82 listening on socket FD 267
+Loop 94 listening on socket FD 259
+Loop 95 listening on socket FD 271
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 3 listening on socket FD 263
+Loop 6 listening on socket FD 268
+Loop 2 listening on socket FD 262
+Loop 1 listening on socket FD 260
+Loop 7 listening on socket FD 270
+Loop 8 listening on socket FD 273
+Loop 5 listening on socket FD 272
+Loop 9 listening on socket FD 275
+Loop 10 listening on socket FD 276
+Loop 11 listening on socket FD 277
+Loop 14 listening on socket FD 280
+Loop 4 listening on socket FD 264
+Loop 17 listening on socket FD 283
+Loop 18 listening on socket FD 284
+Loop 20 listening on socket FD 287
+Loop 21 listening on socket FD 286
+Loop 13 listening on socket FD 279
+Loop 12 listening on socket FD 278
+Loop 0 listening on socket FD 261
+Loop 15 listening on socket FD 281
+Loop 31 listening on socket FD 294
+Loop 16 listening on socket FD 282
+Loop 66 listening on socket FD 298
+Loop 67 listening on socket FD 300
+Loop 19 listening on socket FD 285
+Loop 22 listening on socket FD 288
+Loop 25 listening on socket FD 290
+Loop 24 listening on socket FD 289
+Loop 23 listening on socket FD 291
+Loop 26 listening on socket FD 292
+Loop 81 listening on socket FD 312
+Loop 27 listening on socket FD 293
+Loop 30 listening on socket FD 295
+Loop 65 listening on socket FD 299
+Loop 85 listening on socket FD 313
+Loop 89 listening on socket FD 321
+Loop 95 listening on socket FD 328
+Loop 93 listening on socket FD 329
+Loop 29 listening on socket FD 296
+Loop 64 listening on socket FD 297
+Loop 69 listening on socket FD 302
+Loop 70 listening on socket FD 303
+Loop 68 listening on socket FD 301
+Loop 71 listening on socket FD 304
+Loop 72 listening on socket FD 306
+Loop 74 listening on socket FD 307
+Loop 73 listening on socket FD 308
+Loop 75 listening on socket FD 309
+Loop 82 listening on socket FD 311
+Loop 87 listening on socket FD 315
+Loop 28 listening on socket FD 305
+Loop 80 listening on socket FD 310
+Loop 83 listening on socket FD 318
+Loop 86 listening on socket FD 316
+Loop 88 listening on socket FD 317
+Loop 76 listening on socket FD 322
+Loop 91 listening on socket FD 319
+Loop 90 listening on socket FD 320
+Loop 77 listening on socket FD 323
+Loop 78 listening on socket FD 324
+Loop 94 listening on socket FD 325
+Loop 92 listening on socket FD 326
+Loop 84 listening on socket FD 314
+Loop 79 listening on socket FD 327
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 4 listening on socket FD 334
+Loop 5 listening on socket FD 335
+Loop 1 listening on socket FD 330
+Loop 2 listening on socket FD 332
+Loop 7 listening on socket FD 337
+Loop 3 listening on socket FD 333
+Loop 15 listening on socket FD 344
+Loop 18 listening on socket FD 347
+Loop 6 listening on socket FD 336
+Loop 9 listening on socket FD 339
+Loop 11 listening on socket FD 340
+Loop 23 listening on socket FD 351
+Loop 25 listening on socket FD 353
+Loop 28 listening on socket FD 356
+Loop 8 listening on socket FD 338
+Loop 31 listening on socket FD 359
+Loop 21 listening on socket FD 361
+Loop 64 listening on socket FD 362
+Loop 68 listening on socket FD 363
+Loop 67 listening on socket FD 364
+Loop 13 listening on socket FD 341
+Loop 71 listening on socket FD 369
+Loop 70 listening on socket FD 373
+Loop 77 listening on socket FD 372
+Loop 80 listening on socket FD 377
+Loop 79 listening on socket FD 376
+Loop 81 listening on socket FD 378
+Loop 82 listening on socket FD 380
+Loop 14 listening on socket FD 343
+Loop 86 listening on socket FD 382
+Loop 85 listening on socket FD 381
+Loop 91 listening on socket FD 383
+Loop 92 listening on socket FD 386
+Loop 12 listening on socket FD 342
+Loop 0 listening on socket FD 331
+Loop 16 listening on socket FD 346
+Loop 17 listening on socket FD 345
+Loop 19 listening on socket FD 349
+Loop 90 listening on socket FD 390
+Loop 20 listening on socket FD 348
+Loop 94 listening on socket FD 391
+Loop 22 listening on socket FD 350
+Loop 24 listening on socket FD 352
+Loop 27 listening on socket FD 355
+Loop 26 listening on socket FD 354
+Loop 30 listening on socket FD 357
+Loop 93 listening on socket FD 393
+Loop 29 listening on socket FD 358
+Loop 10 listening on socket FD 360
+Loop 66 listening on socket FD 367
+Loop 65 listening on socket FD 366
+Loop 69 listening on socket FD 368
+Loop 76 listening on socket FD 370
+Loop 72 listening on socket FD 365
+Loop 78 listening on socket FD 375
+Loop 74 listening on socket FD 371
+Loop 75 listening on socket FD 374
+Loop 73 listening on socket FD 379
+Loop 89 listening on socket FD 384
+Loop 83 listening on socket FD 385
+Loop 84 listening on socket FD 387
+Loop 87 listening on socket FD 388
+Loop 88 listening on socket FD 389
+Loop 95 listening on socket FD 392
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443
diff --git a/site/static/logs/limited-conn/4096/cardigan.log b/site/static/logs/limited-conn/4096/cardigan.log
index 5aaa2ee1d..8e366dbcb 100644
--- a/site/static/logs/limited-conn/4096/cardigan.log
+++ b/site/static/logs/limited-conn/4096/cardigan.log
@@ -1,9 +1,4 @@
WARNING: Using incubator modules: jdk.incubator.vector
-Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
-Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
-Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
-Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
-Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
Pinned cardigan-loop-0 to Linux CPU 0
Pinned cardigan-loop-1 to Linux CPU 1
Pinned cardigan-loop-2 to Linux CPU 2
@@ -68,68 +63,305 @@ Pinned cardigan-loop-92 to Linux CPU 92
Pinned cardigan-loop-93 to Linux CPU 93
Pinned cardigan-loop-94 to Linux CPU 94
Pinned cardigan-loop-95 to Linux CPU 95
-Loop 20 listening on socket FD 180
-Loop 29 listening on socket FD 165
-Loop 0 listening on socket FD 166
-Loop 26 listening on socket FD 186
-Loop 25 listening on socket FD 192
-Loop 18 listening on socket FD 194
-Loop 15 listening on socket FD 140
-Loop 30 listening on socket FD 181
-Loop 95 listening on socket FD 182
-Loop 24 listening on socket FD 178
-Loop 3 listening on socket FD 153
-Loop 74 listening on socket FD 161
-Loop 4 listening on socket FD 195
-Loop 5 listening on socket FD 138
-Loop 68 listening on socket FD 143
-Loop 77 listening on socket FD 199
-Loop 78 listening on socket FD 196
-Loop 85 listening on socket FD 152
-Loop 16 listening on socket FD 159
-Loop 86 listening on socket FD 147
-Loop 81 listening on socket FD 185
-Loop 17 listening on socket FD 174
-Loop 8 listening on socket FD 168
-Loop 6 listening on socket FD 177
-Loop 72 listening on socket FD 146
-Loop 1 listening on socket FD 201
-Loop 91 listening on socket FD 173
-Loop 88 listening on socket FD 164
-Loop 84 listening on socket FD 150
-Loop 94 listening on socket FD 162
-Loop 92 listening on socket FD 154
-Loop 21 listening on socket FD 148
-Loop 10 listening on socket FD 190
-Loop 83 listening on socket FD 197
-Loop 75 listening on socket FD 191
-Loop 69 listening on socket FD 142
-Loop 9 listening on socket FD 139
-Loop 79 listening on socket FD 198
-Loop 67 listening on socket FD 141
-Loop 71 listening on socket FD 157
-Loop 2 listening on socket FD 171
-Loop 73 listening on socket FD 149
-Loop 93 listening on socket FD 163
-Loop 76 listening on socket FD 193
-Loop 14 listening on socket FD 158
-Loop 65 listening on socket FD 189
-Loop 70 listening on socket FD 156
-Loop 23 listening on socket FD 187
-Loop 7 listening on socket FD 145
-Loop 28 listening on socket FD 151
-Loop 11 listening on socket FD 184
-Loop 27 listening on socket FD 167
-Loop 82 listening on socket FD 176
-Loop 80 listening on socket FD 200
-Loop 31 listening on socket FD 183
-Loop 13 listening on socket FD 175
-Loop 87 listening on socket FD 155
-Loop 89 listening on socket FD 160
-Loop 19 listening on socket FD 172
-Loop 66 listening on socket FD 188
-Loop 90 listening on socket FD 170
-Loop 12 listening on socket FD 144
-Loop 22 listening on socket FD 179
-Loop 64 listening on socket FD 169
-Cardigan HttpArena mode h1 is listening on 8080
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 21 listening on socket FD 172
+Loop 86 listening on socket FD 169
+Loop 93 listening on socket FD 138
+Loop 0 listening on socket FD 163
+Loop 70 listening on socket FD 200
+Loop 84 listening on socket FD 192
+Loop 91 listening on socket FD 190
+Loop 79 listening on socket FD 161
+Loop 28 listening on socket FD 185
+Loop 13 listening on socket FD 144
+Loop 71 listening on socket FD 158
+Loop 85 listening on socket FD 171
+Loop 18 listening on socket FD 150
+Loop 27 listening on socket FD 180
+Loop 20 listening on socket FD 145
+Loop 30 listening on socket FD 197
+Loop 19 listening on socket FD 183
+Loop 90 listening on socket FD 194
+Loop 26 listening on socket FD 177
+Loop 4 listening on socket FD 168
+Loop 80 listening on socket FD 167
+Loop 16 listening on socket FD 176
+Loop 29 listening on socket FD 181
+Loop 94 listening on socket FD 199
+Loop 9 listening on socket FD 165
+Loop 25 listening on socket FD 174
+Loop 1 listening on socket FD 170
+Loop 22 listening on socket FD 189
+Loop 12 listening on socket FD 139
+Loop 76 listening on socket FD 159
+Loop 72 listening on socket FD 141
+Loop 31 listening on socket FD 147
+Loop 6 listening on socket FD 166
+Loop 23 listening on socket FD 151
+Loop 74 listening on socket FD 173
+Loop 11 listening on socket FD 201
+Loop 15 listening on socket FD 178
+Loop 77 listening on socket FD 198
+Loop 5 listening on socket FD 186
+Loop 14 listening on socket FD 187
+Loop 95 listening on socket FD 149
+Loop 24 listening on socket FD 191
+Loop 7 listening on socket FD 179
+Loop 68 listening on socket FD 188
+Loop 64 listening on socket FD 146
+Loop 78 listening on socket FD 184
+Loop 67 listening on socket FD 162
+Loop 3 listening on socket FD 160
+Loop 2 listening on socket FD 148
+Loop 82 listening on socket FD 196
+Loop 8 listening on socket FD 193
+Loop 89 listening on socket FD 156
+Loop 81 listening on socket FD 153
+Loop 10 listening on socket FD 142
+Loop 87 listening on socket FD 152
+Loop 73 listening on socket FD 140
+Loop 88 listening on socket FD 175
+Loop 66 listening on socket FD 157
+Loop 69 listening on socket FD 164
+Loop 17 listening on socket FD 195
+Loop 92 listening on socket FD 143
+Loop 83 listening on socket FD 155
+Loop 75 listening on socket FD 182
+Loop 65 listening on socket FD 154
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 1 listening on socket FD 203
+Loop 3 listening on socket FD 204
+Loop 2 listening on socket FD 205
+Loop 7 listening on socket FD 209
+Loop 5 listening on socket FD 206
+Loop 4 listening on socket FD 207
+Loop 8 listening on socket FD 210
+Loop 9 listening on socket FD 212
+Loop 6 listening on socket FD 208
+Loop 11 listening on socket FD 213
+Loop 13 listening on socket FD 215
+Loop 16 listening on socket FD 217
+Loop 18 listening on socket FD 221
+Loop 10 listening on socket FD 211
+Loop 14 listening on socket FD 216
+Loop 12 listening on socket FD 214
+Loop 26 listening on socket FD 227
+Loop 27 listening on socket FD 226
+Loop 67 listening on socket FD 234
+Loop 15 listening on socket FD 218
+Loop 70 listening on socket FD 240
+Loop 72 listening on socket FD 237
+Loop 17 listening on socket FD 219
+Loop 74 listening on socket FD 241
+Loop 28 listening on socket FD 242
+Loop 78 listening on socket FD 244
+Loop 82 listening on socket FD 247
+Loop 19 listening on socket FD 220
+Loop 22 listening on socket FD 223
+Loop 20 listening on socket FD 222
+Loop 21 listening on socket FD 224
+Loop 0 listening on socket FD 202
+Loop 23 listening on socket FD 225
+Loop 29 listening on socket FD 230
+Loop 30 listening on socket FD 229
+Loop 24 listening on socket FD 228
+Loop 64 listening on socket FD 232
+Loop 31 listening on socket FD 231
+Loop 65 listening on socket FD 233
+Loop 66 listening on socket FD 235
+Loop 68 listening on socket FD 238
+Loop 69 listening on socket FD 239
+Loop 73 listening on socket FD 243
+Loop 71 listening on socket FD 236
+Loop 85 listening on socket FD 250
+Loop 84 listening on socket FD 249
+Loop 81 listening on socket FD 271
+Loop 92 listening on socket FD 265
+Loop 77 listening on socket FD 264
+Loop 87 listening on socket FD 252
+Loop 90 listening on socket FD 255
+Loop 88 listening on socket FD 253
+Loop 83 listening on socket FD 251
+Loop 86 listening on socket FD 254
+Loop 80 listening on socket FD 246
+Loop 79 listening on socket FD 245
+Loop 94 listening on socket FD 270
+Loop 91 listening on socket FD 261
+Loop 25 listening on socket FD 257
+Loop 93 listening on socket FD 259
+Loop 95 listening on socket FD 258
+Loop 89 listening on socket FD 256
+Loop 75 listening on socket FD 248
+Loop 76 listening on socket FD 260
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 2 listening on socket FD 263
+Loop 5 listening on socket FD 267
+Loop 7 listening on socket FD 272
+Loop 6 listening on socket FD 269
+Loop 1 listening on socket FD 262
+Loop 0 listening on socket FD 277
+Loop 10 listening on socket FD 275
+Loop 17 listening on socket FD 281
+Loop 18 listening on socket FD 282
+Loop 9 listening on socket FD 280
+Loop 21 listening on socket FD 286
+Loop 22 listening on socket FD 287
+Loop 23 listening on socket FD 288
+Loop 12 listening on socket FD 273
+Loop 13 listening on socket FD 274
+Loop 30 listening on socket FD 294
+Loop 29 listening on socket FD 295
+Loop 15 listening on socket FD 278
+Loop 4 listening on socket FD 268
+Loop 70 listening on socket FD 301
+Loop 65 listening on socket FD 302
+Loop 74 listening on socket FD 305
+Loop 72 listening on socket FD 310
+Loop 81 listening on socket FD 312
+Loop 82 listening on socket FD 313
+Loop 73 listening on socket FD 314
+Loop 84 listening on socket FD 311
+Loop 8 listening on socket FD 276
+Loop 89 listening on socket FD 319
+Loop 11 listening on socket FD 321
+Loop 16 listening on socket FD 279
+Loop 93 listening on socket FD 328
+Loop 25 listening on socket FD 329
+Loop 3 listening on socket FD 266
+Loop 20 listening on socket FD 285
+Loop 19 listening on socket FD 284
+Loop 14 listening on socket FD 283
+Loop 26 listening on socket FD 290
+Loop 24 listening on socket FD 289
+Loop 31 listening on socket FD 293
+Loop 28 listening on socket FD 292
+Loop 27 listening on socket FD 291
+Loop 68 listening on socket FD 298
+Loop 64 listening on socket FD 297
+Loop 66 listening on socket FD 296
+Loop 67 listening on socket FD 300
+Loop 69 listening on socket FD 299
+Loop 71 listening on socket FD 303
+Loop 75 listening on socket FD 304
+Loop 80 listening on socket FD 306
+Loop 76 listening on socket FD 307
+Loop 79 listening on socket FD 308
+Loop 78 listening on socket FD 309
+Loop 83 listening on socket FD 315
+Loop 86 listening on socket FD 316
+Loop 87 listening on socket FD 318
+Loop 85 listening on socket FD 317
+Loop 88 listening on socket FD 320
+Loop 77 listening on socket FD 323
+Loop 95 listening on socket FD 322
+Loop 94 listening on socket FD 327
+Loop 92 listening on socket FD 324
+Loop 90 listening on socket FD 326
+Loop 91 listening on socket FD 325
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 6 listening on socket FD 337
+Loop 2 listening on socket FD 335
+Loop 4 listening on socket FD 336
+Loop 3 listening on socket FD 334
+Loop 0 listening on socket FD 330
+Loop 5 listening on socket FD 333
+Loop 7 listening on socket FD 332
+Loop 1 listening on socket FD 331
+Loop 8 listening on socket FD 338
+Loop 11 listening on socket FD 339
+Loop 10 listening on socket FD 341
+Loop 18 listening on socket FD 347
+Loop 21 listening on socket FD 350
+Loop 22 listening on socket FD 351
+Loop 17 listening on socket FD 346
+Loop 14 listening on socket FD 340
+Loop 15 listening on socket FD 344
+Loop 20 listening on socket FD 349
+Loop 9 listening on socket FD 352
+Loop 16 listening on socket FD 345
+Loop 12 listening on socket FD 342
+Loop 26 listening on socket FD 356
+Loop 29 listening on socket FD 357
+Loop 31 listening on socket FD 361
+Loop 66 listening on socket FD 362
+Loop 27 listening on socket FD 360
+Loop 64 listening on socket FD 363
+Loop 13 listening on socket FD 343
+Loop 19 listening on socket FD 348
+Loop 72 listening on socket FD 370
+Loop 75 listening on socket FD 369
+Loop 79 listening on socket FD 372
+Loop 73 listening on socket FD 374
+Loop 81 listening on socket FD 376
+Loop 23 listening on socket FD 353
+Loop 86 listening on socket FD 378
+Loop 25 listening on socket FD 355
+Loop 92 listening on socket FD 384
+Loop 24 listening on socket FD 354
+Loop 30 listening on socket FD 358
+Loop 28 listening on socket FD 359
+Loop 69 listening on socket FD 365
+Loop 91 listening on socket FD 388
+Loop 70 listening on socket FD 367
+Loop 68 listening on socket FD 364
+Loop 67 listening on socket FD 366
+Loop 71 listening on socket FD 368
+Loop 77 listening on socket FD 393
+Loop 76 listening on socket FD 371
+Loop 78 listening on socket FD 373
+Loop 82 listening on socket FD 375
+Loop 80 listening on socket FD 377
+Loop 84 listening on socket FD 379
+Loop 88 listening on socket FD 382
+Loop 85 listening on socket FD 381
+Loop 87 listening on socket FD 380
+Loop 90 listening on socket FD 385
+Loop 65 listening on socket FD 383
+Loop 94 listening on socket FD 386
+Loop 95 listening on socket FD 387
+Loop 83 listening on socket FD 389
+Loop 93 listening on socket FD 390
+Loop 89 listening on socket FD 391
+Loop 74 listening on socket FD 392
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443
diff --git a/site/static/logs/pipelined/4096/cardigan.log b/site/static/logs/pipelined/4096/cardigan.log
index 06377758f..93f6716c9 100644
--- a/site/static/logs/pipelined/4096/cardigan.log
+++ b/site/static/logs/pipelined/4096/cardigan.log
@@ -1,9 +1,4 @@
WARNING: Using incubator modules: jdk.incubator.vector
-Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
-Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
-Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
-Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
-Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
Pinned cardigan-loop-0 to Linux CPU 0
Pinned cardigan-loop-1 to Linux CPU 1
Pinned cardigan-loop-2 to Linux CPU 2
@@ -68,68 +63,305 @@ Pinned cardigan-loop-92 to Linux CPU 92
Pinned cardigan-loop-93 to Linux CPU 93
Pinned cardigan-loop-94 to Linux CPU 94
Pinned cardigan-loop-95 to Linux CPU 95
-Loop 86 listening on socket FD 195
-Loop 19 listening on socket FD 196
-Loop 74 listening on socket FD 158
-Loop 5 listening on socket FD 140
-Loop 71 listening on socket FD 141
-Loop 82 listening on socket FD 171
-Loop 23 listening on socket FD 201
-Loop 73 listening on socket FD 155
-Loop 70 listening on socket FD 188
-Loop 91 listening on socket FD 192
-Loop 90 listening on socket FD 191
-Loop 89 listening on socket FD 173
-Loop 6 listening on socket FD 139
-Loop 10 listening on socket FD 149
-Loop 72 listening on socket FD 160
-Loop 11 listening on socket FD 163
-Loop 88 listening on socket FD 185
-Loop 24 listening on socket FD 147
-Loop 4 listening on socket FD 138
-Loop 85 listening on socket FD 193
-Loop 21 listening on socket FD 182
-Loop 0 listening on socket FD 144
-Loop 26 listening on socket FD 166
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 90 listening on socket FD 197
+Loop 29 listening on socket FD 190
+Loop 12 listening on socket FD 140
+Loop 91 listening on socket FD 166
+Loop 64 listening on socket FD 189
+Loop 5 listening on socket FD 176
+Loop 25 listening on socket FD 150
+Loop 84 listening on socket FD 172
+Loop 19 listening on socket FD 157
+Loop 93 listening on socket FD 191
+Loop 92 listening on socket FD 164
+Loop 82 listening on socket FD 165
+Loop 6 listening on socket FD 151
+Loop 17 listening on socket FD 180
+Loop 68 listening on socket FD 179
+Loop 0 listening on socket FD 162
+Loop 94 listening on socket FD 188
+Loop 72 listening on socket FD 184
+Loop 76 listening on socket FD 141
+Loop 18 listening on socket FD 199
+Loop 28 listening on socket FD 163
+Loop 77 listening on socket FD 147
+Loop 1 listening on socket FD 182
+Loop 2 listening on socket FD 156
+Loop 21 listening on socket FD 143
+Loop 30 listening on socket FD 169
+Loop 14 listening on socket FD 193
+Loop 85 listening on socket FD 177
+Loop 71 listening on socket FD 183
+Loop 4 listening on socket FD 145
+Loop 7 listening on socket FD 152
+Loop 27 listening on socket FD 173
+Loop 65 listening on socket FD 196
+Loop 86 listening on socket FD 186
+Loop 13 listening on socket FD 171
+Loop 89 listening on socket FD 155
+Loop 88 listening on socket FD 181
+Loop 20 listening on socket FD 159
+Loop 80 listening on socket FD 138
+Loop 75 listening on socket FD 153
+Loop 69 listening on socket FD 175
+Loop 23 listening on socket FD 178
+Loop 15 listening on socket FD 201
+Loop 70 listening on socket FD 149
Loop 66 listening on socket FD 167
-Loop 95 listening on socket FD 153
-Loop 79 listening on socket FD 178
-Loop 93 listening on socket FD 197
-Loop 15 listening on socket FD 183
-Loop 92 listening on socket FD 152
-Loop 28 listening on socket FD 161
-Loop 18 listening on socket FD 168
-Loop 31 listening on socket FD 165
-Loop 29 listening on socket FD 159
-Loop 83 listening on socket FD 199
-Loop 65 listening on socket FD 180
-Loop 76 listening on socket FD 150
-Loop 78 listening on socket FD 142
-Loop 30 listening on socket FD 154
-Loop 13 listening on socket FD 169
-Loop 68 listening on socket FD 184
-Loop 3 listening on socket FD 189
-Loop 27 listening on socket FD 172
-Loop 7 listening on socket FD 174
-Loop 64 listening on socket FD 156
-Loop 8 listening on socket FD 162
-Loop 20 listening on socket FD 146
-Loop 9 listening on socket FD 157
-Loop 67 listening on socket FD 177
-Loop 87 listening on socket FD 198
-Loop 75 listening on socket FD 179
-Loop 1 listening on socket FD 151
-Loop 81 listening on socket FD 170
-Loop 80 listening on socket FD 175
-Loop 94 listening on socket FD 148
-Loop 25 listening on socket FD 145
-Loop 17 listening on socket FD 190
-Loop 14 listening on socket FD 200
-Loop 22 listening on socket FD 194
-Loop 12 listening on socket FD 176
-Loop 84 listening on socket FD 181
-Loop 2 listening on socket FD 143
-Loop 16 listening on socket FD 164
-Loop 77 listening on socket FD 187
-Loop 69 listening on socket FD 186
-Cardigan HttpArena mode h1 is listening on 8080
+Loop 73 listening on socket FD 200
+Loop 9 listening on socket FD 148
+Loop 16 listening on socket FD 170
+Loop 74 listening on socket FD 160
+Loop 87 listening on socket FD 154
+Loop 31 listening on socket FD 161
+Loop 81 listening on socket FD 158
+Loop 24 listening on socket FD 139
+Loop 11 listening on socket FD 168
+Loop 83 listening on socket FD 187
+Loop 79 listening on socket FD 194
+Loop 10 listening on socket FD 185
+Loop 78 listening on socket FD 198
+Loop 95 listening on socket FD 195
+Loop 8 listening on socket FD 146
+Loop 26 listening on socket FD 142
+Loop 22 listening on socket FD 174
+Loop 67 listening on socket FD 144
+Loop 3 listening on socket FD 192
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 4 listening on socket FD 204
+Loop 0 listening on socket FD 203
+Loop 6 listening on socket FD 207
+Loop 2 listening on socket FD 205
+Loop 5 listening on socket FD 206
+Loop 7 listening on socket FD 208
+Loop 10 listening on socket FD 210
+Loop 8 listening on socket FD 209
+Loop 14 listening on socket FD 213
+Loop 12 listening on socket FD 212
+Loop 16 listening on socket FD 211
+Loop 19 listening on socket FD 219
+Loop 18 listening on socket FD 217
+Loop 13 listening on socket FD 214
+Loop 11 listening on socket FD 216
+Loop 30 listening on socket FD 231
+Loop 17 listening on socket FD 215
+Loop 65 listening on socket FD 234
+Loop 3 listening on socket FD 202
+Loop 68 listening on socket FD 236
+Loop 21 listening on socket FD 222
+Loop 75 listening on socket FD 241
+Loop 80 listening on socket FD 247
+Loop 20 listening on socket FD 223
+Loop 9 listening on socket FD 221
+Loop 15 listening on socket FD 218
+Loop 1 listening on socket FD 220
+Loop 24 listening on socket FD 225
+Loop 26 listening on socket FD 227
+Loop 27 listening on socket FD 226
+Loop 25 listening on socket FD 228
+Loop 23 listening on socket FD 224
+Loop 29 listening on socket FD 230
+Loop 28 listening on socket FD 229
+Loop 31 listening on socket FD 232
+Loop 64 listening on socket FD 233
+Loop 67 listening on socket FD 235
+Loop 70 listening on socket FD 237
+Loop 69 listening on socket FD 238
+Loop 71 listening on socket FD 239
+Loop 73 listening on socket FD 240
+Loop 78 listening on socket FD 242
+Loop 72 listening on socket FD 244
+Loop 76 listening on socket FD 243
+Loop 66 listening on socket FD 245
+Loop 77 listening on socket FD 246
+Loop 82 listening on socket FD 251
+Loop 83 listening on socket FD 249
+Loop 86 listening on socket FD 254
+Loop 87 listening on socket FD 258
+Loop 91 listening on socket FD 273
+Loop 85 listening on socket FD 253
+Loop 84 listening on socket FD 248
+Loop 79 listening on socket FD 267
+Loop 74 listening on socket FD 252
+Loop 90 listening on socket FD 255
+Loop 93 listening on socket FD 264
+Loop 94 listening on socket FD 266
+Loop 81 listening on socket FD 272
+Loop 22 listening on socket FD 259
+Loop 92 listening on socket FD 260
+Loop 89 listening on socket FD 256
+Loop 88 listening on socket FD 250
+Loop 95 listening on socket FD 257
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 7 listening on socket FD 265
+Loop 5 listening on socket FD 262
+Loop 6 listening on socket FD 268
+Loop 11 listening on socket FD 270
+Loop 10 listening on socket FD 274
+Loop 18 listening on socket FD 281
+Loop 21 listening on socket FD 285
+Loop 20 listening on socket FD 284
+Loop 9 listening on socket FD 271
+Loop 14 listening on socket FD 277
+Loop 24 listening on socket FD 289
+Loop 12 listening on socket FD 275
+Loop 26 listening on socket FD 290
+Loop 8 listening on socket FD 276
+Loop 1 listening on socket FD 291
+Loop 65 listening on socket FD 296
+Loop 69 listening on socket FD 301
+Loop 68 listening on socket FD 298
+Loop 79 listening on socket FD 303
+Loop 13 listening on socket FD 279
+Loop 73 listening on socket FD 306
+Loop 15 listening on socket FD 278
+Loop 82 listening on socket FD 314
+Loop 76 listening on socket FD 316
+Loop 72 listening on socket FD 318
+Loop 87 listening on socket FD 320
+Loop 95 listening on socket FD 322
+Loop 92 listening on socket FD 324
+Loop 16 listening on socket FD 280
+Loop 19 listening on socket FD 283
+Loop 17 listening on socket FD 282
+Loop 81 listening on socket FD 326
+Loop 22 listening on socket FD 286
+Loop 23 listening on socket FD 287
+Loop 89 listening on socket FD 328
+Loop 3 listening on socket FD 261
+Loop 0 listening on socket FD 269
+Loop 25 listening on socket FD 288
+Loop 29 listening on socket FD 292
+Loop 4 listening on socket FD 263
+Loop 31 listening on socket FD 295
+Loop 27 listening on socket FD 293
+Loop 66 listening on socket FD 297
+Loop 67 listening on socket FD 299
+Loop 64 listening on socket FD 300
+Loop 71 listening on socket FD 302
+Loop 80 listening on socket FD 304
+Loop 75 listening on socket FD 305
+Loop 83 listening on socket FD 308
+Loop 78 listening on socket FD 307
+Loop 84 listening on socket FD 311
+Loop 2 listening on socket FD 310
+Loop 28 listening on socket FD 309
+Loop 85 listening on socket FD 313
+Loop 86 listening on socket FD 312
+Loop 70 listening on socket FD 315
+Loop 77 listening on socket FD 317
+Loop 30 listening on socket FD 294
+Loop 74 listening on socket FD 319
+Loop 93 listening on socket FD 321
+Loop 91 listening on socket FD 323
+Loop 94 listening on socket FD 325
+Loop 88 listening on socket FD 327
+Loop 90 listening on socket FD 329
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 5 listening on socket FD 332
+Loop 7 listening on socket FD 331
+Loop 4 listening on socket FD 334
+Loop 0 listening on socket FD 330
+Loop 3 listening on socket FD 337
+Loop 9 listening on socket FD 339
+Loop 18 listening on socket FD 345
+Loop 16 listening on socket FD 343
+Loop 2 listening on socket FD 336
+Loop 23 listening on socket FD 351
+Loop 1 listening on socket FD 333
+Loop 8 listening on socket FD 338
+Loop 11 listening on socket FD 352
+Loop 10 listening on socket FD 340
+Loop 31 listening on socket FD 358
+Loop 25 listening on socket FD 356
+Loop 6 listening on socket FD 335
+Loop 67 listening on socket FD 363
+Loop 69 listening on socket FD 365
+Loop 14 listening on socket FD 364
+Loop 74 listening on socket FD 368
+Loop 20 listening on socket FD 347
+Loop 81 listening on socket FD 370
+Loop 77 listening on socket FD 371
+Loop 85 listening on socket FD 375
+Loop 86 listening on socket FD 376
+Loop 87 listening on socket FD 377
+Loop 88 listening on socket FD 378
+Loop 75 listening on socket FD 380
+Loop 92 listening on socket FD 379
+Loop 91 listening on socket FD 381
+Loop 13 listening on socket FD 341
+Loop 79 listening on socket FD 384
+Loop 90 listening on socket FD 385
+Loop 12 listening on socket FD 342
+Loop 19 listening on socket FD 346
+Loop 21 listening on socket FD 349
+Loop 17 listening on socket FD 344
+Loop 22 listening on socket FD 348
+Loop 24 listening on socket FD 353
+Loop 29 listening on socket FD 354
+Loop 94 listening on socket FD 392
+Loop 15 listening on socket FD 350
+Loop 27 listening on socket FD 355
+Loop 30 listening on socket FD 357
+Loop 64 listening on socket FD 359
+Loop 65 listening on socket FD 360
+Loop 66 listening on socket FD 361
+Loop 68 listening on socket FD 362
+Loop 70 listening on socket FD 366
+Loop 71 listening on socket FD 367
+Loop 80 listening on socket FD 369
+Loop 83 listening on socket FD 373
+Loop 82 listening on socket FD 372
+Loop 84 listening on socket FD 374
+Loop 72 listening on socket FD 382
+Loop 73 listening on socket FD 383
+Loop 26 listening on socket FD 387
+Loop 28 listening on socket FD 386
+Loop 76 listening on socket FD 388
+Loop 89 listening on socket FD 389
+Loop 78 listening on socket FD 390
+Loop 93 listening on socket FD 391
+Loop 95 listening on socket FD 393
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443
diff --git a/site/static/logs/static-h2/1024/cardigan.log b/site/static/logs/static-h2/1024/cardigan.log
new file mode 100644
index 000000000..91961434c
--- /dev/null
+++ b/site/static/logs/static-h2/1024/cardigan.log
@@ -0,0 +1,368 @@
+WARNING: Using incubator modules: jdk.incubator.vector
+Pinned cardigan-loop-0 to Linux CPU 0
+Pinned cardigan-loop-1 to Linux CPU 1
+Pinned cardigan-loop-2 to Linux CPU 2
+Pinned cardigan-loop-3 to Linux CPU 3
+Pinned cardigan-loop-4 to Linux CPU 4
+Pinned cardigan-loop-5 to Linux CPU 5
+Pinned cardigan-loop-6 to Linux CPU 6
+Pinned cardigan-loop-7 to Linux CPU 7
+Pinned cardigan-loop-8 to Linux CPU 8
+Pinned cardigan-loop-9 to Linux CPU 9
+Pinned cardigan-loop-10 to Linux CPU 10
+Pinned cardigan-loop-11 to Linux CPU 11
+Pinned cardigan-loop-12 to Linux CPU 12
+Pinned cardigan-loop-13 to Linux CPU 13
+Pinned cardigan-loop-14 to Linux CPU 14
+Pinned cardigan-loop-15 to Linux CPU 15
+Pinned cardigan-loop-16 to Linux CPU 16
+Pinned cardigan-loop-17 to Linux CPU 17
+Pinned cardigan-loop-18 to Linux CPU 18
+Pinned cardigan-loop-19 to Linux CPU 19
+Pinned cardigan-loop-20 to Linux CPU 20
+Pinned cardigan-loop-21 to Linux CPU 21
+Pinned cardigan-loop-22 to Linux CPU 22
+Pinned cardigan-loop-23 to Linux CPU 23
+Pinned cardigan-loop-24 to Linux CPU 24
+Pinned cardigan-loop-25 to Linux CPU 25
+Pinned cardigan-loop-26 to Linux CPU 26
+Pinned cardigan-loop-27 to Linux CPU 27
+Pinned cardigan-loop-28 to Linux CPU 28
+Pinned cardigan-loop-29 to Linux CPU 29
+Pinned cardigan-loop-30 to Linux CPU 30
+Pinned cardigan-loop-31 to Linux CPU 31
+Pinned cardigan-loop-64 to Linux CPU 64
+Pinned cardigan-loop-65 to Linux CPU 65
+Pinned cardigan-loop-66 to Linux CPU 66
+Pinned cardigan-loop-67 to Linux CPU 67
+Pinned cardigan-loop-68 to Linux CPU 68
+Pinned cardigan-loop-69 to Linux CPU 69
+Pinned cardigan-loop-70 to Linux CPU 70
+Pinned cardigan-loop-71 to Linux CPU 71
+Pinned cardigan-loop-72 to Linux CPU 72
+Pinned cardigan-loop-73 to Linux CPU 73
+Pinned cardigan-loop-74 to Linux CPU 74
+Pinned cardigan-loop-75 to Linux CPU 75
+Pinned cardigan-loop-76 to Linux CPU 76
+Pinned cardigan-loop-77 to Linux CPU 77
+Pinned cardigan-loop-78 to Linux CPU 78
+Pinned cardigan-loop-79 to Linux CPU 79
+Pinned cardigan-loop-80 to Linux CPU 80
+Pinned cardigan-loop-81 to Linux CPU 81
+Pinned cardigan-loop-82 to Linux CPU 82
+Pinned cardigan-loop-83 to Linux CPU 83
+Pinned cardigan-loop-84 to Linux CPU 84
+Pinned cardigan-loop-85 to Linux CPU 85
+Pinned cardigan-loop-86 to Linux CPU 86
+Pinned cardigan-loop-87 to Linux CPU 87
+Pinned cardigan-loop-88 to Linux CPU 88
+Pinned cardigan-loop-89 to Linux CPU 89
+Pinned cardigan-loop-90 to Linux CPU 90
+Pinned cardigan-loop-91 to Linux CPU 91
+Pinned cardigan-loop-92 to Linux CPU 92
+Pinned cardigan-loop-93 to Linux CPU 93
+Pinned cardigan-loop-94 to Linux CPU 94
+Pinned cardigan-loop-95 to Linux CPU 95
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 22 listening on socket FD 151
+Loop 79 listening on socket FD 146
+Loop 75 listening on socket FD 157
+Loop 91 listening on socket FD 162
+Loop 20 listening on socket FD 147
+Loop 85 listening on socket FD 174
+Loop 69 listening on socket FD 197
+Loop 76 listening on socket FD 139
+Loop 67 listening on socket FD 193
+Loop 19 listening on socket FD 149
+Loop 15 listening on socket FD 141
+Loop 71 listening on socket FD 199
+Loop 4 listening on socket FD 153
+Loop 16 listening on socket FD 142
+Loop 3 listening on socket FD 175
+Loop 72 listening on socket FD 161
+Loop 73 listening on socket FD 200
+Loop 6 listening on socket FD 166
+Loop 74 listening on socket FD 180
+Loop 68 listening on socket FD 195
+Loop 10 listening on socket FD 164
+Loop 92 listening on socket FD 158
+Loop 94 listening on socket FD 154
+Loop 93 listening on socket FD 171
+Loop 29 listening on socket FD 189
+Loop 7 listening on socket FD 156
+Loop 82 listening on socket FD 177
+Loop 11 listening on socket FD 183
+Loop 88 listening on socket FD 179
+Loop 24 listening on socket FD 181
+Loop 23 listening on socket FD 148
+Loop 89 listening on socket FD 167
+Loop 70 listening on socket FD 198
+Loop 87 listening on socket FD 152
+Loop 2 listening on socket FD 138
+Loop 5 listening on socket FD 140
+Loop 28 listening on socket FD 190
+Loop 9 listening on socket FD 201
+Loop 25 listening on socket FD 182
+Loop 14 listening on socket FD 173
+Loop 26 listening on socket FD 184
+Loop 27 listening on socket FD 186
+Loop 31 listening on socket FD 196
+Loop 95 listening on socket FD 194
+Loop 21 listening on socket FD 145
+Loop 64 listening on socket FD 187
+Loop 65 listening on socket FD 191
+Loop 30 listening on socket FD 188
+Loop 81 listening on socket FD 160
+Loop 17 listening on socket FD 143
+Loop 83 listening on socket FD 176
+Loop 18 listening on socket FD 150
+Loop 0 listening on socket FD 165
+Loop 78 listening on socket FD 163
+Loop 80 listening on socket FD 155
+Loop 84 listening on socket FD 178
+Loop 13 listening on socket FD 172
+Loop 86 listening on socket FD 170
+Loop 12 listening on socket FD 168
+Loop 77 listening on socket FD 159
+Loop 90 listening on socket FD 169
+Loop 1 listening on socket FD 144
+Loop 66 listening on socket FD 192
+Loop 8 listening on socket FD 185
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 0 listening on socket FD 203
+Loop 1 listening on socket FD 202
+Loop 7 listening on socket FD 208
+Loop 3 listening on socket FD 205
+Loop 2 listening on socket FD 204
+Loop 4 listening on socket FD 206
+Loop 5 listening on socket FD 207
+Loop 8 listening on socket FD 211
+Loop 6 listening on socket FD 209
+Loop 11 listening on socket FD 212
+Loop 15 listening on socket FD 213
+Loop 16 listening on socket FD 216
+Loop 18 listening on socket FD 217
+Loop 17 listening on socket FD 218
+Loop 13 listening on socket FD 219
+Loop 19 listening on socket FD 221
+Loop 21 listening on socket FD 223
+Loop 9 listening on socket FD 210
+Loop 10 listening on socket FD 214
+Loop 14 listening on socket FD 215
+Loop 22 listening on socket FD 225
+Loop 28 listening on socket FD 228
+Loop 31 listening on socket FD 230
+Loop 65 listening on socket FD 233
+Loop 68 listening on socket FD 234
+Loop 72 listening on socket FD 239
+Loop 69 listening on socket FD 237
+Loop 74 listening on socket FD 242
+Loop 77 listening on socket FD 245
+Loop 12 listening on socket FD 220
+Loop 20 listening on socket FD 222
+Loop 23 listening on socket FD 224
+Loop 29 listening on socket FD 227
+Loop 27 listening on socket FD 226
+Loop 30 listening on socket FD 229
+Loop 64 listening on socket FD 232
+Loop 26 listening on socket FD 231
+Loop 67 listening on socket FD 236
+Loop 66 listening on socket FD 235
+Loop 71 listening on socket FD 238
+Loop 70 listening on socket FD 240
+Loop 73 listening on socket FD 243
+Loop 80 listening on socket FD 246
+Loop 82 listening on socket FD 248
+Loop 76 listening on socket FD 241
+Loop 83 listening on socket FD 252
+Loop 89 listening on socket FD 255
+Loop 84 listening on socket FD 249
+Loop 87 listening on socket FD 250
+Loop 88 listening on socket FD 254
+Loop 81 listening on socket FD 247
+Loop 94 listening on socket FD 269
+Loop 95 listening on socket FD 257
+Loop 93 listening on socket FD 271
+Loop 79 listening on socket FD 259
+Loop 85 listening on socket FD 251
+Loop 86 listening on socket FD 256
+Loop 75 listening on socket FD 244
+Loop 91 listening on socket FD 253
+Loop 92 listening on socket FD 267
+Loop 24 listening on socket FD 272
+Loop 25 listening on socket FD 261
+Loop 78 listening on socket FD 258
+Loop 90 listening on socket FD 270
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 0 listening on socket FD 260
+Loop 4 listening on socket FD 262
+Loop 7 listening on socket FD 264
+Loop 14 listening on socket FD 275
+Loop 18 listening on socket FD 277
+Loop 10 listening on socket FD 268
+Loop 5 listening on socket FD 265
+Loop 13 listening on socket FD 281
+Loop 21 listening on socket FD 286
+Loop 11 listening on socket FD 273
+Loop 12 listening on socket FD 276
+Loop 24 listening on socket FD 289
+Loop 22 listening on socket FD 288
+Loop 3 listening on socket FD 263
+Loop 28 listening on socket FD 292
+Loop 30 listening on socket FD 294
+Loop 1 listening on socket FD 278
+Loop 64 listening on socket FD 295
+Loop 31 listening on socket FD 296
+Loop 19 listening on socket FD 279
+Loop 8 listening on socket FD 274
+Loop 71 listening on socket FD 300
+Loop 6 listening on socket FD 266
+Loop 17 listening on socket FD 283
+Loop 16 listening on socket FD 282
+Loop 74 listening on socket FD 307
+Loop 73 listening on socket FD 304
+Loop 79 listening on socket FD 310
+Loop 2 listening on socket FD 280
+Loop 83 listening on socket FD 314
+Loop 85 listening on socket FD 317
+Loop 86 listening on socket FD 318
+Loop 93 listening on socket FD 319
+Loop 15 listening on socket FD 284
+Loop 20 listening on socket FD 285
+Loop 78 listening on socket FD 324
+Loop 95 listening on socket FD 328
+Loop 23 listening on socket FD 287
+Loop 25 listening on socket FD 290
+Loop 77 listening on socket FD 329
+Loop 26 listening on socket FD 291
+Loop 29 listening on socket FD 293
+Loop 66 listening on socket FD 298
+Loop 65 listening on socket FD 297
+Loop 68 listening on socket FD 299
+Loop 69 listening on socket FD 301
+Loop 70 listening on socket FD 303
+Loop 67 listening on socket FD 302
+Loop 9 listening on socket FD 306
+Loop 80 listening on socket FD 309
+Loop 76 listening on socket FD 308
+Loop 82 listening on socket FD 305
+Loop 81 listening on socket FD 311
+Loop 87 listening on socket FD 316
+Loop 84 listening on socket FD 315
+Loop 75 listening on socket FD 312
+Loop 27 listening on socket FD 313
+Loop 91 listening on socket FD 320
+Loop 88 listening on socket FD 321
+Loop 92 listening on socket FD 325
+Loop 90 listening on socket FD 322
+Loop 94 listening on socket FD 327
+Loop 89 listening on socket FD 326
+Loop 72 listening on socket FD 323
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 1 listening on socket FD 331
+Loop 0 listening on socket FD 330
+Loop 2 listening on socket FD 332
+Loop 4 listening on socket FD 334
+Loop 3 listening on socket FD 333
+Loop 6 listening on socket FD 337
+Loop 8 listening on socket FD 338
+Loop 5 listening on socket FD 335
+Loop 7 listening on socket FD 336
+Loop 9 listening on socket FD 339
+Loop 19 listening on socket FD 350
+Loop 23 listening on socket FD 354
+Loop 26 listening on socket FD 353
+Loop 24 listening on socket FD 355
+Loop 29 listening on socket FD 356
+Loop 30 listening on socket FD 358
+Loop 66 listening on socket FD 362
+Loop 69 listening on socket FD 364
+Loop 27 listening on socket FD 365
+Loop 71 listening on socket FD 367
+Loop 76 listening on socket FD 371
+Loop 13 listening on socket FD 341
+Loop 12 listening on socket FD 340
+Loop 86 listening on socket FD 381
+Loop 84 listening on socket FD 376
+Loop 82 listening on socket FD 378
+Loop 89 listening on socket FD 380
+Loop 90 listening on socket FD 385
+Loop 78 listening on socket FD 388
+Loop 15 listening on socket FD 346
+Loop 11 listening on socket FD 342
+Loop 95 listening on socket FD 390
+Loop 17 listening on socket FD 345
+Loop 91 listening on socket FD 391
+Loop 10 listening on socket FD 344
+Loop 16 listening on socket FD 347
+Loop 14 listening on socket FD 343
+Loop 18 listening on socket FD 349
+Loop 20 listening on socket FD 351
+Loop 21 listening on socket FD 348
+Loop 22 listening on socket FD 352
+Loop 28 listening on socket FD 357
+Loop 31 listening on socket FD 359
+Loop 65 listening on socket FD 360
+Loop 68 listening on socket FD 363
+Loop 25 listening on socket FD 361
+Loop 70 listening on socket FD 366
+Loop 67 listening on socket FD 368
+Loop 75 listening on socket FD 369
+Loop 72 listening on socket FD 370
+Loop 77 listening on socket FD 372
+Loop 80 listening on socket FD 373
+Loop 81 listening on socket FD 375
+Loop 79 listening on socket FD 374
+Loop 85 listening on socket FD 377
+Loop 83 listening on socket FD 379
+Loop 92 listening on socket FD 382
+Loop 87 listening on socket FD 383
+Loop 64 listening on socket FD 384
+Loop 93 listening on socket FD 387
+Loop 94 listening on socket FD 386
+Loop 88 listening on socket FD 389
+Loop 74 listening on socket FD 393
+Loop 73 listening on socket FD 392
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443
+TLS/OpenSSL negotiated h2; kTLS TX=true, RX=true, direct RX=false
diff --git a/site/static/logs/static-h2/256/cardigan.log b/site/static/logs/static-h2/256/cardigan.log
new file mode 100644
index 000000000..1240dd87e
--- /dev/null
+++ b/site/static/logs/static-h2/256/cardigan.log
@@ -0,0 +1,368 @@
+WARNING: Using incubator modules: jdk.incubator.vector
+Pinned cardigan-loop-0 to Linux CPU 0
+Pinned cardigan-loop-1 to Linux CPU 1
+Pinned cardigan-loop-2 to Linux CPU 2
+Pinned cardigan-loop-3 to Linux CPU 3
+Pinned cardigan-loop-4 to Linux CPU 4
+Pinned cardigan-loop-5 to Linux CPU 5
+Pinned cardigan-loop-6 to Linux CPU 6
+Pinned cardigan-loop-7 to Linux CPU 7
+Pinned cardigan-loop-8 to Linux CPU 8
+Pinned cardigan-loop-9 to Linux CPU 9
+Pinned cardigan-loop-10 to Linux CPU 10
+Pinned cardigan-loop-11 to Linux CPU 11
+Pinned cardigan-loop-12 to Linux CPU 12
+Pinned cardigan-loop-13 to Linux CPU 13
+Pinned cardigan-loop-14 to Linux CPU 14
+Pinned cardigan-loop-15 to Linux CPU 15
+Pinned cardigan-loop-16 to Linux CPU 16
+Pinned cardigan-loop-17 to Linux CPU 17
+Pinned cardigan-loop-18 to Linux CPU 18
+Pinned cardigan-loop-19 to Linux CPU 19
+Pinned cardigan-loop-20 to Linux CPU 20
+Pinned cardigan-loop-21 to Linux CPU 21
+Pinned cardigan-loop-22 to Linux CPU 22
+Pinned cardigan-loop-23 to Linux CPU 23
+Pinned cardigan-loop-24 to Linux CPU 24
+Pinned cardigan-loop-25 to Linux CPU 25
+Pinned cardigan-loop-26 to Linux CPU 26
+Pinned cardigan-loop-27 to Linux CPU 27
+Pinned cardigan-loop-28 to Linux CPU 28
+Pinned cardigan-loop-29 to Linux CPU 29
+Pinned cardigan-loop-30 to Linux CPU 30
+Pinned cardigan-loop-31 to Linux CPU 31
+Pinned cardigan-loop-64 to Linux CPU 64
+Pinned cardigan-loop-65 to Linux CPU 65
+Pinned cardigan-loop-66 to Linux CPU 66
+Pinned cardigan-loop-67 to Linux CPU 67
+Pinned cardigan-loop-68 to Linux CPU 68
+Pinned cardigan-loop-69 to Linux CPU 69
+Pinned cardigan-loop-70 to Linux CPU 70
+Pinned cardigan-loop-71 to Linux CPU 71
+Pinned cardigan-loop-72 to Linux CPU 72
+Pinned cardigan-loop-73 to Linux CPU 73
+Pinned cardigan-loop-74 to Linux CPU 74
+Pinned cardigan-loop-75 to Linux CPU 75
+Pinned cardigan-loop-76 to Linux CPU 76
+Pinned cardigan-loop-77 to Linux CPU 77
+Pinned cardigan-loop-78 to Linux CPU 78
+Pinned cardigan-loop-79 to Linux CPU 79
+Pinned cardigan-loop-80 to Linux CPU 80
+Pinned cardigan-loop-81 to Linux CPU 81
+Pinned cardigan-loop-82 to Linux CPU 82
+Pinned cardigan-loop-83 to Linux CPU 83
+Pinned cardigan-loop-84 to Linux CPU 84
+Pinned cardigan-loop-85 to Linux CPU 85
+Pinned cardigan-loop-86 to Linux CPU 86
+Pinned cardigan-loop-87 to Linux CPU 87
+Pinned cardigan-loop-88 to Linux CPU 88
+Pinned cardigan-loop-89 to Linux CPU 89
+Pinned cardigan-loop-90 to Linux CPU 90
+Pinned cardigan-loop-91 to Linux CPU 91
+Pinned cardigan-loop-92 to Linux CPU 92
+Pinned cardigan-loop-93 to Linux CPU 93
+Pinned cardigan-loop-94 to Linux CPU 94
+Pinned cardigan-loop-95 to Linux CPU 95
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 8 listening on socket FD 191
+Loop 89 listening on socket FD 171
+Loop 67 listening on socket FD 150
+Loop 31 listening on socket FD 164
+Loop 81 listening on socket FD 157
+Loop 12 listening on socket FD 181
+Loop 90 listening on socket FD 192
+Loop 76 listening on socket FD 187
+Loop 74 listening on socket FD 145
+Loop 80 listening on socket FD 153
+Loop 65 listening on socket FD 194
+Loop 17 listening on socket FD 144
+Loop 21 listening on socket FD 170
+Loop 7 listening on socket FD 165
+Loop 64 listening on socket FD 163
+Loop 82 listening on socket FD 140
+Loop 29 listening on socket FD 190
+Loop 13 listening on socket FD 182
+Loop 14 listening on socket FD 178
+Loop 84 listening on socket FD 147
+Loop 10 listening on socket FD 146
+Loop 70 listening on socket FD 175
+Loop 1 listening on socket FD 179
+Loop 71 listening on socket FD 166
+Loop 93 listening on socket FD 151
+Loop 9 listening on socket FD 138
+Loop 18 listening on socket FD 141
+Loop 66 listening on socket FD 195
+Loop 4 listening on socket FD 177
+Loop 79 listening on socket FD 196
+Loop 30 listening on socket FD 185
+Loop 23 listening on socket FD 201
+Loop 6 listening on socket FD 197
+Loop 94 listening on socket FD 184
+Loop 87 listening on socket FD 168
+Loop 68 listening on socket FD 188
+Loop 24 listening on socket FD 176
+Loop 28 listening on socket FD 142
+Loop 85 listening on socket FD 161
+Loop 86 listening on socket FD 172
+Loop 77 listening on socket FD 198
+Loop 73 listening on socket FD 162
+Loop 22 listening on socket FD 193
+Loop 25 listening on socket FD 158
+Loop 92 listening on socket FD 149
+Loop 5 listening on socket FD 152
+Loop 26 listening on socket FD 173
+Loop 88 listening on socket FD 199
+Loop 2 listening on socket FD 154
+Loop 15 listening on socket FD 189
+Loop 3 listening on socket FD 156
+Loop 78 listening on socket FD 180
+Loop 91 listening on socket FD 143
+Loop 19 listening on socket FD 167
+Loop 11 listening on socket FD 200
+Loop 20 listening on socket FD 159
+Loop 16 listening on socket FD 139
+Loop 95 listening on socket FD 148
+Loop 75 listening on socket FD 174
+Loop 0 listening on socket FD 160
+Loop 27 listening on socket FD 183
+Loop 72 listening on socket FD 169
+Loop 83 listening on socket FD 155
+Loop 69 listening on socket FD 186
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 0 listening on socket FD 202
+Loop 1 listening on socket FD 203
+Loop 2 listening on socket FD 204
+Loop 4 listening on socket FD 205
+Loop 7 listening on socket FD 208
+Loop 3 listening on socket FD 206
+Loop 6 listening on socket FD 207
+Loop 11 listening on socket FD 210
+Loop 8 listening on socket FD 209
+Loop 10 listening on socket FD 211
+Loop 16 listening on socket FD 215
+Loop 17 listening on socket FD 217
+Loop 15 listening on socket FD 214
+Loop 19 listening on socket FD 218
+Loop 22 listening on socket FD 223
+Loop 12 listening on socket FD 212
+Loop 13 listening on socket FD 213
+Loop 18 listening on socket FD 219
+Loop 31 listening on socket FD 231
+Loop 24 listening on socket FD 230
+Loop 64 listening on socket FD 232
+Loop 20 listening on socket FD 222
+Loop 66 listening on socket FD 238
+Loop 21 listening on socket FD 221
+Loop 72 listening on socket FD 239
+Loop 75 listening on socket FD 242
+Loop 23 listening on socket FD 224
+Loop 5 listening on socket FD 216
+Loop 27 listening on socket FD 225
+Loop 26 listening on socket FD 227
+Loop 25 listening on socket FD 226
+Loop 28 listening on socket FD 228
+Loop 30 listening on socket FD 229
+Loop 68 listening on socket FD 233
+Loop 69 listening on socket FD 234
+Loop 67 listening on socket FD 237
+Loop 65 listening on socket FD 236
+Loop 71 listening on socket FD 235
+Loop 73 listening on socket FD 240
+Loop 78 listening on socket FD 241
+Loop 79 listening on socket FD 245
+Loop 70 listening on socket FD 254
+Loop 9 listening on socket FD 248
+Loop 90 listening on socket FD 252
+Loop 74 listening on socket FD 278
+Loop 95 listening on socket FD 257
+Loop 85 listening on socket FD 250
+Loop 83 listening on socket FD 246
+Loop 86 listening on socket FD 253
+Loop 84 listening on socket FD 251
+Loop 82 listening on socket FD 243
+Loop 80 listening on socket FD 244
+Loop 81 listening on socket FD 247
+Loop 88 listening on socket FD 255
+Loop 89 listening on socket FD 249
+Loop 14 listening on socket FD 220
+Loop 94 listening on socket FD 256
+Loop 92 listening on socket FD 264
+Loop 87 listening on socket FD 276
+Loop 91 listening on socket FD 277
+Loop 29 listening on socket FD 265
+Loop 76 listening on socket FD 258
+Loop 77 listening on socket FD 279
+Loop 93 listening on socket FD 259
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 4 listening on socket FD 262
+Loop 10 listening on socket FD 267
+Loop 0 listening on socket FD 260
+Loop 16 listening on socket FD 268
+Loop 17 listening on socket FD 269
+Loop 19 listening on socket FD 273
+Loop 22 listening on socket FD 280
+Loop 23 listening on socket FD 281
+Loop 6 listening on socket FD 282
+Loop 1 listening on socket FD 283
+Loop 26 listening on socket FD 286
+Loop 29 listening on socket FD 289
+Loop 11 listening on socket FD 266
+Loop 64 listening on socket FD 293
+Loop 68 listening on socket FD 298
+Loop 70 listening on socket FD 299
+Loop 71 listening on socket FD 301
+Loop 75 listening on socket FD 303
+Loop 76 listening on socket FD 304
+Loop 5 listening on socket FD 297
+Loop 91 listening on socket FD 311
+Loop 86 listening on socket FD 312
+Loop 79 listening on socket FD 319
+Loop 69 listening on socket FD 314
+Loop 92 listening on socket FD 317
+Loop 66 listening on socket FD 295
+Loop 67 listening on socket FD 296
+Loop 18 listening on socket FD 272
+Loop 14 listening on socket FD 271
+Loop 82 listening on socket FD 324
+Loop 15 listening on socket FD 270
+Loop 21 listening on socket FD 275
+Loop 20 listening on socket FD 274
+Loop 7 listening on socket FD 263
+Loop 3 listening on socket FD 261
+Loop 25 listening on socket FD 284
+Loop 30 listening on socket FD 291
+Loop 27 listening on socket FD 287
+Loop 8 listening on socket FD 288
+Loop 24 listening on socket FD 285
+Loop 2 listening on socket FD 290
+Loop 31 listening on socket FD 292
+Loop 65 listening on socket FD 294
+Loop 72 listening on socket FD 302
+Loop 73 listening on socket FD 300
+Loop 77 listening on socket FD 305
+Loop 80 listening on socket FD 306
+Loop 83 listening on socket FD 308
+Loop 81 listening on socket FD 309
+Loop 84 listening on socket FD 307
+Loop 88 listening on socket FD 310
+Loop 87 listening on socket FD 313
+Loop 94 listening on socket FD 315
+Loop 13 listening on socket FD 321
+Loop 12 listening on socket FD 316
+Loop 78 listening on socket FD 320
+Loop 28 listening on socket FD 322
+Loop 85 listening on socket FD 323
+Loop 89 listening on socket FD 325
+Loop 74 listening on socket FD 329
+Loop 95 listening on socket FD 326
+Loop 9 listening on socket FD 327
+Loop 90 listening on socket FD 328
+Loop 93 listening on socket FD 318
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 3 listening on socket FD 333
+Loop 1 listening on socket FD 331
+Loop 0 listening on socket FD 330
+Loop 5 listening on socket FD 334
+Loop 2 listening on socket FD 332
+Loop 6 listening on socket FD 336
+Loop 7 listening on socket FD 337
+Loop 4 listening on socket FD 335
+Loop 10 listening on socket FD 341
+Loop 19 listening on socket FD 348
+Loop 20 listening on socket FD 349
+Loop 8 listening on socket FD 338
+Loop 21 listening on socket FD 351
+Loop 23 listening on socket FD 353
+Loop 31 listening on socket FD 355
+Loop 29 listening on socket FD 357
+Loop 9 listening on socket FD 339
+Loop 67 listening on socket FD 360
+Loop 11 listening on socket FD 340
+Loop 16 listening on socket FD 344
+Loop 70 listening on socket FD 365
+Loop 80 listening on socket FD 369
+Loop 13 listening on socket FD 342
+Loop 12 listening on socket FD 343
+Loop 78 listening on socket FD 375
+Loop 84 listening on socket FD 376
+Loop 17 listening on socket FD 346
+Loop 88 listening on socket FD 382
+Loop 93 listening on socket FD 386
+Loop 28 listening on socket FD 389
+Loop 87 listening on socket FD 391
+Loop 18 listening on socket FD 347
+Loop 76 listening on socket FD 392
+Loop 15 listening on socket FD 345
+Loop 22 listening on socket FD 350
+Loop 26 listening on socket FD 352
+Loop 25 listening on socket FD 393
+Loop 30 listening on socket FD 356
+Loop 65 listening on socket FD 359
+Loop 24 listening on socket FD 354
+Loop 27 listening on socket FD 358
+Loop 64 listening on socket FD 361
+Loop 66 listening on socket FD 362
+Loop 68 listening on socket FD 363
+Loop 69 listening on socket FD 364
+Loop 71 listening on socket FD 366
+Loop 74 listening on socket FD 367
+Loop 77 listening on socket FD 368
+Loop 79 listening on socket FD 372
+Loop 81 listening on socket FD 371
+Loop 82 listening on socket FD 373
+Loop 72 listening on socket FD 370
+Loop 73 listening on socket FD 374
+Loop 83 listening on socket FD 378
+Loop 86 listening on socket FD 377
+Loop 91 listening on socket FD 380
+Loop 89 listening on socket FD 381
+Loop 85 listening on socket FD 384
+Loop 95 listening on socket FD 390
+Loop 92 listening on socket FD 385
+Loop 75 listening on socket FD 379
+Loop 90 listening on socket FD 383
+Loop 14 listening on socket FD 388
+Loop 94 listening on socket FD 387
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443
+TLS/OpenSSL negotiated h2; kTLS TX=true, RX=true, direct RX=false
diff --git a/site/static/logs/unary-grpc-tls/1024/cardigan.log b/site/static/logs/unary-grpc-tls/1024/cardigan.log
new file mode 100644
index 000000000..679401374
--- /dev/null
+++ b/site/static/logs/unary-grpc-tls/1024/cardigan.log
@@ -0,0 +1,368 @@
+WARNING: Using incubator modules: jdk.incubator.vector
+Pinned cardigan-loop-0 to Linux CPU 0
+Pinned cardigan-loop-1 to Linux CPU 1
+Pinned cardigan-loop-2 to Linux CPU 2
+Pinned cardigan-loop-3 to Linux CPU 3
+Pinned cardigan-loop-4 to Linux CPU 4
+Pinned cardigan-loop-5 to Linux CPU 5
+Pinned cardigan-loop-6 to Linux CPU 6
+Pinned cardigan-loop-7 to Linux CPU 7
+Pinned cardigan-loop-8 to Linux CPU 8
+Pinned cardigan-loop-9 to Linux CPU 9
+Pinned cardigan-loop-10 to Linux CPU 10
+Pinned cardigan-loop-11 to Linux CPU 11
+Pinned cardigan-loop-12 to Linux CPU 12
+Pinned cardigan-loop-13 to Linux CPU 13
+Pinned cardigan-loop-14 to Linux CPU 14
+Pinned cardigan-loop-15 to Linux CPU 15
+Pinned cardigan-loop-16 to Linux CPU 16
+Pinned cardigan-loop-17 to Linux CPU 17
+Pinned cardigan-loop-18 to Linux CPU 18
+Pinned cardigan-loop-19 to Linux CPU 19
+Pinned cardigan-loop-20 to Linux CPU 20
+Pinned cardigan-loop-21 to Linux CPU 21
+Pinned cardigan-loop-22 to Linux CPU 22
+Pinned cardigan-loop-23 to Linux CPU 23
+Pinned cardigan-loop-24 to Linux CPU 24
+Pinned cardigan-loop-25 to Linux CPU 25
+Pinned cardigan-loop-26 to Linux CPU 26
+Pinned cardigan-loop-27 to Linux CPU 27
+Pinned cardigan-loop-28 to Linux CPU 28
+Pinned cardigan-loop-29 to Linux CPU 29
+Pinned cardigan-loop-30 to Linux CPU 30
+Pinned cardigan-loop-31 to Linux CPU 31
+Pinned cardigan-loop-64 to Linux CPU 64
+Pinned cardigan-loop-65 to Linux CPU 65
+Pinned cardigan-loop-66 to Linux CPU 66
+Pinned cardigan-loop-67 to Linux CPU 67
+Pinned cardigan-loop-68 to Linux CPU 68
+Pinned cardigan-loop-69 to Linux CPU 69
+Pinned cardigan-loop-70 to Linux CPU 70
+Pinned cardigan-loop-71 to Linux CPU 71
+Pinned cardigan-loop-72 to Linux CPU 72
+Pinned cardigan-loop-73 to Linux CPU 73
+Pinned cardigan-loop-74 to Linux CPU 74
+Pinned cardigan-loop-75 to Linux CPU 75
+Pinned cardigan-loop-76 to Linux CPU 76
+Pinned cardigan-loop-77 to Linux CPU 77
+Pinned cardigan-loop-78 to Linux CPU 78
+Pinned cardigan-loop-79 to Linux CPU 79
+Pinned cardigan-loop-80 to Linux CPU 80
+Pinned cardigan-loop-81 to Linux CPU 81
+Pinned cardigan-loop-82 to Linux CPU 82
+Pinned cardigan-loop-83 to Linux CPU 83
+Pinned cardigan-loop-84 to Linux CPU 84
+Pinned cardigan-loop-85 to Linux CPU 85
+Pinned cardigan-loop-86 to Linux CPU 86
+Pinned cardigan-loop-87 to Linux CPU 87
+Pinned cardigan-loop-88 to Linux CPU 88
+Pinned cardigan-loop-89 to Linux CPU 89
+Pinned cardigan-loop-90 to Linux CPU 90
+Pinned cardigan-loop-91 to Linux CPU 91
+Pinned cardigan-loop-92 to Linux CPU 92
+Pinned cardigan-loop-93 to Linux CPU 93
+Pinned cardigan-loop-94 to Linux CPU 94
+Pinned cardigan-loop-95 to Linux CPU 95
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 3 listening on socket FD 176
+Loop 85 listening on socket FD 192
+Loop 81 listening on socket FD 143
+Loop 84 listening on socket FD 150
+Loop 95 listening on socket FD 170
+Loop 73 listening on socket FD 181
+Loop 19 listening on socket FD 167
+Loop 1 listening on socket FD 183
+Loop 77 listening on socket FD 179
+Loop 15 listening on socket FD 169
+Loop 74 listening on socket FD 196
+Loop 21 listening on socket FD 156
+Loop 9 listening on socket FD 202
+Loop 4 listening on socket FD 165
+Loop 89 listening on socket FD 173
+Loop 25 listening on socket FD 194
+Loop 88 listening on socket FD 158
+Loop 16 listening on socket FD 175
+Loop 18 listening on socket FD 162
+Loop 12 listening on socket FD 178
+Loop 0 listening on socket FD 139
+Loop 92 listening on socket FD 154
+Loop 90 listening on socket FD 190
+Loop 65 listening on socket FD 168
+Loop 72 listening on socket FD 144
+Loop 86 listening on socket FD 161
+Loop 68 listening on socket FD 146
+Loop 10 listening on socket FD 172
+Loop 93 listening on socket FD 153
+Loop 7 listening on socket FD 186
+Loop 24 listening on socket FD 184
+Loop 91 listening on socket FD 197
+Loop 80 listening on socket FD 159
+Loop 14 listening on socket FD 152
+Loop 11 listening on socket FD 145
+Loop 69 listening on socket FD 148
+Loop 5 listening on socket FD 163
+Loop 29 listening on socket FD 180
+Loop 13 listening on socket FD 164
+Loop 66 listening on socket FD 160
+Loop 23 listening on socket FD 191
+Loop 78 listening on socket FD 142
+Loop 22 listening on socket FD 151
+Loop 76 listening on socket FD 199
+Loop 70 listening on socket FD 155
+Loop 83 listening on socket FD 149
+Loop 20 listening on socket FD 185
+Loop 27 listening on socket FD 193
+Loop 30 listening on socket FD 138
+Loop 31 listening on socket FD 189
+Loop 79 listening on socket FD 198
+Loop 2 listening on socket FD 182
+Loop 75 listening on socket FD 171
+Loop 64 listening on socket FD 177
+Loop 28 listening on socket FD 188
+Loop 67 listening on socket FD 174
+Loop 6 listening on socket FD 141
+Loop 71 listening on socket FD 200
+Loop 17 listening on socket FD 147
+Loop 82 listening on socket FD 195
+Loop 87 listening on socket FD 166
+Loop 26 listening on socket FD 187
+Loop 8 listening on socket FD 140
+Loop 94 listening on socket FD 157
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 0 listening on socket FD 201
+Loop 6 listening on socket FD 207
+Loop 7 listening on socket FD 209
+Loop 2 listening on socket FD 204
+Loop 3 listening on socket FD 205
+Loop 10 listening on socket FD 212
+Loop 9 listening on socket FD 211
+Loop 1 listening on socket FD 203
+Loop 5 listening on socket FD 208
+Loop 4 listening on socket FD 206
+Loop 8 listening on socket FD 210
+Loop 18 listening on socket FD 218
+Loop 21 listening on socket FD 221
+Loop 16 listening on socket FD 217
+Loop 17 listening on socket FD 215
+Loop 23 listening on socket FD 224
+Loop 12 listening on socket FD 213
+Loop 13 listening on socket FD 214
+Loop 20 listening on socket FD 220
+Loop 19 listening on socket FD 219
+Loop 30 listening on socket FD 233
+Loop 15 listening on socket FD 231
+Loop 67 listening on socket FD 237
+Loop 69 listening on socket FD 241
+Loop 70 listening on socket FD 236
+Loop 74 listening on socket FD 243
+Loop 22 listening on socket FD 222
+Loop 11 listening on socket FD 223
+Loop 24 listening on socket FD 227
+Loop 27 listening on socket FD 226
+Loop 25 listening on socket FD 225
+Loop 26 listening on socket FD 228
+Loop 29 listening on socket FD 230
+Loop 31 listening on socket FD 232
+Loop 28 listening on socket FD 229
+Loop 14 listening on socket FD 216
+Loop 71 listening on socket FD 234
+Loop 64 listening on socket FD 238
+Loop 65 listening on socket FD 239
+Loop 66 listening on socket FD 235
+Loop 68 listening on socket FD 240
+Loop 75 listening on socket FD 244
+Loop 72 listening on socket FD 242
+Loop 80 listening on socket FD 245
+Loop 82 listening on socket FD 247
+Loop 79 listening on socket FD 249
+Loop 86 listening on socket FD 251
+Loop 85 listening on socket FD 252
+Loop 84 listening on socket FD 253
+Loop 81 listening on socket FD 246
+Loop 87 listening on socket FD 255
+Loop 88 listening on socket FD 261
+Loop 90 listening on socket FD 254
+Loop 76 listening on socket FD 250
+Loop 83 listening on socket FD 248
+Loop 89 listening on socket FD 264
+Loop 91 listening on socket FD 260
+Loop 77 listening on socket FD 258
+Loop 73 listening on socket FD 266
+Loop 94 listening on socket FD 257
+Loop 95 listening on socket FD 259
+Loop 78 listening on socket FD 265
+Loop 92 listening on socket FD 263
+Loop 93 listening on socket FD 262
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 6 listening on socket FD 270
+Loop 5 listening on socket FD 269
+Loop 2 listening on socket FD 256
+Loop 10 listening on socket FD 272
+Loop 11 listening on socket FD 273
+Loop 1 listening on socket FD 274
+Loop 18 listening on socket FD 281
+Loop 19 listening on socket FD 283
+Loop 7 listening on socket FD 271
+Loop 0 listening on socket FD 275
+Loop 17 listening on socket FD 278
+Loop 24 listening on socket FD 289
+Loop 16 listening on socket FD 280
+Loop 15 listening on socket FD 276
+Loop 12 listening on socket FD 277
+Loop 66 listening on socket FD 298
+Loop 67 listening on socket FD 299
+Loop 69 listening on socket FD 302
+Loop 8 listening on socket FD 279
+Loop 72 listening on socket FD 303
+Loop 74 listening on socket FD 306
+Loop 71 listening on socket FD 305
+Loop 13 listening on socket FD 282
+Loop 4 listening on socket FD 268
+Loop 21 listening on socket FD 284
+Loop 9 listening on socket FD 317
+Loop 20 listening on socket FD 286
+Loop 22 listening on socket FD 285
+Loop 78 listening on socket FD 316
+Loop 23 listening on socket FD 287
+Loop 3 listening on socket FD 267
+Loop 26 listening on socket FD 288
+Loop 89 listening on socket FD 322
+Loop 90 listening on socket FD 323
+Loop 29 listening on socket FD 290
+Loop 31 listening on socket FD 294
+Loop 75 listening on socket FD 327
+Loop 28 listening on socket FD 291
+Loop 27 listening on socket FD 293
+Loop 95 listening on socket FD 330
+Loop 30 listening on socket FD 292
+Loop 65 listening on socket FD 297
+Loop 64 listening on socket FD 295
+Loop 70 listening on socket FD 301
+Loop 68 listening on socket FD 300
+Loop 14 listening on socket FD 296
+Loop 73 listening on socket FD 304
+Loop 77 listening on socket FD 307
+Loop 85 listening on socket FD 310
+Loop 81 listening on socket FD 309
+Loop 80 listening on socket FD 308
+Loop 83 listening on socket FD 311
+Loop 25 listening on socket FD 312
+Loop 82 listening on socket FD 314
+Loop 86 listening on socket FD 313
+Loop 84 listening on socket FD 315
+Loop 79 listening on socket FD 318
+Loop 76 listening on socket FD 319
+Loop 87 listening on socket FD 320
+Loop 88 listening on socket FD 321
+Loop 94 listening on socket FD 326
+Loop 91 listening on socket FD 324
+Loop 93 listening on socket FD 325
+Loop 92 listening on socket FD 328
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 6 listening on socket FD 333
+Loop 7 listening on socket FD 335
+Loop 2 listening on socket FD 336
+Loop 8 listening on socket FD 339
+Loop 24 listening on socket FD 352
+Loop 28 listening on socket FD 356
+Loop 13 listening on socket FD 355
+Loop 29 listening on socket FD 357
+Loop 31 listening on socket FD 359
+Loop 12 listening on socket FD 338
+Loop 3 listening on socket FD 334
+Loop 67 listening on socket FD 362
+Loop 68 listening on socket FD 364
+Loop 1 listening on socket FD 329
+Loop 71 listening on socket FD 368
+Loop 73 listening on socket FD 367
+Loop 25 listening on socket FD 371
+Loop 18 listening on socket FD 345
+Loop 83 listening on socket FD 378
+Loop 87 listening on socket FD 382
+Loop 85 listening on socket FD 383
+Loop 75 listening on socket FD 379
+Loop 78 listening on socket FD 385
+Loop 19 listening on socket FD 347
+Loop 17 listening on socket FD 342
+Loop 16 listening on socket FD 343
+Loop 93 listening on socket FD 390
+Loop 89 listening on socket FD 388
+Loop 95 listening on socket FD 393
+Loop 4 listening on socket FD 332
+Loop 91 listening on socket FD 392
+Loop 11 listening on socket FD 341
+Loop 15 listening on socket FD 346
+Loop 10 listening on socket FD 340
+Loop 21 listening on socket FD 349
+Loop 14 listening on socket FD 344
+Loop 0 listening on socket FD 331
+Loop 20 listening on socket FD 348
+Loop 23 listening on socket FD 351
+Loop 26 listening on socket FD 353
+Loop 27 listening on socket FD 354
+Loop 22 listening on socket FD 350
+Loop 5 listening on socket FD 337
+Loop 30 listening on socket FD 358
+Loop 64 listening on socket FD 361
+Loop 65 listening on socket FD 360
+Loop 66 listening on socket FD 363
+Loop 69 listening on socket FD 365
+Loop 70 listening on socket FD 366
+Loop 76 listening on socket FD 369
+Loop 80 listening on socket FD 372
+Loop 77 listening on socket FD 370
+Loop 81 listening on socket FD 375
+Loop 82 listening on socket FD 374
+Loop 72 listening on socket FD 376
+Loop 79 listening on socket FD 377
+Loop 9 listening on socket FD 373
+Loop 84 listening on socket FD 380
+Loop 86 listening on socket FD 381
+Loop 88 listening on socket FD 384
+Loop 74 listening on socket FD 386
+Loop 92 listening on socket FD 389
+Loop 94 listening on socket FD 391
+Loop 90 listening on socket FD 387
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443
+TLS/OpenSSL negotiated h2; kTLS TX=true, RX=true, direct RX=false
diff --git a/site/static/logs/unary-grpc-tls/256/cardigan.log b/site/static/logs/unary-grpc-tls/256/cardigan.log
new file mode 100644
index 000000000..70dfc0016
--- /dev/null
+++ b/site/static/logs/unary-grpc-tls/256/cardigan.log
@@ -0,0 +1,368 @@
+WARNING: Using incubator modules: jdk.incubator.vector
+Pinned cardigan-loop-0 to Linux CPU 0
+Pinned cardigan-loop-1 to Linux CPU 1
+Pinned cardigan-loop-2 to Linux CPU 2
+Pinned cardigan-loop-3 to Linux CPU 3
+Pinned cardigan-loop-4 to Linux CPU 4
+Pinned cardigan-loop-5 to Linux CPU 5
+Pinned cardigan-loop-6 to Linux CPU 6
+Pinned cardigan-loop-7 to Linux CPU 7
+Pinned cardigan-loop-8 to Linux CPU 8
+Pinned cardigan-loop-9 to Linux CPU 9
+Pinned cardigan-loop-10 to Linux CPU 10
+Pinned cardigan-loop-11 to Linux CPU 11
+Pinned cardigan-loop-12 to Linux CPU 12
+Pinned cardigan-loop-13 to Linux CPU 13
+Pinned cardigan-loop-14 to Linux CPU 14
+Pinned cardigan-loop-15 to Linux CPU 15
+Pinned cardigan-loop-16 to Linux CPU 16
+Pinned cardigan-loop-17 to Linux CPU 17
+Pinned cardigan-loop-18 to Linux CPU 18
+Pinned cardigan-loop-19 to Linux CPU 19
+Pinned cardigan-loop-20 to Linux CPU 20
+Pinned cardigan-loop-21 to Linux CPU 21
+Pinned cardigan-loop-22 to Linux CPU 22
+Pinned cardigan-loop-23 to Linux CPU 23
+Pinned cardigan-loop-24 to Linux CPU 24
+Pinned cardigan-loop-25 to Linux CPU 25
+Pinned cardigan-loop-26 to Linux CPU 26
+Pinned cardigan-loop-27 to Linux CPU 27
+Pinned cardigan-loop-28 to Linux CPU 28
+Pinned cardigan-loop-29 to Linux CPU 29
+Pinned cardigan-loop-30 to Linux CPU 30
+Pinned cardigan-loop-31 to Linux CPU 31
+Pinned cardigan-loop-64 to Linux CPU 64
+Pinned cardigan-loop-65 to Linux CPU 65
+Pinned cardigan-loop-66 to Linux CPU 66
+Pinned cardigan-loop-67 to Linux CPU 67
+Pinned cardigan-loop-68 to Linux CPU 68
+Pinned cardigan-loop-69 to Linux CPU 69
+Pinned cardigan-loop-70 to Linux CPU 70
+Pinned cardigan-loop-71 to Linux CPU 71
+Pinned cardigan-loop-72 to Linux CPU 72
+Pinned cardigan-loop-73 to Linux CPU 73
+Pinned cardigan-loop-74 to Linux CPU 74
+Pinned cardigan-loop-75 to Linux CPU 75
+Pinned cardigan-loop-76 to Linux CPU 76
+Pinned cardigan-loop-77 to Linux CPU 77
+Pinned cardigan-loop-78 to Linux CPU 78
+Pinned cardigan-loop-79 to Linux CPU 79
+Pinned cardigan-loop-80 to Linux CPU 80
+Pinned cardigan-loop-81 to Linux CPU 81
+Pinned cardigan-loop-82 to Linux CPU 82
+Pinned cardigan-loop-83 to Linux CPU 83
+Pinned cardigan-loop-84 to Linux CPU 84
+Pinned cardigan-loop-85 to Linux CPU 85
+Pinned cardigan-loop-86 to Linux CPU 86
+Pinned cardigan-loop-87 to Linux CPU 87
+Pinned cardigan-loop-88 to Linux CPU 88
+Pinned cardigan-loop-89 to Linux CPU 89
+Pinned cardigan-loop-90 to Linux CPU 90
+Pinned cardigan-loop-91 to Linux CPU 91
+Pinned cardigan-loop-92 to Linux CPU 92
+Pinned cardigan-loop-93 to Linux CPU 93
+Pinned cardigan-loop-94 to Linux CPU 94
+Pinned cardigan-loop-95 to Linux CPU 95
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 84 listening on socket FD 139
+Loop 5 listening on socket FD 144
+Loop 19 listening on socket FD 167
+Loop 79 listening on socket FD 149
+Loop 95 listening on socket FD 198
+Loop 81 listening on socket FD 180
+Loop 83 listening on socket FD 166
+Loop 87 listening on socket FD 152
+Loop 86 listening on socket FD 141
+Loop 73 listening on socket FD 188
+Loop 31 listening on socket FD 183
+Loop 26 listening on socket FD 179
+Loop 77 listening on socket FD 146
+Loop 14 listening on socket FD 165
+Loop 13 listening on socket FD 153
+Loop 22 listening on socket FD 140
+Loop 80 listening on socket FD 157
+Loop 64 listening on socket FD 150
+Loop 66 listening on socket FD 147
+Loop 10 listening on socket FD 171
+Loop 6 listening on socket FD 199
+Loop 68 listening on socket FD 178
+Loop 16 listening on socket FD 172
+Loop 72 listening on socket FD 181
+Loop 88 listening on socket FD 151
+Loop 85 listening on socket FD 186
+Loop 21 listening on socket FD 182
+Loop 18 listening on socket FD 155
+Loop 67 listening on socket FD 143
+Loop 4 listening on socket FD 158
+Loop 92 listening on socket FD 168
+Loop 28 listening on socket FD 197
+Loop 93 listening on socket FD 174
+Loop 1 listening on socket FD 159
+Loop 8 listening on socket FD 161
+Loop 70 listening on socket FD 189
+Loop 27 listening on socket FD 187
+Loop 24 listening on socket FD 194
+Loop 89 listening on socket FD 156
+Loop 7 listening on socket FD 192
+Loop 3 listening on socket FD 173
+Loop 71 listening on socket FD 154
+Loop 15 listening on socket FD 142
+Loop 76 listening on socket FD 177
+Loop 82 listening on socket FD 191
+Loop 69 listening on socket FD 196
+Loop 2 listening on socket FD 160
+Loop 9 listening on socket FD 201
+Loop 11 listening on socket FD 175
+Loop 20 listening on socket FD 138
+Loop 75 listening on socket FD 190
+Loop 91 listening on socket FD 176
+Loop 29 listening on socket FD 164
+Loop 30 listening on socket FD 162
+Loop 94 listening on socket FD 170
+Loop 0 listening on socket FD 184
+Loop 65 listening on socket FD 185
+Loop 23 listening on socket FD 169
+Loop 90 listening on socket FD 195
+Loop 17 listening on socket FD 163
+Loop 74 listening on socket FD 148
+Loop 25 listening on socket FD 193
+Loop 12 listening on socket FD 145
+Loop 78 listening on socket FD 200
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 1 listening on socket FD 202
+Loop 0 listening on socket FD 203
+Loop 2 listening on socket FD 204
+Loop 3 listening on socket FD 205
+Loop 5 listening on socket FD 207
+Loop 4 listening on socket FD 206
+Loop 6 listening on socket FD 208
+Loop 11 listening on socket FD 210
+Loop 9 listening on socket FD 212
+Loop 13 listening on socket FD 214
+Loop 17 listening on socket FD 215
+Loop 15 listening on socket FD 217
+Loop 18 listening on socket FD 218
+Loop 20 listening on socket FD 221
+Loop 21 listening on socket FD 220
+Loop 7 listening on socket FD 209
+Loop 8 listening on socket FD 211
+Loop 10 listening on socket FD 226
+Loop 31 listening on socket FD 230
+Loop 14 listening on socket FD 231
+Loop 64 listening on socket FD 233
+Loop 68 listening on socket FD 235
+Loop 71 listening on socket FD 236
+Loop 69 listening on socket FD 238
+Loop 80 listening on socket FD 243
+Loop 76 listening on socket FD 242
+Loop 12 listening on socket FD 213
+Loop 19 listening on socket FD 219
+Loop 16 listening on socket FD 216
+Loop 22 listening on socket FD 223
+Loop 23 listening on socket FD 222
+Loop 27 listening on socket FD 224
+Loop 26 listening on socket FD 225
+Loop 30 listening on socket FD 228
+Loop 28 listening on socket FD 227
+Loop 29 listening on socket FD 229
+Loop 66 listening on socket FD 232
+Loop 65 listening on socket FD 234
+Loop 70 listening on socket FD 237
+Loop 67 listening on socket FD 239
+Loop 74 listening on socket FD 240
+Loop 75 listening on socket FD 241
+Loop 87 listening on socket FD 246
+Loop 90 listening on socket FD 248
+Loop 85 listening on socket FD 250
+Loop 91 listening on socket FD 271
+Loop 81 listening on socket FD 247
+Loop 84 listening on socket FD 251
+Loop 89 listening on socket FD 252
+Loop 79 listening on socket FD 262
+Loop 77 listening on socket FD 256
+Loop 83 listening on socket FD 245
+Loop 86 listening on socket FD 244
+Loop 88 listening on socket FD 253
+Loop 93 listening on socket FD 255
+Loop 82 listening on socket FD 249
+Loop 24 listening on socket FD 254
+Loop 94 listening on socket FD 266
+Loop 95 listening on socket FD 257
+Loop 92 listening on socket FD 265
+Loop 25 listening on socket FD 258
+Loop 73 listening on socket FD 269
+Loop 72 listening on socket FD 260
+Loop 78 listening on socket FD 261
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 6 listening on socket FD 267
+Loop 1 listening on socket FD 259
+Loop 10 listening on socket FD 273
+Loop 7 listening on socket FD 270
+Loop 11 listening on socket FD 274
+Loop 9 listening on socket FD 272
+Loop 12 listening on socket FD 275
+Loop 14 listening on socket FD 276
+Loop 16 listening on socket FD 277
+Loop 19 listening on socket FD 279
+Loop 17 listening on socket FD 280
+Loop 15 listening on socket FD 278
+Loop 2 listening on socket FD 283
+Loop 25 listening on socket FD 288
+Loop 27 listening on socket FD 291
+Loop 29 listening on socket FD 295
+Loop 65 listening on socket FD 298
+Loop 67 listening on socket FD 300
+Loop 68 listening on socket FD 301
+Loop 69 listening on socket FD 304
+Loop 70 listening on socket FD 305
+Loop 75 listening on socket FD 307
+Loop 74 listening on socket FD 306
+Loop 87 listening on socket FD 315
+Loop 22 listening on socket FD 285
+Loop 20 listening on socket FD 282
+Loop 92 listening on socket FD 318
+Loop 94 listening on socket FD 323
+Loop 95 listening on socket FD 325
+Loop 21 listening on socket FD 284
+Loop 18 listening on socket FD 281
+Loop 3 listening on socket FD 263
+Loop 13 listening on socket FD 326
+Loop 73 listening on socket FD 327
+Loop 23 listening on socket FD 287
+Loop 82 listening on socket FD 329
+Loop 4 listening on socket FD 264
+Loop 5 listening on socket FD 268
+Loop 0 listening on socket FD 286
+Loop 26 listening on socket FD 290
+Loop 8 listening on socket FD 289
+Loop 30 listening on socket FD 294
+Loop 28 listening on socket FD 293
+Loop 24 listening on socket FD 292
+Loop 64 listening on socket FD 297
+Loop 66 listening on socket FD 299
+Loop 31 listening on socket FD 296
+Loop 71 listening on socket FD 302
+Loop 72 listening on socket FD 303
+Loop 80 listening on socket FD 308
+Loop 81 listening on socket FD 310
+Loop 84 listening on socket FD 311
+Loop 85 listening on socket FD 314
+Loop 83 listening on socket FD 312
+Loop 78 listening on socket FD 309
+Loop 86 listening on socket FD 316
+Loop 90 listening on socket FD 317
+Loop 77 listening on socket FD 313
+Loop 91 listening on socket FD 319
+Loop 76 listening on socket FD 320
+Loop 93 listening on socket FD 322
+Loop 89 listening on socket FD 321
+Loop 88 listening on socket FD 324
+Loop 79 listening on socket FD 328
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 3 listening on socket FD 333
+Loop 5 listening on socket FD 335
+Loop 4 listening on socket FD 334
+Loop 2 listening on socket FD 331
+Loop 7 listening on socket FD 337
+Loop 1 listening on socket FD 332
+Loop 0 listening on socket FD 330
+Loop 12 listening on socket FD 342
+Loop 15 listening on socket FD 343
+Loop 6 listening on socket FD 336
+Loop 17 listening on socket FD 346
+Loop 13 listening on socket FD 341
+Loop 19 listening on socket FD 348
+Loop 9 listening on socket FD 338
+Loop 8 listening on socket FD 340
+Loop 21 listening on socket FD 352
+Loop 25 listening on socket FD 354
+Loop 28 listening on socket FD 356
+Loop 11 listening on socket FD 339
+Loop 10 listening on socket FD 345
+Loop 14 listening on socket FD 359
+Loop 31 listening on socket FD 361
+Loop 66 listening on socket FD 360
+Loop 64 listening on socket FD 364
+Loop 16 listening on socket FD 344
+Loop 18 listening on socket FD 347
+Loop 70 listening on socket FD 367
+Loop 71 listening on socket FD 368
+Loop 20 listening on socket FD 349
+Loop 75 listening on socket FD 371
+Loop 27 listening on socket FD 370
+Loop 72 listening on socket FD 373
+Loop 81 listening on socket FD 377
+Loop 22 listening on socket FD 351
+Loop 82 listening on socket FD 378
+Loop 85 listening on socket FD 381
+Loop 84 listening on socket FD 380
+Loop 78 listening on socket FD 383
+Loop 23 listening on socket FD 350
+Loop 91 listening on socket FD 388
+Loop 95 listening on socket FD 390
+Loop 89 listening on socket FD 391
+Loop 24 listening on socket FD 353
+Loop 29 listening on socket FD 357
+Loop 26 listening on socket FD 355
+Loop 30 listening on socket FD 358
+Loop 73 listening on socket FD 393
+Loop 65 listening on socket FD 362
+Loop 67 listening on socket FD 363
+Loop 68 listening on socket FD 366
+Loop 69 listening on socket FD 365
+Loop 74 listening on socket FD 369
+Loop 76 listening on socket FD 372
+Loop 77 listening on socket FD 375
+Loop 79 listening on socket FD 376
+Loop 80 listening on socket FD 374
+Loop 83 listening on socket FD 379
+Loop 86 listening on socket FD 382
+Loop 88 listening on socket FD 384
+Loop 87 listening on socket FD 385
+Loop 92 listening on socket FD 387
+Loop 90 listening on socket FD 386
+Loop 93 listening on socket FD 389
+Loop 94 listening on socket FD 392
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443
+TLS/OpenSSL negotiated h2; kTLS TX=true, RX=true, direct RX=false
diff --git a/site/static/logs/unary-grpc/1024/cardigan.log b/site/static/logs/unary-grpc/1024/cardigan.log
new file mode 100644
index 000000000..3937d0583
--- /dev/null
+++ b/site/static/logs/unary-grpc/1024/cardigan.log
@@ -0,0 +1,367 @@
+WARNING: Using incubator modules: jdk.incubator.vector
+Pinned cardigan-loop-0 to Linux CPU 0
+Pinned cardigan-loop-1 to Linux CPU 1
+Pinned cardigan-loop-2 to Linux CPU 2
+Pinned cardigan-loop-3 to Linux CPU 3
+Pinned cardigan-loop-4 to Linux CPU 4
+Pinned cardigan-loop-5 to Linux CPU 5
+Pinned cardigan-loop-6 to Linux CPU 6
+Pinned cardigan-loop-7 to Linux CPU 7
+Pinned cardigan-loop-8 to Linux CPU 8
+Pinned cardigan-loop-9 to Linux CPU 9
+Pinned cardigan-loop-10 to Linux CPU 10
+Pinned cardigan-loop-11 to Linux CPU 11
+Pinned cardigan-loop-12 to Linux CPU 12
+Pinned cardigan-loop-13 to Linux CPU 13
+Pinned cardigan-loop-14 to Linux CPU 14
+Pinned cardigan-loop-15 to Linux CPU 15
+Pinned cardigan-loop-16 to Linux CPU 16
+Pinned cardigan-loop-17 to Linux CPU 17
+Pinned cardigan-loop-18 to Linux CPU 18
+Pinned cardigan-loop-19 to Linux CPU 19
+Pinned cardigan-loop-20 to Linux CPU 20
+Pinned cardigan-loop-21 to Linux CPU 21
+Pinned cardigan-loop-22 to Linux CPU 22
+Pinned cardigan-loop-23 to Linux CPU 23
+Pinned cardigan-loop-24 to Linux CPU 24
+Pinned cardigan-loop-25 to Linux CPU 25
+Pinned cardigan-loop-26 to Linux CPU 26
+Pinned cardigan-loop-27 to Linux CPU 27
+Pinned cardigan-loop-28 to Linux CPU 28
+Pinned cardigan-loop-29 to Linux CPU 29
+Pinned cardigan-loop-30 to Linux CPU 30
+Pinned cardigan-loop-31 to Linux CPU 31
+Pinned cardigan-loop-64 to Linux CPU 64
+Pinned cardigan-loop-65 to Linux CPU 65
+Pinned cardigan-loop-66 to Linux CPU 66
+Pinned cardigan-loop-67 to Linux CPU 67
+Pinned cardigan-loop-68 to Linux CPU 68
+Pinned cardigan-loop-69 to Linux CPU 69
+Pinned cardigan-loop-70 to Linux CPU 70
+Pinned cardigan-loop-71 to Linux CPU 71
+Pinned cardigan-loop-72 to Linux CPU 72
+Pinned cardigan-loop-73 to Linux CPU 73
+Pinned cardigan-loop-74 to Linux CPU 74
+Pinned cardigan-loop-75 to Linux CPU 75
+Pinned cardigan-loop-76 to Linux CPU 76
+Pinned cardigan-loop-77 to Linux CPU 77
+Pinned cardigan-loop-78 to Linux CPU 78
+Pinned cardigan-loop-79 to Linux CPU 79
+Pinned cardigan-loop-80 to Linux CPU 80
+Pinned cardigan-loop-81 to Linux CPU 81
+Pinned cardigan-loop-82 to Linux CPU 82
+Pinned cardigan-loop-83 to Linux CPU 83
+Pinned cardigan-loop-84 to Linux CPU 84
+Pinned cardigan-loop-85 to Linux CPU 85
+Pinned cardigan-loop-86 to Linux CPU 86
+Pinned cardigan-loop-87 to Linux CPU 87
+Pinned cardigan-loop-88 to Linux CPU 88
+Pinned cardigan-loop-89 to Linux CPU 89
+Pinned cardigan-loop-90 to Linux CPU 90
+Pinned cardigan-loop-91 to Linux CPU 91
+Pinned cardigan-loop-92 to Linux CPU 92
+Pinned cardigan-loop-93 to Linux CPU 93
+Pinned cardigan-loop-94 to Linux CPU 94
+Pinned cardigan-loop-95 to Linux CPU 95
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 86 listening on socket FD 177
+Loop 18 listening on socket FD 171
+Loop 29 listening on socket FD 200
+Loop 23 listening on socket FD 150
+Loop 1 listening on socket FD 201
+Loop 0 listening on socket FD 144
+Loop 89 listening on socket FD 170
+Loop 21 listening on socket FD 191
+Loop 82 listening on socket FD 183
+Loop 6 listening on socket FD 182
+Loop 73 listening on socket FD 145
+Loop 5 listening on socket FD 155
+Loop 67 listening on socket FD 184
+Loop 4 listening on socket FD 172
+Loop 30 listening on socket FD 192
+Loop 64 listening on socket FD 149
+Loop 2 listening on socket FD 152
+Loop 12 listening on socket FD 139
+Loop 24 listening on socket FD 187
+Loop 91 listening on socket FD 168
+Loop 81 listening on socket FD 143
+Loop 19 listening on socket FD 196
+Loop 31 listening on socket FD 189
+Loop 70 listening on socket FD 195
+Loop 92 listening on socket FD 180
+Loop 28 listening on socket FD 138
+Loop 16 listening on socket FD 140
+Loop 10 listening on socket FD 151
+Loop 80 listening on socket FD 142
+Loop 65 listening on socket FD 160
+Loop 17 listening on socket FD 146
+Loop 11 listening on socket FD 154
+Loop 27 listening on socket FD 199
+Loop 79 listening on socket FD 178
+Loop 76 listening on socket FD 147
+Loop 26 listening on socket FD 188
+Loop 74 listening on socket FD 165
+Loop 88 listening on socket FD 158
+Loop 20 listening on socket FD 169
+Loop 25 listening on socket FD 161
+Loop 69 listening on socket FD 148
+Loop 93 listening on socket FD 190
+Loop 78 listening on socket FD 153
+Loop 9 listening on socket FD 176
+Loop 66 listening on socket FD 164
+Loop 14 listening on socket FD 159
+Loop 94 listening on socket FD 174
+Loop 83 listening on socket FD 141
+Loop 3 listening on socket FD 175
+Loop 90 listening on socket FD 194
+Loop 7 listening on socket FD 163
+Loop 85 listening on socket FD 186
+Loop 77 listening on socket FD 193
+Loop 75 listening on socket FD 166
+Loop 22 listening on socket FD 198
+Loop 84 listening on socket FD 181
+Loop 95 listening on socket FD 197
+Loop 72 listening on socket FD 167
+Loop 15 listening on socket FD 156
+Loop 68 listening on socket FD 157
+Loop 87 listening on socket FD 173
+Loop 71 listening on socket FD 162
+Loop 8 listening on socket FD 185
+Loop 13 listening on socket FD 179
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 1 listening on socket FD 203
+Loop 0 listening on socket FD 202
+Loop 2 listening on socket FD 205
+Loop 3 listening on socket FD 204
+Loop 4 listening on socket FD 207
+Loop 5 listening on socket FD 206
+Loop 7 listening on socket FD 209
+Loop 11 listening on socket FD 212
+Loop 6 listening on socket FD 208
+Loop 8 listening on socket FD 211
+Loop 15 listening on socket FD 217
+Loop 18 listening on socket FD 220
+Loop 19 listening on socket FD 222
+Loop 22 listening on socket FD 224
+Loop 9 listening on socket FD 210
+Loop 10 listening on socket FD 213
+Loop 26 listening on socket FD 228
+Loop 31 listening on socket FD 231
+Loop 64 listening on socket FD 233
+Loop 66 listening on socket FD 234
+Loop 67 listening on socket FD 235
+Loop 69 listening on socket FD 236
+Loop 70 listening on socket FD 237
+Loop 75 listening on socket FD 238
+Loop 80 listening on socket FD 241
+Loop 17 listening on socket FD 219
+Loop 16 listening on socket FD 218
+Loop 12 listening on socket FD 215
+Loop 13 listening on socket FD 214
+Loop 14 listening on socket FD 216
+Loop 20 listening on socket FD 221
+Loop 21 listening on socket FD 223
+Loop 24 listening on socket FD 226
+Loop 27 listening on socket FD 225
+Loop 23 listening on socket FD 227
+Loop 28 listening on socket FD 232
+Loop 65 listening on socket FD 230
+Loop 30 listening on socket FD 229
+Loop 72 listening on socket FD 239
+Loop 68 listening on socket FD 240
+Loop 81 listening on socket FD 242
+Loop 89 listening on socket FD 252
+Loop 85 listening on socket FD 243
+Loop 84 listening on socket FD 245
+Loop 71 listening on socket FD 271
+Loop 73 listening on socket FD 269
+Loop 86 listening on socket FD 250
+Loop 79 listening on socket FD 244
+Loop 87 listening on socket FD 261
+Loop 83 listening on socket FD 246
+Loop 90 listening on socket FD 267
+Loop 93 listening on socket FD 255
+Loop 82 listening on socket FD 247
+Loop 91 listening on socket FD 253
+Loop 25 listening on socket FD 268
+Loop 74 listening on socket FD 249
+Loop 88 listening on socket FD 248
+Loop 95 listening on socket FD 264
+Loop 29 listening on socket FD 265
+Loop 92 listening on socket FD 251
+Loop 78 listening on socket FD 266
+Loop 94 listening on socket FD 254
+Loop 77 listening on socket FD 262
+Loop 76 listening on socket FD 256
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 3 listening on socket FD 259
+Loop 4 listening on socket FD 260
+Loop 1 listening on socket FD 257
+Loop 5 listening on socket FD 263
+Loop 9 listening on socket FD 275
+Loop 16 listening on socket FD 279
+Loop 6 listening on socket FD 270
+Loop 20 listening on socket FD 286
+Loop 22 listening on socket FD 287
+Loop 14 listening on socket FD 277
+Loop 8 listening on socket FD 273
+Loop 10 listening on socket FD 274
+Loop 11 listening on socket FD 276
+Loop 18 listening on socket FD 282
+Loop 13 listening on socket FD 281
+Loop 17 listening on socket FD 280
+Loop 30 listening on socket FD 296
+Loop 28 listening on socket FD 294
+Loop 68 listening on socket FD 301
+Loop 15 listening on socket FD 302
+Loop 19 listening on socket FD 284
+Loop 2 listening on socket FD 258
+Loop 72 listening on socket FD 308
+Loop 83 listening on socket FD 312
+Loop 77 listening on socket FD 314
+Loop 7 listening on socket FD 272
+Loop 21 listening on socket FD 285
+Loop 74 listening on socket FD 317
+Loop 86 listening on socket FD 316
+Loop 75 listening on socket FD 319
+Loop 88 listening on socket FD 320
+Loop 92 listening on socket FD 321
+Loop 94 listening on socket FD 325
+Loop 79 listening on socket FD 324
+Loop 12 listening on socket FD 283
+Loop 23 listening on socket FD 288
+Loop 89 listening on socket FD 328
+Loop 25 listening on socket FD 290
+Loop 24 listening on socket FD 289
+Loop 26 listening on socket FD 291
+Loop 29 listening on socket FD 292
+Loop 27 listening on socket FD 293
+Loop 31 listening on socket FD 295
+Loop 0 listening on socket FD 278
+Loop 67 listening on socket FD 298
+Loop 66 listening on socket FD 299
+Loop 64 listening on socket FD 297
+Loop 65 listening on socket FD 300
+Loop 71 listening on socket FD 305
+Loop 70 listening on socket FD 304
+Loop 69 listening on socket FD 303
+Loop 76 listening on socket FD 307
+Loop 73 listening on socket FD 306
+Loop 80 listening on socket FD 309
+Loop 82 listening on socket FD 310
+Loop 81 listening on socket FD 311
+Loop 78 listening on socket FD 313
+Loop 84 listening on socket FD 315
+Loop 85 listening on socket FD 318
+Loop 93 listening on socket FD 323
+Loop 91 listening on socket FD 326
+Loop 90 listening on socket FD 322
+Loop 95 listening on socket FD 327
+Loop 87 listening on socket FD 329
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 3 listening on socket FD 333
+Loop 2 listening on socket FD 332
+Loop 7 listening on socket FD 337
+Loop 1 listening on socket FD 331
+Loop 10 listening on socket FD 339
+Loop 13 listening on socket FD 341
+Loop 0 listening on socket FD 330
+Loop 6 listening on socket FD 336
+Loop 5 listening on socket FD 335
+Loop 21 listening on socket FD 347
+Loop 20 listening on socket FD 348
+Loop 14 listening on socket FD 350
+Loop 4 listening on socket FD 334
+Loop 8 listening on socket FD 338
+Loop 11 listening on socket FD 340
+Loop 31 listening on socket FD 360
+Loop 27 listening on socket FD 357
+Loop 15 listening on socket FD 342
+Loop 12 listening on socket FD 362
+Loop 71 listening on socket FD 366
+Loop 70 listening on socket FD 371
+Loop 17 listening on socket FD 346
+Loop 16 listening on socket FD 345
+Loop 18 listening on socket FD 343
+Loop 82 listening on socket FD 372
+Loop 19 listening on socket FD 344
+Loop 22 listening on socket FD 349
+Loop 9 listening on socket FD 351
+Loop 93 listening on socket FD 378
+Loop 73 listening on socket FD 380
+Loop 77 listening on socket FD 381
+Loop 95 listening on socket FD 383
+Loop 90 listening on socket FD 384
+Loop 23 listening on socket FD 352
+Loop 29 listening on socket FD 356
+Loop 76 listening on socket FD 385
+Loop 25 listening on socket FD 354
+Loop 24 listening on socket FD 353
+Loop 74 listening on socket FD 388
+Loop 92 listening on socket FD 391
+Loop 26 listening on socket FD 355
+Loop 75 listening on socket FD 392
+Loop 28 listening on socket FD 358
+Loop 30 listening on socket FD 361
+Loop 91 listening on socket FD 393
+Loop 66 listening on socket FD 359
+Loop 65 listening on socket FD 363
+Loop 69 listening on socket FD 370
+Loop 68 listening on socket FD 364
+Loop 64 listening on socket FD 367
+Loop 67 listening on socket FD 365
+Loop 80 listening on socket FD 368
+Loop 81 listening on socket FD 369
+Loop 79 listening on socket FD 373
+Loop 84 listening on socket FD 375
+Loop 86 listening on socket FD 376
+Loop 83 listening on socket FD 374
+Loop 85 listening on socket FD 377
+Loop 72 listening on socket FD 379
+Loop 94 listening on socket FD 382
+Loop 88 listening on socket FD 386
+Loop 87 listening on socket FD 389
+Loop 78 listening on socket FD 387
+Loop 89 listening on socket FD 390
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443
diff --git a/site/static/logs/unary-grpc/256/cardigan.log b/site/static/logs/unary-grpc/256/cardigan.log
new file mode 100644
index 000000000..db972fea1
--- /dev/null
+++ b/site/static/logs/unary-grpc/256/cardigan.log
@@ -0,0 +1,367 @@
+WARNING: Using incubator modules: jdk.incubator.vector
+Pinned cardigan-loop-0 to Linux CPU 0
+Pinned cardigan-loop-1 to Linux CPU 1
+Pinned cardigan-loop-2 to Linux CPU 2
+Pinned cardigan-loop-3 to Linux CPU 3
+Pinned cardigan-loop-4 to Linux CPU 4
+Pinned cardigan-loop-5 to Linux CPU 5
+Pinned cardigan-loop-6 to Linux CPU 6
+Pinned cardigan-loop-7 to Linux CPU 7
+Pinned cardigan-loop-8 to Linux CPU 8
+Pinned cardigan-loop-9 to Linux CPU 9
+Pinned cardigan-loop-10 to Linux CPU 10
+Pinned cardigan-loop-11 to Linux CPU 11
+Pinned cardigan-loop-12 to Linux CPU 12
+Pinned cardigan-loop-13 to Linux CPU 13
+Pinned cardigan-loop-14 to Linux CPU 14
+Pinned cardigan-loop-15 to Linux CPU 15
+Pinned cardigan-loop-16 to Linux CPU 16
+Pinned cardigan-loop-17 to Linux CPU 17
+Pinned cardigan-loop-18 to Linux CPU 18
+Pinned cardigan-loop-19 to Linux CPU 19
+Pinned cardigan-loop-20 to Linux CPU 20
+Pinned cardigan-loop-21 to Linux CPU 21
+Pinned cardigan-loop-22 to Linux CPU 22
+Pinned cardigan-loop-23 to Linux CPU 23
+Pinned cardigan-loop-24 to Linux CPU 24
+Pinned cardigan-loop-25 to Linux CPU 25
+Pinned cardigan-loop-26 to Linux CPU 26
+Pinned cardigan-loop-27 to Linux CPU 27
+Pinned cardigan-loop-28 to Linux CPU 28
+Pinned cardigan-loop-29 to Linux CPU 29
+Pinned cardigan-loop-30 to Linux CPU 30
+Pinned cardigan-loop-31 to Linux CPU 31
+Pinned cardigan-loop-64 to Linux CPU 64
+Pinned cardigan-loop-65 to Linux CPU 65
+Pinned cardigan-loop-66 to Linux CPU 66
+Pinned cardigan-loop-67 to Linux CPU 67
+Pinned cardigan-loop-68 to Linux CPU 68
+Pinned cardigan-loop-69 to Linux CPU 69
+Pinned cardigan-loop-70 to Linux CPU 70
+Pinned cardigan-loop-71 to Linux CPU 71
+Pinned cardigan-loop-72 to Linux CPU 72
+Pinned cardigan-loop-73 to Linux CPU 73
+Pinned cardigan-loop-74 to Linux CPU 74
+Pinned cardigan-loop-75 to Linux CPU 75
+Pinned cardigan-loop-76 to Linux CPU 76
+Pinned cardigan-loop-77 to Linux CPU 77
+Pinned cardigan-loop-78 to Linux CPU 78
+Pinned cardigan-loop-79 to Linux CPU 79
+Pinned cardigan-loop-80 to Linux CPU 80
+Pinned cardigan-loop-81 to Linux CPU 81
+Pinned cardigan-loop-82 to Linux CPU 82
+Pinned cardigan-loop-83 to Linux CPU 83
+Pinned cardigan-loop-84 to Linux CPU 84
+Pinned cardigan-loop-85 to Linux CPU 85
+Pinned cardigan-loop-86 to Linux CPU 86
+Pinned cardigan-loop-87 to Linux CPU 87
+Pinned cardigan-loop-88 to Linux CPU 88
+Pinned cardigan-loop-89 to Linux CPU 89
+Pinned cardigan-loop-90 to Linux CPU 90
+Pinned cardigan-loop-91 to Linux CPU 91
+Pinned cardigan-loop-92 to Linux CPU 92
+Pinned cardigan-loop-93 to Linux CPU 93
+Pinned cardigan-loop-94 to Linux CPU 94
+Pinned cardigan-loop-95 to Linux CPU 95
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /json/{count} -> HttpArenaJsonController.json
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [POST] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /baseline11 -> HttpArenaController.baseline11
+Registered Route: [GET] /pipeline -> HttpArenaController.pipeline
+Registered Route: [GET] /baseline2 -> HttpArenaController.baseline2
+Registered Route: [GET] /static/header.html -> HttpArenaStaticController.headerHtml
+Registered Route: [GET] /static/footer.html -> HttpArenaStaticController.footerHtml
+Registered Route: [GET] /static/components.css -> HttpArenaStaticController.componentsCss
+Registered Route: [GET] /static/layout.css -> HttpArenaStaticController.layoutCss
+Registered Route: [GET] /static/utilities.css -> HttpArenaStaticController.utilitiesCss
+Registered Route: [GET] /static/reset.css -> HttpArenaStaticController.resetCss
+Registered Route: [GET] /static/theme.css -> HttpArenaStaticController.themeCss
+Registered Route: [GET] /static/analytics.js -> HttpArenaStaticController.analyticsJs
+Registered Route: [GET] /static/helpers.js -> HttpArenaStaticController.helpersJs
+Registered Route: [GET] /static/router.js -> HttpArenaStaticController.routerJs
+Registered Route: [GET] /static/app.js -> HttpArenaStaticController.appJs
+Registered Route: [GET] /static/vendor.js -> HttpArenaStaticController.vendorJs
+Registered Route: [GET] /static/regular.woff2 -> HttpArenaStaticController.regularWoff2
+Registered Route: [GET] /static/bold.woff2 -> HttpArenaStaticController.boldWoff2
+Registered Route: [GET] /static/logo.svg -> HttpArenaStaticController.logoSvg
+Registered Route: [GET] /static/icon-sprite.svg -> HttpArenaStaticController.iconSpriteSvg
+Registered Route: [GET] /static/hero.webp -> HttpArenaStaticController.heroWebp
+Registered Route: [GET] /static/thumb1.webp -> HttpArenaStaticController.thumb1Webp
+Registered Route: [GET] /static/thumb2.webp -> HttpArenaStaticController.thumb2Webp
+Registered Route: [GET] /static/manifest.json -> HttpArenaStaticController.manifestJson
+Registered Route: [POST] /benchmark.BenchmarkService/GetSum -> HttpArenaGrpcController.getSum
+Registered Route: [POST] /benchmark.BenchmarkService/StreamSum -> HttpArenaGrpcController.streamSum
+Starting Cardigan Server on port 8080 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 24 listening on socket FD 177
+Loop 77 listening on socket FD 168
+Loop 27 listening on socket FD 185
+Loop 6 listening on socket FD 145
+Loop 68 listening on socket FD 195
+Loop 69 listening on socket FD 196
+Loop 0 listening on socket FD 150
+Loop 95 listening on socket FD 184
+Loop 23 listening on socket FD 152
+Loop 4 listening on socket FD 162
+Loop 93 listening on socket FD 170
+Loop 71 listening on socket FD 201
+Loop 20 listening on socket FD 161
+Loop 92 listening on socket FD 138
+Loop 30 listening on socket FD 163
+Loop 85 listening on socket FD 171
+Loop 9 listening on socket FD 178
+Loop 65 listening on socket FD 193
+Loop 14 listening on socket FD 149
+Loop 79 listening on socket FD 172
+Loop 7 listening on socket FD 155
+Loop 75 listening on socket FD 199
+Loop 28 listening on socket FD 153
+Loop 31 listening on socket FD 191
+Loop 70 listening on socket FD 198
+Loop 17 listening on socket FD 179
+Loop 67 listening on socket FD 192
+Loop 90 listening on socket FD 164
+Loop 72 listening on socket FD 197
+Loop 18 listening on socket FD 186
+Loop 82 listening on socket FD 165
+Loop 12 listening on socket FD 189
+Loop 84 listening on socket FD 143
+Loop 78 listening on socket FD 175
+Loop 29 listening on socket FD 139
+Loop 1 listening on socket FD 157
+Loop 13 listening on socket FD 151
+Loop 11 listening on socket FD 154
+Loop 26 listening on socket FD 159
+Loop 91 listening on socket FD 167
+Loop 87 listening on socket FD 180
+Loop 76 listening on socket FD 187
+Loop 25 listening on socket FD 166
+Loop 22 listening on socket FD 158
+Loop 80 listening on socket FD 156
+Loop 15 listening on socket FD 148
+Loop 81 listening on socket FD 146
+Loop 2 listening on socket FD 142
+Loop 66 listening on socket FD 194
+Loop 10 listening on socket FD 188
+Loop 5 listening on socket FD 169
+Loop 74 listening on socket FD 200
+Loop 73 listening on socket FD 183
+Loop 89 listening on socket FD 176
+Loop 19 listening on socket FD 160
+Loop 3 listening on socket FD 141
+Loop 86 listening on socket FD 182
+Loop 94 listening on socket FD 174
+Loop 21 listening on socket FD 144
+Loop 64 listening on socket FD 190
+Loop 8 listening on socket FD 140
+Loop 88 listening on socket FD 181
+Loop 16 listening on socket FD 147
+Loop 83 listening on socket FD 173
+Starting Cardigan Server on port 8081 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 2 listening on socket FD 203
+Loop 3 listening on socket FD 204
+Loop 1 listening on socket FD 205
+Loop 6 listening on socket FD 208
+Loop 4 listening on socket FD 206
+Loop 5 listening on socket FD 207
+Loop 11 listening on socket FD 209
+Loop 0 listening on socket FD 202
+Loop 14 listening on socket FD 214
+Loop 7 listening on socket FD 211
+Loop 15 listening on socket FD 215
+Loop 8 listening on socket FD 217
+Loop 9 listening on socket FD 210
+Loop 16 listening on socket FD 216
+Loop 13 listening on socket FD 212
+Loop 12 listening on socket FD 213
+Loop 17 listening on socket FD 218
+Loop 10 listening on socket FD 219
+Loop 19 listening on socket FD 220
+Loop 21 listening on socket FD 223
+Loop 23 listening on socket FD 224
+Loop 22 listening on socket FD 222
+Loop 27 listening on socket FD 226
+Loop 29 listening on socket FD 228
+Loop 30 listening on socket FD 230
+Loop 28 listening on socket FD 231
+Loop 67 listening on socket FD 235
+Loop 68 listening on socket FD 237
+Loop 70 listening on socket FD 240
+Loop 74 listening on socket FD 241
+Loop 79 listening on socket FD 245
+Loop 77 listening on socket FD 246
+Loop 20 listening on socket FD 225
+Loop 18 listening on socket FD 221
+Loop 26 listening on socket FD 227
+Loop 31 listening on socket FD 229
+Loop 64 listening on socket FD 232
+Loop 66 listening on socket FD 234
+Loop 65 listening on socket FD 233
+Loop 69 listening on socket FD 238
+Loop 25 listening on socket FD 236
+Loop 71 listening on socket FD 239
+Loop 78 listening on socket FD 244
+Loop 76 listening on socket FD 242
+Loop 72 listening on socket FD 243
+Loop 81 listening on socket FD 248
+Loop 80 listening on socket FD 247
+Loop 83 listening on socket FD 250
+Loop 82 listening on socket FD 249
+Loop 89 listening on socket FD 255
+Loop 87 listening on socket FD 254
+Loop 91 listening on socket FD 267
+Loop 86 listening on socket FD 253
+Loop 84 listening on socket FD 252
+Loop 85 listening on socket FD 251
+Loop 92 listening on socket FD 265
+Loop 94 listening on socket FD 260
+Loop 95 listening on socket FD 258
+Loop 93 listening on socket FD 262
+Loop 90 listening on socket FD 259
+Loop 88 listening on socket FD 256
+Loop 75 listening on socket FD 264
+Loop 73 listening on socket FD 268
+Loop 24 listening on socket FD 257
+Starting Cardigan Server on port 8082 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=plaintext, fixed-files=direct...
+Loop 3 listening on socket FD 263
+Loop 5 listening on socket FD 266
+Loop 2 listening on socket FD 261
+Loop 7 listening on socket FD 270
+Loop 4 listening on socket FD 271
+Loop 9 listening on socket FD 274
+Loop 13 listening on socket FD 277
+Loop 15 listening on socket FD 279
+Loop 17 listening on socket FD 281
+Loop 10 listening on socket FD 272
+Loop 19 listening on socket FD 283
+Loop 8 listening on socket FD 273
+Loop 1 listening on socket FD 276
+Loop 24 listening on socket FD 288
+Loop 25 listening on socket FD 289
+Loop 29 listening on socket FD 292
+Loop 30 listening on socket FD 294
+Loop 12 listening on socket FD 275
+Loop 64 listening on socket FD 296
+Loop 67 listening on socket FD 297
+Loop 66 listening on socket FD 301
+Loop 71 listening on socket FD 304
+Loop 0 listening on socket FD 278
+Loop 72 listening on socket FD 306
+Loop 73 listening on socket FD 305
+Loop 79 listening on socket FD 312
+Loop 75 listening on socket FD 310
+Loop 81 listening on socket FD 314
+Loop 14 listening on socket FD 315
+Loop 85 listening on socket FD 317
+Loop 88 listening on socket FD 322
+Loop 89 listening on socket FD 324
+Loop 94 listening on socket FD 328
+Loop 95 listening on socket FD 329
+Loop 16 listening on socket FD 280
+Loop 18 listening on socket FD 282
+Loop 20 listening on socket FD 285
+Loop 21 listening on socket FD 284
+Loop 23 listening on socket FD 286
+Loop 22 listening on socket FD 287
+Loop 28 listening on socket FD 291
+Loop 26 listening on socket FD 290
+Loop 27 listening on socket FD 293
+Loop 31 listening on socket FD 295
+Loop 70 listening on socket FD 299
+Loop 69 listening on socket FD 303
+Loop 65 listening on socket FD 298
+Loop 68 listening on socket FD 300
+Loop 11 listening on socket FD 302
+Loop 76 listening on socket FD 307
+Loop 82 listening on socket FD 313
+Loop 74 listening on socket FD 308
+Loop 80 listening on socket FD 311
+Loop 78 listening on socket FD 309
+Loop 83 listening on socket FD 316
+Loop 84 listening on socket FD 319
+Loop 86 listening on socket FD 318
+Loop 6 listening on socket FD 269
+Loop 87 listening on socket FD 320
+Loop 77 listening on socket FD 321
+Loop 90 listening on socket FD 323
+Loop 93 listening on socket FD 327
+Loop 91 listening on socket FD 326
+Loop 92 listening on socket FD 325
+Starting Cardigan Server on port 8443 with 64 io_uring event loops on CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95], transport=TLS/OpenSSL, fixed-files=async-alloc...
+Loop 4 listening on socket FD 334
+Loop 6 listening on socket FD 335
+Loop 2 listening on socket FD 331
+Loop 5 listening on socket FD 336
+Loop 7 listening on socket FD 337
+Loop 3 listening on socket FD 333
+Loop 1 listening on socket FD 332
+Loop 0 listening on socket FD 330
+Loop 10 listening on socket FD 338
+Loop 19 listening on socket FD 344
+Loop 12 listening on socket FD 339
+Loop 15 listening on socket FD 340
+Loop 16 listening on socket FD 341
+Loop 27 listening on socket FD 350
+Loop 28 listening on socket FD 351
+Loop 66 listening on socket FD 357
+Loop 64 listening on socket FD 356
+Loop 67 listening on socket FD 359
+Loop 68 listening on socket FD 361
+Loop 71 listening on socket FD 362
+Loop 13 listening on socket FD 365
+Loop 72 listening on socket FD 368
+Loop 75 listening on socket FD 369
+Loop 81 listening on socket FD 370
+Loop 17 listening on socket FD 342
+Loop 74 listening on socket FD 375
+Loop 85 listening on socket FD 380
+Loop 86 listening on socket FD 379
+Loop 76 listening on socket FD 383
+Loop 18 listening on socket FD 343
+Loop 91 listening on socket FD 391
+Loop 21 listening on socket FD 345
+Loop 20 listening on socket FD 382
+Loop 22 listening on socket FD 346
+Loop 90 listening on socket FD 387
+Loop 25 listening on socket FD 349
+Loop 94 listening on socket FD 393
+Loop 23 listening on socket FD 347
+Loop 24 listening on socket FD 348
+Loop 26 listening on socket FD 353
+Loop 30 listening on socket FD 354
+Loop 31 listening on socket FD 355
+Loop 29 listening on socket FD 352
+Loop 65 listening on socket FD 358
+Loop 70 listening on socket FD 360
+Loop 69 listening on socket FD 363
+Loop 73 listening on socket FD 367
+Loop 14 listening on socket FD 366
+Loop 11 listening on socket FD 364
+Loop 82 listening on socket FD 374
+Loop 80 listening on socket FD 377
+Loop 9 listening on socket FD 376
+Loop 78 listening on socket FD 373
+Loop 77 listening on socket FD 372
+Loop 84 listening on socket FD 378
+Loop 8 listening on socket FD 371
+Loop 89 listening on socket FD 384
+Loop 87 listening on socket FD 386
+Loop 93 listening on socket FD 388
+Loop 92 listening on socket FD 389
+Loop 83 listening on socket FD 381
+Loop 95 listening on socket FD 390
+Loop 79 listening on socket FD 392
+Loop 88 listening on socket FD 385
+Cardigan HttpArena listeners are ready on 8080, 8081, 8082, and 8443