Illumina ist zur Zeit einer der Hersteller von Next Generation Sequencing (NGS) Maschinen. Beim NGS fallen im Vergleich zu den bis hierhin üblichen Methoden der Genetik eine riesige Menge an Daten an. NGS ermöglicht Genom-weite Untersuchungen. Teil der Illumina Auswertungspipeline sind die Softwarebausteine Casva und der Off Line Base Caller (OLB). Weil sie risige Datenmanegen verarbeiten müssen, tun sie das möglichst parallel. Deshalb mach ich hier eine Test, wie gut der OLB skaliert. Beim betrachten der Testergebnisse ist zu beachten, dass die Illumina Software sich gerade in Phase der rapiden Weiterentwicklung befindet.
Für diesen Test setze ich das Testdatenset von Illumina ein, ein Dell R815 Server mit 4 Magny Cours (insgesamt 48 Cores, 64GB RAM, RAID 0, Centos 5.5). Ich variiere den Parameter j des OLB, der für eine Aufteilung des Jobs in mehrere Prozesse dient. Ich erhalte folgende Messergebnisse:
Und diese Daten jetzt mal als Diagramm:
Positiv ist, dass OLB über mehrere Cores skaliert. Es wird mehr als der Faktor 4 erreicht. Negativ ist, dass OLB mit mehr als 7 Prozessen keinen Geschwindigkeitszuwachs mehr hat. Damit drängt sich die nächste Frage auf, warum ist 7 das Optimum und warum scheint es ein Plateau bei 4-6 zu geben?
Aus meiner Sicht enthält OLB ca. 23..24% nicht skalierenden Code. Zusammenfassend kann man sagen, OLB profitiert sehr gut von mehreren CPU-Cores, aber nur begrenzt bis 7, d.h. die Taktfrequenz spielt weiterhin, wenn auch untergeordnete Rolle.
Posts mit dem Label illumina werden angezeigt. Alle Posts anzeigen
Posts mit dem Label illumina werden angezeigt. Alle Posts anzeigen
Dienstag, 5. Oktober 2010
Off-Line Base Caller 1.8
Nach der Restrukturierung von Illuminas Software gibt es jetzt den Off-Line Base Caller. Dieser kann wie folgt installiert werden. Für diese Beschreibung wird vorausgesetzt, das Casava wie hier beschrieben auf dem Computer installiert wurde.
Installation FFT Bibliothek.
Installation FFT Bibliothek.
- tar xfz fftw-3.1.2.tar.gz
- cd fftw-3.1.2
- ./configure --enable-single
- make
- su
- make install
- exit
Installation von OLB.
- tar xfz OLB-1.8.0.tar.gz
- cd ../../OLB-1.8.0
- make
- su
- make install
- exit
Testen von OLB mit Testdaten.
- tar xfjv Illumina_Genome_Analyzer_Validation_Dataset_v_1_8_0.tar.bz2
- cd Illumina_Genome_Analyzer_Validation_Dataset_v_1_8_0
- su
- ./validate.sh /home/mirkoebert/illumina/olb/OLB-1.8.0
Donnerstag, 12. August 2010
Casava 1.7
Dem Komplilieren von Casava 1.7 stehen einigen Hürden entgegen. Meine Ausgangsbasis ist ein frischer Server mit der noch aktuellen Centos 5.5 Linux Distribution. Eine der Neuerungen von Casava ist die Unterstützung von gcc 4.4 und den entsprechenden Header-Dateien. Bei Casva 1.6 und einem gcc 4.4 musst man noch eine kleine Verränkung machen und eine alte string.h einfügen. Dies ist jetzt nicht mehr notwendig. Eine Beschreibung ist auch im Casava 1.7 Handbuch ab Seite 125 zu finden. Hier habe ich alle Schritte zusammengefasst um zu einer lauffähigen Casava 1.7 Installation zu kommen. Ausgangspunkt ist die Datei CASAVA_v1.7.0.tar.bz2.
- Entpacken der Datei mit dem Casava Quellcode:
- bunzip2 CASAVA_v1.7.0.tar.bz2
- tar xf CASAVA_v1.7.0.tar
- cd CASAVA_v1.7.0
- Installation der fehlende Softwarepakete die für das Kompilieren und Ausführen notwendig sind:
- yum groupinstall 'Development Tools'
- yum install bzip2-devel.x86_64
- yum install zlib-devel.x86_64
- yum install libxml2-devel.x86_64
- yum install perl-XML-Dumper
- yum install perl-XML-Parser
- yum install perl-XML-LibXML
- yum install perl-XML-Simple
- yum install perl-XML-Twig
- yum install perl-XML-Grove
- yum install ImageMagick
- yum install PyXML
- yum install gnuplot
- yum install libtiff
- Kompilieren von Casava
- cd src
- ./configure
- make
- make install
- Testen
- run.pl --help
- liefert keinen Fehler
- export CASAVA_EXAMPLES=/usr/local/share/CASAVA-1.7.0/examples
- run.pl --runId=TestEColiPE --projectDir=./DNA_EColi_PE -e ${CASAVA_EXAMPLES}/GERALD -l 4 --refSequences=${CASAVA_EXAMPLES}/genomes/E_coli --snpCovCutoff=-1 --indelsCovCutoff=-1
- /usr/local/bin/taskServer.pl --tasksFile=/root/test/DNA_EColi_PE/tasks.17_42_27_04_10_10.txt --host=localhost --jobsLimit=1
- Danach sollte es ein Verzeichnis DNA_EColi_PE geben in dessen Unterverzeichnis html liegen dann die Ergebnisse derAnalyse in HTML-Form.
Anmerkung: Nicht alle der oben angegebenen Softwarekomponenten sind fürs kompilieren von Casva notwendig. Hier wurden nur die Softwarebausteine aufgelistet die ich installieren musste. Abhängige Softwarebausteine wurden nicht aufgeführt, aus diesem Grunde ist diese Liste hier kürzer als die Liste im Casava-Handbuch (S.139f).
Abonnieren
Posts (Atom)

