Related Experiment Video
Updated: Jul 7, 2026

A Bioinformatics Pipeline for Investigating Molecular Evolution and Gene Expression using RNA-seq
Published on: May 28, 2021
A comparison of common programming languages used in bioinformatics.
Mathieu Fourment1, Michael R Gillings
1Department of Biological Sciences, Macquarie University, Sydney, NSW 2109, Australia. m.fourment@gmail.com
C and C++ offer the best performance for bioinformatics algorithms, balancing speed and memory usage. Language choice impacts development time and resource efficiency, crucial for computational biology tasks.
Area of Science:
- Computational biology
- Bioinformatics algorithm development
- Programming language performance analysis
Background:
- Previous programming language benchmarks focused on abstract algorithms, not standard bioinformatics methods.
- This study addresses the gap by evaluating performance using common bioinformatics tasks.
Purpose of the Study:
- To compare the execution speed and memory usage of six programming languages for bioinformatics algorithms.
- To inform developers about language selection for efficient bioinformatics tool development.
Main Methods:
- Implemented Sellers algorithm, Neighbor-Joining, and BLAST parsing in C, C++, C#, Java, Perl, and Python.
- Benchmarked performance across Windows and Linux operating systems.
Main Results:
- C and C++ demonstrated superior speed and minimal memory consumption.
- Java and C# offered a balance between performance and flexibility.
- Language performance remained consistent across operating systems.
Conclusions:
- Programming language choice is critical, requiring consideration of performance needs and library support.
- The benchmark provides valuable data for optimizing bioinformatics software development.
Related Concept Videos
Evolutionary Relationships through Genome Comparisons
Comparing Mitochondrial, Chloroplast, and Prokaryotic Genomes
Statistical Software for Data Analysis and Clinical Trials
Introduction to R
DNA Microarrays
Modern Molecular Taxonomy
