I used AI to rewrite 15 RNA-seq QC tools into a single Rust binary (I've never written any Rust). It ended up being over 60x faster. Here's the story 🧵
seqeralabs.github.io/RustQC/
I used AI to rewrite 15 RNA-seq QC tools into a single Rust binary (I've never written any Rust). It ended up being over 60x faster. Here's the story 🧵
seqeralabs.github.io/RustQC/
→ RustQC: seqeralabs.github.io/RustQC/
→ rewrites.bio
→ RustQC blog: seqera.io/blog/rustqc
→ rewrites blog: seqera.io/blog/rewrite...
→ RustQC: seqeralabs.github.io/RustQC/
→ rewrites.bio
→ RustQC blog: seqera.io/blog/rustqc
→ rewrites blog: seqera.io/blog/rewrite...
I talked about my recent odyssey with AI-written software, including #RustQC, rewrites.bio, Trim Galore and a FastQC rust rewrite 👀
This was honestly one of my favourite talks to date. I hope it's interesting for folks 😊
I talked about my recent odyssey with AI-written software, including #RustQC, rewrites.bio, Trim Galore and a FastQC rust rewrite 👀
This was honestly one of my favourite talks to date. I hope it's interesting for folks 😊
We used AI to reimplement 15 RNA-Seq QC tools (dupRadar, Qualimap, RSeQC, Preseq, samtools, featureCounts) into a single tool, written in @rust-lang.org:
✅ 15 h analyses → 15 min
✅ Identical outputs
✅ Drastically reduced I/O
We used AI to reimplement 15 RNA-Seq QC tools (dupRadar, Qualimap, RSeQC, Preseq, samtools, featureCounts) into a single tool, written in @rust-lang.org:
✅ 15 h analyses → 15 min
✅ Identical outputs
✅ Drastically reduced I/O
I wrote a blog post about this story, so you can read in a bit more detail here: seqera.io/blog/rustqc
I wrote a blog post about this story, so you can read in a bit more detail here: seqera.io/blog/rustqc
That said, if RustQC can provide a library then shout, happy to try!
That said, if RustQC can provide a library then shout, happy to try!
I wasn't suggesting that rewrites should be published. People should cite the underlying tools, eg. seqeralabs.github.io/RustQC/about...
I wasn't suggesting that rewrites should be published. People should cite the underlying tools, eg. seqeralabs.github.io/RustQC/about...
RustQC consolidates 15 RNA-seq QC tools into a single Rust binary.🦀 One pass through the BAM file, with functionally identical outputs. >60x faster, with drastically reduced I/O. hubs.ly/Q04gY5MM0
RustQC consolidates 15 RNA-seq QC tools into a single Rust binary.🦀 One pass through the BAM file, with functionally identical outputs. >60x faster, with drastically reduced I/O. hubs.ly/Q04gY5MM0
Alongside Felix Krueger (Altos), we contributed agent-assisted rewrites of RNA-seq QC tools (RustQC, FastQC-Rust & more), built for @nextflow.io and @nf-co.re.
Alongside Felix Krueger (Altos), we contributed agent-assisted rewrites of RNA-seq QC tools (RustQC, FastQC-Rust & more), built for @nextflow.io and @nf-co.re.
RustQC produced all outputs with a single read of the BAM file. Time went from 15 hours to 15 minutes, >60x faster.
Suddenly this wasn't a joke any more!
RustQC produced all outputs with a single read of the BAM file. Time went from 15 hours to 15 minutes, >60x faster.
Suddenly this wasn't a joke any more!
💡Explore RustQC: seqera.io/blog/rustqc
💡Explore RustQC: seqera.io/blog/rustqc
⚡Read the companion post for the full story of how it was built, the benchmarks, and what it means for Nextflow pipelines: hubs.la/Q04b85yT0
⚡Read the companion post for the full story of how it was built, the benchmarks, and what it means for Nextflow pipelines: hubs.la/Q04b85yT0
Note that RustQC uses rust-htslib, so a lot of the underlying C code is likely the same as Samtools..
Note that RustQC uses rust-htslib, so a lot of the underlying C code is likely the same as Samtools..
It's also encoded in the CI snapshots.
It's also encoded in the CI snapshots.
Great to see folks coming to similar conclusions around #Rust #rewrites in bioinformatics.
Also appreciate the RustQC / rewrites.bio cite 🙏🏻
Great to see folks coming to similar conclusions around #Rust #rewrites in bioinformatics.
Also appreciate the RustQC / rewrites.bio cite 🙏🏻
Apologies for the dodgy audio on the recording! I tried fixing it but to no avail 🙈
Apologies for the dodgy audio on the recording! I tried fixing it but to no avail 🙈
github.com/seqeralabs/R...
github.com/seqeralabs/R...