PopSim : A parallelized simulation software for population genetics

Datum

2012

Betreuer/Gutachter

Weitere Beteiligte

Herausgeber

Zeitschriftentitel

ISSN der Zeitschrift

Bandtitel

Verlag

Zusammenfassung

Multi-core computer systems increase performance without increasing the cost exponentially. The main hindrance in the way of utilizing this gain in performance is that the sequential programs are only capable of using just one core at a time. A completely new set of obstacles have to be surmounted, in designing a software capable of running multiple instances of itself or its parts simultaneously thus utilizing the performance benefit of these multi-core computers.The project involved studying the various approaches of parallelization and analyzing the working of already existing simulation software Plabsoft and Plabsim followed by designing of the new parallelized simulation software PopSim. It was mandatory that the new software (i) should not be dependent on any third party libraries; (ii) must be completely backwards compatible with Plabsoft; (iii) the PopSim should be able to execute faster than Plabsoft while giving comparable output; (iv) it should be capable of executing on both Linux and Windows systems; (v) the new software should compile cleanly; (vi) it must be able to compile on compilers not supporting parallelization. New algorithms to handle population genetics problems on multi-core computers were required to be designed and implemented.The PopSim software that has been developed is an add-on package for the "R Statistical Software" coded in C and R. It is a flexible and powerful parallelized simulation software for population genetics and data analysis capable of fully utilizing the multi-core architecture of computers. It is able to handle a broad range of problems concerning plant breeding and genetics. PopSim is able to simulate the various mating scenarios like random mating, selfing, partial selfing, planned crosses, double haploids, top-crosses, single-seed descent and factorials. It provides the means to simulate selections according to selection indices based on molecular marker scores and/or phenotypic values. A range of data analysis routines are provided in PopSim to analyze simulated and experimental datasets for allele and genotype frequencies, genotypic and phenotypic values and variances, molecular genetic diversity, linkage disequilibrium and parameters to optimize marker-assisted backcrossing programs using simulated and experimental datasets.On testing, it was observed that PopSim produced results, which were identical to the results produced by Plabsoft for all the examples. Significant improvement in the speed of execution was observed for examples that utilized the parallelized part of the software. The maximum improvement in speed that was observed was 60% i.e. PopSim only took 40% of the time that Plabsoft took. The load time of PopSim was only 1/3 of the Plabsoft´s load time. In addition, it was also established that PopSim compiles cleanly under both Linux and Windows operating systems without giving any errors or warnings.Finally it could be concluded that PopSim demonstrates a considerable and significant improvement in performance over Plabsoft. It fulfills the requirements and goals set for the project to a large extent.


Multi-Core Computer Systeme steigern die Leistungsfähigkeit, ohne dass Kosten exponentiell mitsteigen. Das Hauptproblem, diese Leistungssteigerung auszunutzen, liegt in der Verwendungsart, da sequentielle Programme nur in der Lage sind, einen Core gleichzeitig zu benutzen. Eine völlig neue Reihe von Hindernissen muss bei der Gestaltung einer Software überwunden werden, die die Ausführung mehrerer Instanzen von sich selbst oder ihrer Teile gleichzeitig ermöglicht und damit den Leistungs-Vorteil von Multi-Core Computern optimal ausnutzt.Das Projekt beinhaltete die Untersuchung der verschiedenen Ansätze der Parallelisierung und der Analyse der Arbeitsweise von den bereits vorhandenen Simulationsprogrammen Plabsoft und Plabsim , darauf folgte die Gestaltung der neuen parallelisierten Simulations-Software PopSim. Es war zwingend erforderlich, dass die neue Software (i) nicht abhängig von Bibliotheken anderer Programme sein darf, (ii) vollständig rückwärts kompatibel mit Plabsoft sein muss, (iii) in der Lage sein sollte, schneller als Plabsoft zu arbeiten bei gleichwertigem Output; (iv) sowohl auf Linux- als auch auf Windows-Systemen funktionieren sollte, (v) reibungslos kompilieren sollte, (vi) auf Compilern, die Parallelisierung nicht unterstützten, kompilieren sollte. Neue Algorithmen, die populations-genetische Probleme auf Multi-Core Computern behandeln, mussten entworfen und implementiert werden.Die entwickelte PopSim Software ist ein in C und R codiertes Add-On -Paket für die "R Statistical Software". Es ist eine flexible und leistungsfähige parallelisierte Simulationssoftware für Populationsgenetik und Datenanalyse, die in der Lage ist, die Multi-Core Architektur von Computern voll auszunutzen. Sie kann eine breite Palette von Problemen in Pflanzenzüchtung und Genetik bearbeiten. PopSim ist in der Lage, die verschiedenen Paarungs-Szenarien wie zufällige Paarung, Selbstbefruchtung, partielle Selbstbefruchtung, geplante Kreuzungen, doppelte Haploiden, top-crosses , Einzel-Samen Abstammung und faktorielle Kreuzungen zu simulieren. Es bietet die Mittel, um Selektionen nach Selektions-Indizes, die auf molekularen Marker Auswertungen und/oder phänotypischen Werten basieren, zu simulieren. Eine Reihe von Daten-Analyse-Routinen sind in PopSim bereitgestellt, um simulierte und experimentelle Datensätze für Allel und Genotyp-Frequenzen, genotypischen und phänotypischen Werte und Varianzen, molekulare genetische Vielfalt, Kopplungsungleichgewichte und Parameter für die Optimierung von Marker-gestützten Rückkreuzungs-Programmen mit simulierten und experimentellen Datensätzen zu analysieren.Tests von PopSim ergaben, dass die Software im Vergleich zu Plabsoft identische Ergebnisse für alle Beispiele produziert. Deutliche Verbesserung in der Ausführung-Geschwindigkeit konnte für Beispiele, die den parallelisierten Teil der Software nutzten, beobachtet werden. Die maximale Geschwindigkeits- Verbesserung, die beobachtet wurde, war 60%, d.h. PopSim benötigte nur 40% der Zeit, die Plabsoft brauchte. Die Ladezeit von PopSim betrug nur 1/3 der Ladezeit von Plabsoft. Darüber hinaus wurde festgestellt, dass PopSim reibungslos sowohl unter Linux- als auch unter Windows-Betriebssystemen ohne Angabe von Fehlern oder Warnungen kompiliert.Letztlich kann der Schluß gezogen werden, dass PopSim eine erhebliche und signifikante Leistungs-Verbesserung gegenüber Plabsoft zeigt. Die Software erfüllt zum größten Teil die Anforderungen und Ziele für das Projekt.

Beschreibung

Inhaltsverzeichnis

Anmerkungen

Erstpublikation in

Sammelband

URI der Erstpublikation

Forschungsdaten

Schriftenreihe

Erstpublikation in

Zitierform