Skip to content

Commit e8419e0

Browse files
committed
Use jar files instead of lein run
1 parent a8eb147 commit e8419e0

File tree

9 files changed

+140
-37
lines changed

9 files changed

+140
-37
lines changed

bin/fressian-convert.jar

8.67 MB
Binary file not shown.

bin/fressian-mapreadlist.jar

8.66 MB
Binary file not shown.

bin/fressian-old.jar

8.66 MB
Binary file not shown.

bin/fressian-reduce.jar

8.67 MB
Binary file not shown.

bin/fressian-reducemap.jar

8.67 MB
Binary file not shown.

bin/lc-stress-tests-jar.sh

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
#!/usr/bin/env bash
2+
3+
struct_sizes=(0 1 8 16 32 64 256 1024)
4+
5+
jvm_opts="-server -Xms8g -Xmx8g -XX:+UseZGC"
6+
7+
for size in "${struct_sizes[@]}"; do
8+
case $JOB_COMPLETION_INDEX in
9+
0|1)
10+
if (( JOB_COMPLETION_INDEX == 0)); then
11+
java $jvm_opts -jar bin/fressian-old.jar "vec" ${size} false
12+
else
13+
java $jvm_opts -jar bin/fressian-old.jar "map" ${size} false
14+
fi
15+
;;
16+
2|3)
17+
if (( JOB_COMPLETION_INDEX == 2)); then
18+
java $jvm_opts -jar bin/fressian-convert.jar "vec" ${size} false
19+
else
20+
java $jvm_opts -jar bin/fressian-convert.jar "map" ${size} false
21+
fi
22+
;;
23+
4|5)
24+
if (( JOB_COMPLETION_INDEX == 4)); then
25+
java $jvm_opts -jar bin/fressian-convert.jar "vec" ${size} true
26+
else
27+
java $jvm_opts -jar bin/fressian-convert.jar "map" ${size} true
28+
fi
29+
;;
30+
6|7)
31+
if (( JOB_COMPLETION_INDEX == 6)); then
32+
java $jvm_opts -jar bin/fressian-reduce.jar "vec" ${size} false
33+
else
34+
java $jvm_opts -jar bin/fressian-reduce.jar "map" ${size} false
35+
fi
36+
;;
37+
8|9)
38+
if (( JOB_COMPLETION_INDEX == 8)); then
39+
java $jvm_opts -jar bin/fressian-reduce.jar "vec" ${size} true
40+
else
41+
java $jvm_opts -jar bin/fressian-reduce.jar "map" ${size} true
42+
fi
43+
;;
44+
10|11)
45+
if (( JOB_COMPLETION_INDEX == 10)); then
46+
java $jvm_opts -jar bin/fressian-reducemap.jar "vec" ${size} true
47+
else
48+
java $jvm_opts -jar bin/fressian-reducemap.jar "map" ${size} true
49+
fi
50+
;;
51+
esac
52+
done

project.clj

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,23 @@
2424
:jvm-opts ["-server"
2525
"-Xms8g" "-Xmx8g"
2626
"-XX:+UseZGC"]}
27+
:jar {:source-paths ^:replace ["dev"]
28+
:dependencies [[org.clojure/clojure "1.12.0"]
29+
[org.clojure/core.async "1.6.681"]
30+
[ch.qos.logback/logback-classic "1.5.16"]]}
31+
2732
:fressian-convert {:dependencies [[org.fressian/fressian "0.6.9-IConvertList"]]
33+
:aot [simple-stress-test-converter]
34+
:uberjar-name "fressian-convert.jar"
2835
:main simple-stress-test-converter}
36+
2937
:fressian-reduce {:dependencies [[org.fressian/fressian "0.6.9-IReduceList"]]
38+
:aot [simple-stress-test-reducer]
39+
:uberjar-name "fressian-reduce.jar"
3040
:main simple-stress-test-reducer}
31-
:fressian-old {:dependencies [[org.fressian/fressian "0.6.8"]]
32-
:main simple-stress-test}}
3341

42+
:fressian-old {:dependencies [[org.fressian/fressian "0.6.8"]]
43+
:aot [simple-stress-test-converter]
44+
:uberjar-name "fressian-old.jar"
45+
:main simple-stress-test-converter}}
3446
:jvm-opts ["-Xmx2g" "-server"])

resources/k8s-lein.yaml

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
apiVersion: batch/v1
2+
kind: Job
3+
metadata:
4+
name: fressian-test
5+
spec:
6+
completions: 11
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: clojure:temurin-21-lein
20+
ports:
21+
- name: metrics
22+
containerPort: 9000
23+
volumeMounts:
24+
- name: data-fressian
25+
mountPath: "/opt/data.fressian"
26+
- name: maven
27+
mountPath: "/root/.m2"
28+
workingDir: "/opt/data.fressian"
29+
command: ["bash", "-c"]
30+
args:
31+
- "bin/lc-stress-tests.sh"
32+
resources:
33+
limits:
34+
cpu: 3000m
35+
memory: 10Gi
36+
volumes:
37+
- name: data-fressian
38+
hostPath:
39+
path: "/home/k3s/dev/datomic/repos/data.fressian"
40+
- name: maven
41+
hostPath:
42+
path: "/home/k3s/.m2"
43+
---
44+
apiVersion: v1
45+
kind: Service
46+
metadata:
47+
name: fressian-test-http
48+
labels:
49+
app: fressian-test
50+
spec:
51+
ports:
52+
- port: 9000
53+
selector:
54+
app: fressian-test
55+
---
56+
apiVersion: monitoring.coreos.com/v1
57+
kind: ServiceMonitor
58+
metadata:
59+
name: fressian-test
60+
spec:
61+
endpoints:
62+
- interval: 30s
63+
targetPort: 9000
64+
path: /metrics
65+
namespaceSelector:
66+
matchNames:
67+
- default
68+
selector:
69+
matchLabels:
70+
app: fressian-test

resources/k8s.yaml

Lines changed: 4 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ kind: Job
33
metadata:
44
name: fressian-test
55
spec:
6-
completions: 10
6+
completions: 12
77
parallelism: 6
88
completionMode: Indexed
99
template:
@@ -16,10 +16,7 @@ spec:
1616
restartPolicy: Never
1717
containers:
1818
- name: fressian-test-clj
19-
image: clojure:temurin-21-lein
20-
ports:
21-
- name: metrics
22-
containerPort: 9000
19+
image: eclipse-temurin:21
2320
volumeMounts:
2421
- name: data-fressian
2522
mountPath: "/opt/data.fressian"
@@ -28,7 +25,7 @@ spec:
2825
workingDir: "/opt/data.fressian"
2926
command: ["bash", "-c"]
3027
args:
31-
- "bin/lc-stress-tests.sh"
28+
- "bin/lc-stress-tests-jar.sh"
3229
resources:
3330
limits:
3431
cpu: 3000m
@@ -39,32 +36,4 @@ spec:
3936
path: "/home/k3s/dev/datomic/repos/data.fressian"
4037
- name: maven
4138
hostPath:
42-
path: "/home/k3s/.m2"
43-
---
44-
apiVersion: v1
45-
kind: Service
46-
metadata:
47-
name: fressian-test-http
48-
labels:
49-
app: fressian-test
50-
spec:
51-
ports:
52-
- port: 9000
53-
selector:
54-
app: fressian-test
55-
---
56-
apiVersion: monitoring.coreos.com/v1
57-
kind: ServiceMonitor
58-
metadata:
59-
name: fressian-test
60-
spec:
61-
endpoints:
62-
- interval: 30s
63-
targetPort: 9000
64-
path: /metrics
65-
namespaceSelector:
66-
matchNames:
67-
- default
68-
selector:
69-
matchLabels:
70-
app: fressian-test
39+
path: "/home/k3s/.m2"

0 commit comments

Comments
 (0)