Select Page

Die SRPRISM-Suche wird durch Scannen sortierter Listen von 16-bp-Samen aus den Lese- und Datenbanken fortgesetzt. Bei jeder gefundenen Übereinstimmung werden die Speicherorte für das übereinstimmende Wort aus der Datenbank extrahiert, und es werden Ausrichtungen entsprechender Lesevorgänge zu den Datenbanksequenzen an diesen Speicherorten versucht. Erfolgreiche Ausrichtungen werden in einer temporären Datei gespeichert, nach Abfrage gruppiert, nachverarbeitet und an den Ausgabestream gemeldet. Überblick über den ASDPex-Algorithmus. ein ASDPex vergleicht den Satz aller Varianten, die gegen REF-HAP R aufgerufen werden, mit dem Satz von ASDPs, die ALT-HAP A zugeordnet sind. In diesem Beispiel |A| (die Anzahl der ASDPs, die ALT-HAP zugeordnet sind) ist 6 und |R| (die Gesamtzahl der Varianten, die gegen REF-HAP aufgerufen werden) ist 8. ASDPex definiert den Satz von Restvarianten als symmetrische Mengendifferenz zwischen R und A, d.h. RV = R-A. Daher | RV|=4 und weil | RV| |R|, unser Algorithmus leitet ab, dass ALT-HAP vorhanden ist. b Das Muster der für ASDPs erhaltenen Variantenaufrufe unterscheidet sich je nachdem, ob das sequenzierte Proband für einen der beiden alternativen Loci homozygot oder heterozygot ist.

Unser Algorithmus nutzt dieses Muster über die gesamte Länge des alternativen Ortes aus, um den wahrscheinlichsten Genotyp abzuleiten. ASDP-alignable Gerüst-Discrepant-Position Die parallele Programmierung auf hoher Ebene wird zum Mainstream-Ansatz für eine wachsende Klasse von Anwendungen. Auch wenn unsere Ergebnisse nicht vollständig als Demonstrativ der Korrektheit und Effizienz des angewendeten parallelen Musters angesehen werden können, können wir mit Recht feststellen, dass die globale Struktur eines Aligners aus der Parallelisierungssicht immer innerhalb eines Master-Worker-Musters mit vorgeschlagenen Optimierungen abgebildet werden kann. Wir glauben, dass dies eine aktivierende Funktion für zukünftige Sequenzausrichtungs- und Analyseansätze sein kann. In diesem Abschnitt wird die ursprüngliche Multithreadimplementierung von Bowtie- und BWA-Ausrichtungstools für die Leistung mit ihrer Portierung auf die FastFlow-Muster-basierte Bibliothek auf verschiedenen Datasets verglichen. Ein Schlüssel der verwendeten Werkzeuge mit ihrer Version wird in Tabelle 3 gemeldet. Wir portierten Bowtie2 und BWA zusätzlich zum musterbasierten FastFlow-Parallel-Programmierframework für C++. Die Portierung erforderte die Änderung einiger Codezeilen (von mehreren zehntausend) mit einem geschätzten Programmieraufwand von wenigen Tagen. Auch die FastFlow-basierte Version der Tools führte zu einer einfacheren Abstimmung für maximale Leistung. Insbesondere Planungsrichtlinien, Lastenausgleichsstrategien und Speicheraffinität sind extrafunktionale Features des FastFlow-Musters des Master-Workers.

Durch die Nutzung dieser Funktionen war es möglich, das parallele Verhalten von Werkzeugen über den handoptimierten Code ihrer Originalversionen hinaus zu optimieren. Zum Beispiel im Fall von Bowtie2, bei dem es sich um eine speichergebundene Anwendung handelt; Die Schlüsseloptimierung besteht in der Verbesserung der Lokalität der Speicherzugriffe und der Nutzung der gemeinsam genutzten Speicherbandbreite.