diff --git a/src/bin/kmerclust.R b/src/bin/kmerclust.R
new file mode 100644
index 0000000000000000000000000000000000000000..31507a1b09575b4694af37e5d6600b21e53ce0cf
--- /dev/null
+++ b/src/bin/kmerclust.R
@@ -0,0 +1,21 @@
+library(kmerclust)
+library(ggplot2)
+
+args <- commandArgs(trailingOnly = TRUE)
+
+data <- readr::read_tsv(args[2], show_col_types = FALSE)
+format(object.size(data), units = "Mb")
+annotation <- parse_annotation(args[1])
+count <- annotate_counts(annotation, data, args[3])
+save(count, file = paste0(args[3], ".Rdata"))
+
+res <- compare_models(count %>% dplyr::ungroup(), nboot = 100, bootsize = 0.1, core = as.numeric(args[4]))
+save(res, file = paste0(args[3], "_boot.Rdata"))
+res %>%
+    ggplot(aes(x = name, y = BIC)) +
+    geom_violin()
+ggsave(paste0(args[3], "_BIC.pdf"))
+res %>%
+    ggplot(aes(x = name, y = WSS_f / BSS)) +
+    geom_violin()
+ggsave(paste0(args[3], "_WSS_BSS.pdf"))
diff --git a/src/kmerclust b/src/kmerclust
index fa432617ab1e7b8eea3c4d671ce9e8948653e6f6..bd49510e4e4931796e2ed7811333479e74f52269 160000
--- a/src/kmerclust
+++ b/src/kmerclust
@@ -1 +1 @@
-Subproject commit fa432617ab1e7b8eea3c4d671ce9e8948653e6f6
+Subproject commit bd49510e4e4931796e2ed7811333479e74f52269
diff --git a/src/modules/kmerclust.nf b/src/modules/kmerclust.nf
index 8967ea7713eee504cda13bcdc7f8fa9c046a2a3e..3f652dacf64a7b2cd4661da6fd0a8906e27d91c9 100644
--- a/src/modules/kmerclust.nf
+++ b/src/modules/kmerclust.nf
@@ -16,7 +16,7 @@ process KMERCLUST {
     script:
     def args = task.ext.args ?: ''
     """
-    Rscript ../bin/kmerclust.R ${params.csv} ${csv} ${specie}
+    Rscript ../bin/kmerclust.R ${params.csv} ${csv} ${specie} ${task.cpus}
 
     cat <<-END_VERSIONS > versions.yml
     "${task.process}":