Skip to content

Commit fc12253

Browse files
committed
Map-only tests
1 parent d6fa283 commit fc12253

File tree

5 files changed

+78
-0
lines changed

5 files changed

+78
-0
lines changed

bin/lc-stress-tests-map.sh

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
#!/usr/bin/env bash
2+
3+
jvm_opts="-server -Xms8g -Xmx8g -XX:+UseZGC"
4+
5+
struct_sizes=(0 1 8 16 32 64 256 1024)
6+
7+
java $jvm_opts -jar bin/fressian-mapreadlist.jar "map" ${struct_sizes[$JOB_COMPLETION_INDEX]} false
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
(ns simple-stress-test-mapreadlist
2+
(:require [aux :as a]
3+
[clojure.edn :as edn])
4+
(:gen-class))
5+
6+
(defn -main [& args]
7+
(let [parsed-args (map edn/read-string args)
8+
argmap (zipmap [:struct-type :struct-size :convert-list?] parsed-args)]
9+
(a/stress-test argmap nil)
10+
(System/exit 0)))
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
(ns simple-stress-test-mapreducer
2+
(:require [aux :as a]
3+
[clojure.edn :as edn])
4+
(:gen-class))
5+
6+
(defn -main [& args]
7+
(let [parsed-args (map edn/read-string args)
8+
argmap (zipmap [:struct-type :struct-size :convert-list?] parsed-args)]
9+
(a/stress-test argmap nil)
10+
(System/exit 0)))

project.clj

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@
1010
:profiles {:fressian-dev {:source-paths ["dev"]
1111
:java-source-paths ["../fressian/src"]
1212
:dependencies [#_[org.fressian/fressian "0.6.9-SNAPSHOT"]
13+
[org.clojure/core.async "1.6.681"]
1314
[org.clojure/clojure "1.12.0"]
15+
[ch.qos.logback/logback-classic "1.5.16"]
1416
[com.clojure-goes-fast/clj-memory-meter "0.3.0"]]
1517
:repl-options {:port 5555}
1618
:jvm-opts ["-Djdk.attach.allowAttachSelf"]}
@@ -39,6 +41,16 @@
3941
:uberjar-name "fressian-reduce.jar"
4042
:main simple-stress-test-reducer}
4143

44+
:fressian-reducemap {:dependencies [[org.fressian/fressian "0.6.9-IReduceKV"]]
45+
:aot [simple-stress-test-mapreducer]
46+
:uberjar-name "fressian-reducemap.jar"
47+
:main simple-stress-test-mapreducer}
48+
49+
:fressian-mapreadlist {:dependencies [[org.fressian/fressian "0.6.9-mapReadList"]]
50+
:aot [simple-stress-test-mapreadlist]
51+
:uberjar-name "fressian-mapreadlist.jar"
52+
:main simple-stress-test-mapreadlist}
53+
4254
:fressian-old {:dependencies [[org.fressian/fressian "0.6.8"]]
4355
:aot [simple-stress-test-converter]
4456
:uberjar-name "fressian-old.jar"

resources/k8s-map.yaml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
apiVersion: batch/v1
2+
kind: Job
3+
metadata:
4+
name: fressian-test
5+
spec:
6+
completions: 8
7+
parallelism: 6
8+
completionMode: Indexed
9+
template:
10+
metadata:
11+
labels:
12+
app: fressian-test
13+
spec:
14+
nodeSelector:
15+
role: worker
16+
restartPolicy: Never
17+
containers:
18+
- name: fressian-test-clj
19+
image: eclipse-temurin:21
20+
volumeMounts:
21+
- name: data-fressian
22+
mountPath: "/opt/data.fressian"
23+
- name: maven
24+
mountPath: "/root/.m2"
25+
workingDir: "/opt/data.fressian"
26+
command: ["bash", "-c"]
27+
args:
28+
- "bin/lc-stress-tests-map.sh"
29+
resources:
30+
limits:
31+
cpu: 3000m
32+
memory: 10Gi
33+
volumes:
34+
- name: data-fressian
35+
hostPath:
36+
path: "/home/k3s/dev/datomic/repos/data.fressian"
37+
- name: maven
38+
hostPath:
39+
path: "/home/k3s/.m2"

0 commit comments

Comments
 (0)