@@ -53,23 +53,24 @@ jobs:
53
53
54
54
steps :
55
55
- name : make
56
- run : |
57
- gmake -j32 CXX=g++-${{matrix.compiler}} CC=gcc-${{matrix.compiler}} PLATFORM=${{ matrix.platform }} LEIDEN=true STATIC_LINK=true
58
- cp ./bin/clusty ./clusty-${{matrix.compiler}}
59
- gmake clean
56
+ run : gmake -j32 CXX=g++-${{matrix.compiler}} CC=gcc-${{matrix.compiler}} PLATFORM=${{ matrix.platform }} LEIDEN=true STATIC_LINK=true
57
+ - name : copy executable
58
+ run : cp ./bin/clusty ./clusty-${{matrix.compiler}}
59
+ - name : clean
60
+ run : gmake clean
61
+
60
62
61
63
# #######################################################################################
62
- toy :
63
- name : Toy example
64
+ synth :
65
+ name : Synthetic example
64
66
needs : make
65
67
strategy :
66
68
fail-fast : false
67
69
matrix :
68
- algo : [single]
69
70
machine : [x64_linux, x64_mac, arm64_linux, arm64_mac]
70
71
compiler : [11, 12]
71
72
include :
72
- - {algo: single, machine: x64_linux, compiler: 14}
73
+ - {machine: x64_linux, compiler: 14}
73
74
74
75
runs-on : [self-hosted, clusty, '${{ matrix.machine }}']
75
76
@@ -78,16 +79,49 @@ jobs:
78
79
run : ./clusty-${{matrix.compiler}}
79
80
- name : version
80
81
run : ./clusty-${{matrix.compiler}} --version
81
- - name : ${{matrix.algo}} (no representatives, numeric ids, singletons in object file)
82
+
83
+
84
+ - name : numeric, w/o representatives, w/o objects
82
85
run : |
83
- ./clusty-${{matrix.compiler}} --objects-file ./test/toy.ids.tsv --algo ${{matrix.algo}} --id-cols idx1 idx2 --distance-col tani --similarity --numeric-ids --min tani 0.95 ./test/toy.ani.tsv toy.${{matrix.algo}}.tsv
84
- python3 ./test/cmp.py toy.${{matrix.algo}}.tsv ./test/toy.${{matrix.algo}}.tsv
85
-
86
- # #######################################################################################
87
-
86
+ ./clusty-${{matrix.compiler}} --id-cols id1 id2 --distance-col ani --similarity --min ani 0.70 --numeric-ids ./test/synth/synth.ani numeric.clusty
87
+ cmp ./test/synth/numeric.clusty numeric.clusty
88
+ - name : numeric, w/o representatives, w/ objects
89
+ run : |
90
+ ./clusty-${{matrix.compiler}} --id-cols id1 id2 --distance-col ani --similarity --min ani 0.70 --numeric-ids ./test/synth/synth.ani numeric.objs.clusty --objects-file ./test/synth/synth.ids
91
+ cmp ./test/synth/numeric.objs.clusty numeric.objs.clusty
92
+ - name : numeric, w/ representatives, w/o objects
93
+ run : |
94
+ ./clusty-${{matrix.compiler}} --id-cols id1 id2 --distance-col ani --similarity --min ani 0.70 --numeric-ids ./test/synth/synth.ani numeric.reps.clusty --out-representatives
95
+ cmp ./test/synth/numeric.reps.clusty numeric.reps.clusty
96
+ - name : numeric, w/ representatives, w/ objects
97
+ run : |
98
+ ./clusty-${{matrix.compiler}} --id-cols id1 id2 --distance-col ani --similarity --min ani 0.70 --numeric-ids ./test/synth/synth.ani numeric.objs.reps.clusty --objects-file ./test/synth/synth.ids --out-representatives
99
+ cmp ./test/synth/numeric.objs.reps.clusty numeric.objs.reps.clusty
100
+
101
+
102
+ - name : named, w/o representatives, w/o objects
103
+ run : |
104
+ ./clusty-${{matrix.compiler}} --id-cols name1 name2 --distance-col ani --similarity --min ani 0.70 ./test/synth/synth.ani named.clusty
105
+ cmp ./test/synth/named.clusty named.clusty
106
+ - name : named, w/o representatives, w/ objects
107
+ run : |
108
+ ./clusty-${{matrix.compiler}} --id-cols name1 name2 --distance-col ani --similarity --min ani 0.70 ./test/synth/synth.ani named.objs.clusty --objects-file ./test/synth/synth.ids
109
+ cmp ./test/synth/named.objs.clusty named.objs.clusty
110
+ - name : named, w/ representatives, w/o objects
111
+ run : |
112
+ ./clusty-${{matrix.compiler}} --id-cols name1 name2 --distance-col ani --similarity --min ani 0.70 ./test/synth/synth.ani named.reps.clusty --out-representatives
113
+ cmp ./test/synth/named.reps.clusty named.reps.clusty
114
+ - name : named, w/ representatives, w/ objects
115
+ run : |
116
+ ./clusty-${{matrix.compiler}} --id-cols name1 name2 --distance-col ani --similarity --min ani 0.70 ./test/synth/synth.ani named.objs.reps.clusty --objects-file ./test/synth/synth.ids --out-representatives
117
+ cmp ./test/synth/named.objs.reps.clusty named.objs.reps.clusty
118
+
119
+
120
+ # #######################################################################################
121
+
88
122
vir61-linkage :
89
123
name : Vir61
90
- needs : toy
124
+ needs : synth
91
125
strategy :
92
126
fail-fast : false
93
127
matrix :
@@ -104,14 +138,19 @@ jobs:
104
138
runs-on : [self-hosted, clusty, '${{ matrix.machine }}']
105
139
106
140
steps :
107
- - name : ${{matrix.algo}}, ${{matrix.threshold}} (with representatives, reordered columns)
141
+ - name : ${{matrix.algo}}, ${{matrix.threshold}} (w/o representatives, reordered columns)
142
+ run : |
143
+ ./clusty-${{matrix.compiler}} --algo ${{matrix.algo}} --objects-file ./test/vir61/vir61.list --similarity --min ani 0.${{matrix.threshold}} --id-cols id2 id1 --distance-col ani ./test/vir61/vir61.ani vir61.${{matrix.algo}}.${{matrix.threshold}}
144
+ python3 ./test/cmp.py vir61.${{matrix.algo}}.${{matrix.threshold}} ./test/vir61/vir61.${{matrix.algo}}.${{matrix.threshold}}.python.csv
145
+
146
+ - name : ${{matrix.algo}}, ${{matrix.threshold}} (w/ representatives, reordered columns)
108
147
run : |
109
- ./clusty-${{matrix.compiler}} --algo ${{matrix.algo}} --objects-file ./test/vir61.list --similarity --min ani 0.${{matrix.threshold}} --id-cols id2 id1 --distance-col ani ./test/vir61.ani vir61.${{matrix.algo}}.${{matrix.threshold}} --out-representatives
110
- python3 ./test/cmp.py vir61.${{matrix.algo}}.${{matrix.threshold}} ./test/vir61.${{matrix.algo}}.${{matrix.threshold}}.python.csv
148
+ ./clusty-${{matrix.compiler}} --algo ${{matrix.algo}} --objects-file ./test/vir61/vir61 .list --similarity --min ani 0.${{matrix.threshold}} --id-cols id2 id1 --distance-col ani ./test/vir61/vir61 .ani vir61.${{matrix.algo}}.${{matrix.threshold}}.reps --out-representatives
149
+ python3 ./test/cmp.py vir61.${{matrix.algo}}.${{matrix.threshold}}.reps ./test/vir61 /vir61.${{matrix.algo}}.${{matrix.threshold}}.python.csv
111
150
112
151
# #######################################################################################
113
152
ictv-linkage :
114
- name : ICTV (single and complete versus python clusterings)
153
+ name : ICTV python ref
115
154
needs : vir61-linkage
116
155
strategy :
117
156
fail-fast : false
@@ -129,35 +168,36 @@ jobs:
129
168
runs-on : [self-hosted, clusty, '${{ matrix.machine }}']
130
169
131
170
steps :
132
- - name : ${{matrix.algo}}, ${{matrix.threshold}} (no representatives)
171
+ - name : ${{matrix.algo}}, ${{matrix.threshold}} (w/o representatives)
133
172
run : |
134
- ./clusty-${{matrix.compiler}} --algo ${{matrix.algo}} --objects-file ./test/ictv.list --similarity --min ani 0.${{matrix.threshold}} ./test/ictv.ani ictv.${{matrix.algo}}.${{matrix.threshold}}
135
- python3 ./test/cmp.py ictv.${{matrix.algo}}.${{matrix.threshold}} ./test/ictv.${{matrix.algo}}.${{matrix.threshold}}.python.csv
173
+ ./clusty-${{matrix.compiler}} --algo ${{matrix.algo}} --objects-file ./test/ictv/ictv .list --similarity --min ani 0.${{matrix.threshold}} ./test/ictv /ictv.ani ictv.${{matrix.algo}}.${{matrix.threshold}}
174
+ python3 ./test/cmp.py ictv.${{matrix.algo}}.${{matrix.threshold}} ./test/ictv/ictv .${{matrix.algo}}.${{matrix.threshold}}.python.csv
136
175
137
- - name : ${{matrix.algo}}, ${{matrix.threshold}} (with representatives)
176
+ - name : ${{matrix.algo}}, ${{matrix.threshold}} (w/ representatives)
138
177
run : |
139
- ./clusty-${{matrix.compiler}} --algo ${{matrix.algo}} --objects-file ./test/ictv.list --similarity --min ani 0.${{matrix.threshold}} ./test/ictv.ani ictv.${{matrix.algo}}.${{matrix.threshold}}.reps --out-representatives
140
- python3 ./test/cmp.py ictv.${{matrix.algo}}.${{matrix.threshold}}.reps ./test/ictv.${{matrix.algo}}.${{matrix.threshold}}.python.csv
178
+ ./clusty-${{matrix.compiler}} --algo ${{matrix.algo}} --objects-file ./test/ictv/ictv .list --similarity --min ani 0.${{matrix.threshold}} ./test/ictv /ictv.ani ictv.${{matrix.algo}}.${{matrix.threshold}}.reps --out-representatives
179
+ python3 ./test/cmp.py ictv.${{matrix.algo}}.${{matrix.threshold}}.reps ./test/ictv/ictv .${{matrix.algo}}.${{matrix.threshold}}.python.csv
141
180
142
- - name : ${{matrix.algo}}, ${{matrix.threshold}} (no representatives, numeric ids)
181
+ - name : ${{matrix.algo}}, ${{matrix.threshold}} (w/o representatives, numeric ids)
143
182
run : |
144
- ./clusty-${{matrix.compiler}} --algo ${{matrix.algo}} --objects-file ./test/ictv.list --similarity --min ani 0.${{matrix.threshold}} ./test/ictv.num ictv.${{matrix.algo}}.${{matrix.threshold}}.num --numeric-ids
145
- python3 ./test/cmp.py ictv.${{matrix.algo}}.${{matrix.threshold}}.num ./test/ictv.${{matrix.algo}}.${{matrix.threshold}}.python.csv
183
+ ./clusty-${{matrix.compiler}} --algo ${{matrix.algo}} --objects-file ./test/ictv/ictv .list --similarity --min ani 0.${{matrix.threshold}} ./test/ictv /ictv.num ictv.${{matrix.algo}}.${{matrix.threshold}}.num --numeric-ids
184
+ python3 ./test/cmp.py ictv.${{matrix.algo}}.${{matrix.threshold}}.num ./test/ictv/ictv .${{matrix.algo}}.${{matrix.threshold}}.python.csv
146
185
147
- - name : ${{matrix.algo}}, ${{matrix.threshold}} (with representatives, numeric ids)
186
+ - name : ${{matrix.algo}}, ${{matrix.threshold}} (w/ representatives, numeric ids)
148
187
run : |
149
- ./clusty-${{matrix.compiler}} --algo ${{matrix.algo}} --objects-file ./test/ictv.list --similarity --min ani 0.${{matrix.threshold}} ./test/ictv.num ictv.${{matrix.algo}}.${{matrix.threshold}}.reps.num --out-representatives --numeric-ids
150
- python3 ./test/cmp.py ictv.${{matrix.algo}}.${{matrix.threshold}}.reps.num ./test/ictv.${{matrix.algo}}.${{matrix.threshold}}.python.csv
188
+ ./clusty-${{matrix.compiler}} --algo ${{matrix.algo}} --objects-file ./test/ictv/ictv .list --similarity --min ani 0.${{matrix.threshold}} ./test/ictv /ictv.num ictv.${{matrix.algo}}.${{matrix.threshold}}.reps.num --out-representatives --numeric-ids
189
+ python3 ./test/cmp.py ictv.${{matrix.algo}}.${{matrix.threshold}}.reps.num ./test/ictv/ictv .${{matrix.algo}}.${{matrix.threshold}}.python.csv
151
190
152
191
# #######################################################################################
153
192
ictv-all :
154
- name : ICTV ( all algos versus our clusterings)
193
+ name : ICTV all algos
155
194
needs : ictv-linkage
156
195
strategy :
157
196
fail-fast : false
158
197
matrix :
159
198
algo : [single, complete, uclust, set-cover, cd-hit, leiden]
160
199
threshold : [70]
200
+ threads : [4, 8, 16]
161
201
machine : [x64_linux, x64_mac, arm64_linux, arm64_mac]
162
202
compiler : [12]
163
203
include :
@@ -171,17 +211,17 @@ jobs:
171
211
runs-on : [self-hosted, clusty, '${{ matrix.machine }}']
172
212
173
213
steps :
174
- - name : ${{matrix.algo}}, ${{matrix.threshold}} (no representatives)
214
+ - name : ${{matrix.algo}}, ${{matrix.threshold}}, ${{matrix.threads}} threads (no representatives)
175
215
run : |
176
- ./clusty-${{matrix.compiler}} -- algo ${{matrix.algo}} --objects-file ./test/ictv.list --similarity --min ani 0.${{matrix.threshold}} ./test/ictv.ani ictv.${{matrix.algo}}.${{matrix.threshold}}
177
- cmp ictv.${{matrix.algo}}.${{matrix.threshold}} ./test/ictv.${{matrix.algo}}.${{matrix.threshold}}.csv
216
+ ./clusty-${{matrix.compiler}} -t ${{matrix.threads}} -- algo ${{matrix.algo}} --objects-file ./test/ictv/ictv .list --similarity --min ani 0.${{matrix.threshold}} ./test/ictv /ictv.ani ictv.${{matrix.algo}}.${{matrix.threshold}}
217
+ cmp ictv.${{matrix.algo}}.${{matrix.threshold}} ./test/ictv/ictv .${{matrix.algo}}.${{matrix.threshold}}.csv
178
218
179
- - name : ${{matrix.algo}}, ${{matrix.threshold}} (with representatives)
219
+ - name : ${{matrix.algo}}, ${{matrix.threshold}}, ${{matrix.threads}} threads (with representatives)
180
220
run : |
181
- ./clusty-${{matrix.compiler}} -- algo ${{matrix.algo}} --objects-file ./test/ictv.list --similarity --min ani 0.${{matrix.threshold}} ./test/ictv.ani ictv.${{matrix.algo}}.${{matrix.threshold}}.reps --out-representatives
182
- cmp ictv.${{matrix.algo}}.${{matrix.threshold}}.reps ./test/ictv.${{matrix.algo}}.${{matrix.threshold}}.reps.csv
221
+ ./clusty-${{matrix.compiler}} -t ${{matrix.threads}} -- algo ${{matrix.algo}} --objects-file ./test/ictv/ictv .list --similarity --min ani 0.${{matrix.threshold}} ./test/ictv /ictv.ani ictv.${{matrix.algo}}.${{matrix.threshold}}.reps --out-representatives
222
+ cmp ictv.${{matrix.algo}}.${{matrix.threshold}}.reps ./test/ictv/ictv .${{matrix.algo}}.${{matrix.threshold}}.reps.csv
183
223
184
- - name : ${{matrix.algo}}, ${{matrix.threshold}} (with representatives, numeric ids)
224
+ - name : ${{matrix.algo}}, ${{matrix.threshold}}, ${{matrix.threads}} threads (with representatives, numeric ids)
185
225
run : |
186
- ./clusty-${{matrix.compiler}} -- algo ${{matrix.algo}} --objects-file ./test/ictv.list --similarity --min ani 0.${{matrix.threshold}} ./test/ictv.num ictv.${{matrix.algo}}.${{matrix.threshold}}.reps.num --out-representatives --numeric-ids
187
- cmp ictv.${{matrix.algo}}.${{matrix.threshold}}.reps.num ./test/ictv.${{matrix.algo}}.${{matrix.threshold}}.reps.csv
226
+ ./clusty-${{matrix.compiler}} -t ${{matrix.threads}} -- algo ${{matrix.algo}} --objects-file ./test/ictv/ictv .list --similarity --min ani 0.${{matrix.threshold}} ./test/ictv /ictv.num ictv.${{matrix.algo}}.${{matrix.threshold}}.reps.num --out-representatives --numeric-ids
227
+ cmp ictv.${{matrix.algo}}.${{matrix.threshold}}.reps.num ./test/ictv/ictv .${{matrix.algo}}.${{matrix.threshold}}.reps.csv
0 commit comments