Page MenuHomeSoftware Heritage

D1849.id6222.diff
No OneTemporary

D1849.id6222.diff

diff --git a/java/server/src/main/java/org/softwareheritage/graph/benchmark/Vault.java b/java/server/src/main/java/org/softwareheritage/graph/benchmark/Vault.java
new file mode 100644
--- /dev/null
+++ b/java/server/src/main/java/org/softwareheritage/graph/benchmark/Vault.java
@@ -0,0 +1,40 @@
+package org.softwareheritage.graph.benchmark;
+
+import java.io.IOException;
+
+import org.softwareheritage.graph.Endpoint;
+import org.softwareheritage.graph.Graph;
+import org.softwareheritage.graph.benchmark.Common;
+import org.softwareheritage.graph.benchmark.utils.Random;
+
+/**
+ * Benchmark Software Heritage vault use-case scenario: <a
+ * href="https://docs.softwareheritage.org/devel/swh-graph/use-cases.html">use cases</a>.
+ *
+ * @author Thibault Allançon
+ * @version 0.0.1
+ * @since 0.0.1
+ */
+
+public class Vault {
+ /**
+ * Main entrypoint.
+ *
+ * @param args command line arguments
+ */
+ public static void main(String[] args) throws IOException {
+ String path = args[0];
+ Graph graph = new Graph(path);
+
+ final long seed = 42;
+ final int nbNodes = 100_000;
+ Random random = new Random(seed);
+ long[] nodeIds = random.generateNodeIds(graph, nbNodes);
+
+ Endpoint endpoint = new Endpoint(graph, "forward", "*");
+
+ System.out.println("Used " + nbNodes + " random nodes (results are in seconds):");
+ System.out.println("\n'git bundle' use-case");
+ Common.timeEndpoint(graph, nodeIds, endpoint::visitNodes);
+ }
+}

File Metadata

Mime Type
text/plain
Expires
Jan 30 2025, 11:48 AM (6 w, 2 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3220849

Event Timeline