VLDB 2026 Research / reviewers in the wild / expert
Srinivas Aluru
dblp:a/SAluru
· DBLP profile ↗
134ranked-venue papers
23as first author
14since 2021 · last 2025
0000-0003-4279-469XORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 88 · 17 first-author · 6 since 2021Applied, interdisciplinary, general and emerging computing · 34 · 4 first-author · 8 since 2021Theory of computation · 4 · 2 first-authorArtificial intelligence and machine learning · 2Computer networks · 2Databases, data management, data science and information retrieval · 2Graphics, computer vision, multimedia, augmented reality and games · 2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | The Power of Parallelism: Accelerating Discovery in the BiosciencesabstractThe transformative power of parallel computing is most evident when tackling problems that would otherwise be intractable due to immense computational demands, memory constraints, or time-tosolution limitations. Once an intellectual curiosity, parallel computational biology has evolved into an indispensable tool for modern biological research, driven by the rapid proliferation of high-throughput instrumentation. This talk will examine the expanding role of parallel computing in biosciences, highlighting key challenges my group has addressed in computational genomics and systems biology over the past twenty-five years. These challenges have spurred the development of new algorithmic innovations involving strings, graphs, and complex system learning, with broad applicability beyond biology. As the field continues to evolve, emerging applications present fresh opportunities for parallel computing to drive discovery and innovation in the biosciences. Srinivas Aluru |
IPDPS | 1 |
| 2025 | A Work-Optimal Parallel Algorithm for Aligning Sequences to Genome GraphsabstractRepresenting genetic variations among a population of individuals in the form of a genome graph, and using the graph as a reference instead of the genome of a single individual, are central techniques in the fast-emerging area of pangenomics. A fundamental problem in pangenomics is to align a DNA sequence simultaneously against all reference genomes through sequence-to-graph alignment. The sequential approach to the problem uses dynamic programming and takes$O(m\vert E\vert)$time, where$m$is the length of the DNA sequence that is aligned and$\vert E\vert$is the number of edges in the genome graph. In this paper, we present ParSGA, the first parallel algorithm for the sequence-to-graph alignment problem. Prior works on parallelization only addressed the embarrassingly parallel problem of mapping numerous DNA sequences independently, but each sequentially, to the genome graph. In contrast, ParSGA aligns a single sequence in parallel, which is required in cases involving long or ultra-long DNA sequences, or in applications involving successively mapping and incorporating DNA sequences into an evolving graph, or to improve available parallelism for multiple sequence-to-graph alignments even further. ParSGA is work-optimal, and its design provides a high degree of parallelism. On a 128 -core AMD Epyc processor, ParSGA achieves$81 \times$speedup compared to serial execution of itself, and$43 \times$speedup compared to the sequential algorithm, when aligning 250bp reads to human Chromosome 1 variation graph. In the popularly used billion cell updates per second (GCUPS) metric, ParSGA achieves 6.14 GCUPS. The C++ implementation of ParSGA is available at https://github.com/ParBLiSS/ParSGA. Aranya Banerjee, Daniel Gibney, Helen Xu 0001, Srinivas Aluru |
IPDPS | 4 |
| 2025 | SCEMENT: scalable and memory efficient integration of large-scale single-cell RNA-sequencing dataabstractMOTIVATION: Integrative analysis of large-scale single-cell data collected from diverse cell populations promises an improved understanding of complex biological systems. While several algorithms have been developed for single-cell RNA-sequencing data integration, many lack the scalability to handle large numbers of datasets and/or millions of cells due to their memory and run time requirements. The few tools that can handle large data do so by reducing the computational burden through strategies such as subsampling of the data or selecting a reference dataset to improve computational efficiency and scalability. Such shortcuts, however, hamper the accuracy of downstream analyses, especially those requiring quantitative gene expression information. RESULTS: We present SCEMENT, a SCalablE and Memory-Efficient iNTegration method, to overcome these limitations. Our new parallel algorithm builds upon and extends the linear regression model previously applied in ComBat to an unsupervised sparse matrix setting to enable accurate integration of diverse and large collections of single-cell RNA-sequencing data. Using tens to hundreds of real single-cell RNA-seq datasets, we show that SCEMENT outperforms ComBat as well as FastIntegration and Scanorama in runtime (upto 214× faster) and memory usage (upto 17.5× less). It not only performs batch correction and integration of millions of cells in under 25 min, but also facilitates the discovery of new rare cell types and more robust reconstruction of gene regulatory networks with full quantitative gene expression information. AVAILABILITY AND IMPLEMENTATION: Source code freely available for download at https://github.com/AluruLab/scement, implemented in C++ and supported on Linux. Sriram P. Chockalingam, Maneesha Aluru, Srinivas Aluru |
Bioinform. | 3 |
| 2023 | Fast Parallel Tensor Times Same Vector for HypergraphsabstractHypergraphs are a popular paradigm to represent complex real-world networks exhibiting multi-way relationships of varying sizes. Mining centrality in hyper-graphs via symmetric adjacency tensors has only recently become computationally feasible for large and complex datasets. To enable scalable computation of these and related hypergraph analytics, here we focus on the Sparse Symmetric Tensor Times Same Vector (S3TTVC) operation. We introduce the Compound Compressed Sparse Symmetric (CCSS) format, an extension of the compact CSS format for hypergraphs of varying hyperedge sizes and present a shared-memory parallel algorithm to compute S3TTVC. We experimentally show S3TTVc computation using the CCSS format achieves better performance than the naive baseline, and is subsequently more performant for hypergraph$H$-eigenvector centrality. Shruti Shivakumar, Ilya Amburg, Sinan G. Aksoy, Jiajia Li 0001, Stephen J. Young, Srinivas Aluru |
HiPC | 6 |
| 2023 | MCPNet: a parallel maximum capacity-based genome-scale gene network construction frameworkabstractMOTIVATION: Gene network reconstruction from gene expression profiles is a compute- and data-intensive problem. Numerous methods based on diverse approaches including mutual information, random forests, Bayesian networks, correlation measures, as well as their transforms and filters such as data processing inequality, have been proposed. However, an effective gene network reconstruction method that performs well in all three aspects of computational efficiency, data size scalability, and output quality remains elusive. Simple techniques such as Pearson correlation are fast to compute but ignore indirect interactions, while more robust methods such as Bayesian networks are prohibitively time consuming to apply to tens of thousands of genes. RESULTS: We developed maximum capacity path (MCP) score, a novel maximum-capacity-path-based metric to quantify the relative strengths of direct and indirect gene-gene interactions. We further present MCPNet, an efficient, parallelized gene network reconstruction software based on MCP score, to reverse engineer networks in unsupervised and ensemble manners. Using synthetic and real Saccharomyces cervisiae datasets as well as real Arabidopsis thaliana datasets, we demonstrate that MCPNet produces better quality networks as measured by AUPRC, is significantly faster than all other gene network reconstruction software, and also scales well to tens of thousands of genes and hundreds of CPU cores. Thus, MCPNet represents a new gene network reconstruction tool that simultaneously achieves quality, performance, and scalability requirements. AVAILABILITY AND IMPLEMENTATION: Source code freely available for download at https://doi.org/10.5281/zenodo.6499747 and https://github.com/AluruLab/MCPNet, implemented in C++ and supported on Linux. Tony Pan, Sriram P. Chockalingam, Maneesha Aluru, Srinivas Aluru |
Bioinform. | 4 |
| 2023 | Sparse Symmetric Format for Tucker DecompositionabstractTensor-based methods are receiving renewed attention in recent years due to their prevalence in diverse real-world applications. There is considerable literature on tensor representations and algorithms for tensor decompositions, both for dense and sparse tensors. Many applications in hypergraph analytics, machine learning, psychometry, and signal processing result in tensors that are both sparse and symmetric, making them an important class for further study. Similar to the critical Tensor Times Matrix chain operation (TTMc) in general sparse tensors, theSparseSymmetricTensorTimesSameMatrixchain (S$^{3}$TTMc) operation is compute and memory intensive due to high tensor order and the associated factorial explosion in the number of non-zeros. We present the novel Compressed Sparse Symmetric (CSS) format for sparse symmetric tensors, along with an efficient parallel algorithm for the S$^{3}$TTMcoperation. We theoretically establish that S$^{3}$TTMcon CSS achieves a better memory versus run-time trade-off compared to state-of-the-art implementations, and visualize the variation of the performance gap over the parameter space. We demonstrate experimental findings that confirm these results and achieve up to$2.72 \times$speedup on synthetic and real datasets. The scaling of the algorithm on different test architectures is also showcased to highlight the effect of machine characteristics on algorithm performance. Shruti Shivakumar, Jiajia Li 0001, Ramakrishnan Kannan, Srinivas Aluru |
IEEE Trans. Parallel Distributed Syst. | 4 |
| 2023 | A Parallel Framework for Constraint-Based Bayesian Network Learning via Markov Blanket DiscoveryabstractBayesian networks (BNs) are a widely used graphical model in machine learning. As learning the structure of BNs is NP-hard, high-performance computing methods are necessary for constructing large-scale networks. In this article, we present a parallel framework to scale BN structure learning algorithms to tens of thousands of variables. Our framework is applicable to learning algorithms that rely on the discovery of Markov blankets (MBs) as an intermediate step. We demonstrate the applicability of our framework by parallelizing three different algorithms:Grow-Shrink(GS),Incremental Association MB(IAMB), andInterleaved IAMB(Inter-IAMB). Our implementations are available as part of an open-source software calledramBLe, and are able to construct BNs from real data sets with tens of thousands of variables and thousands of observations in less than a minute on 1024 cores, with a speedup of up to 845X and 82.5% efficiency. Furthermore, we demonstrate using simulated data sets that our proposed parallel framework can scale to BNs of even higher dimensionality. Our implementations were selected for the reproducibility challenge component of the 2021 student cluster competition (SCC’21), which tasked undergraduate teams from around the world with reproducing the results that we obtained using the implementations. We discuss details of the challenge and the results of the experiments conducted by the top teams in the competition. The results of these experiments indicate that our key results are reproducible, despite the use of completely different data sets and experiment infrastructure, and validate the scalability of our implementations. Ankit Srivastava, Sriram P. Chockalingam, Srinivas Aluru |
IEEE Trans. Parallel Distributed Syst. | 3 |
| 2022 | The Complexity of Approximate Pattern Matching on de Bruijn Graphs
Daniel Gibney, Sharma V. Thankachan, Srinivas Aluru |
RECOMB | 3 |
| 2022 | Feasibility of Flow Decomposition with Subpath Constraints in Linear TimeabstractDecomposing a network flow into weighted paths has numerous applications. Some applications require any decomposition that is optimal w.r.t. some property such as number of paths, robustness, or length. Many bioinformatic applications require a specific decomposition where the paths correspond to some underlying data that generated the flow. For real inputs, no optimization criteria guarantees to uniquely identify the correct decomposition. Therefore, we propose to report safe paths, i.e., subpaths of at least one path in every flow decomposition. Ma, Zheng, and Kingsford [WABI 2020] addressed the existence of multiple optimal solutions in a probabilistic framework, i.e., non-identifiability. Later [RECOMB 2021], they gave a quadratic-time algorithm based on a global criterion for solving a problem called AND-Quant, which generalizes the problem of reporting whether a given path is safe. We give the first local characterization of safe paths for flow decompositions in directed acyclic graphs (DAGs), leading to a practical algorithm for finding the complete set of safe paths. We evaluated our algorithms against the trivial safe algorithms (unitigs, extended unitigs) and the popularly used heuristic (greedy-width) for flow decomposition on RNA transcripts datasets. Despite maintaining perfect precision our algorithm reports significantly higher coverage ($\approx 50\%$ more) than trivial safe algorithms. The greedy-width algorithm though reporting a better coverage, has significantly lower precision on complex graphs. Overall, our algorithm outperforms (by $\approx 20\%$) greedy-width on a unified metric (F-Score) when the dataset has significant number of complex graphs. Moreover, it has superior time ($3-5\times$) and space efficiency ($1.2-2.2\times$), resulting in a better and more practical approach for bioinformatics applications of flow decomposition. Daniel Gibney, Sharma V. Thankachan, Srinivas Aluru |
WABI | 3 |
| 2022 | EnGRaiN: a supervised ensemble learning method for recovery of large-scale gene regulatory networksabstractMOTIVATION: Reconstruction of genome-scale networks from gene expression data is an actively studied problem. A wide range of methods that differ between the types of interactions they uncover with varying trade-offs between sensitivity and specificity have been proposed. To leverage benefits of multiple such methods, ensemble network methods that combine predictions from resulting networks have been developed, promising results better than or as good as the individual networks. Perhaps owing to the difficulty in obtaining accurate training examples, these ensemble methods hitherto are unsupervised. RESULTS: In this article, we introduce EnGRaiN, the first supervised ensemble learning method to construct gene networks. The supervision for training is provided by small training datasets of true edge connections (positives) and edges known to be absent (negatives) among gene pairs. We demonstrate the effectiveness of EnGRaiN using simulated datasets as well as a curated collection of Arabidopsis thaliana datasets we created from microarray datasets available from public repositories. EnGRaiN shows better results not only in terms of receiver operating characteristic and PR characteristics for both real and simulated datasets compared with unsupervised methods for ensemble network construction, but also generates networks that can be mined for elucidating complex biological interactions. AVAILABILITY AND IMPLEMENTATION: EnGRaiN software and the datasets used in the study are publicly available at the github repository: https://github.com/AluruLab/EnGRaiN. SUPPLEMENTARY INFORMATION: Supplementary data are available at Bioinformatics online. Maneesha Aluru, Harsh Shrivastava 0001, Sriram P. Chockalingam, Shruti Shivakumar, Srinivas Aluru |
Bioinform. | 5 |
| 2021 | Parallel construction of module networks
Ankit Srivastava, Sriram P. Chockalingam, Maneesha Aluru, Srinivas Aluru |
SC | 4 |
| 2021 | A variant selection framework for genome graphsabstractMOTIVATION: Variation graph representations are projected to either replace or supplement conventional single genome references due to their ability to capture population genetic diversity and reduce reference bias. Vast catalogues of genetic variants for many species now exist, and it is natural to ask which among these are crucial to circumvent reference bias during read mapping. RESULTS: In this work, we propose a novel mathematical framework for variant selection, by casting it in terms of minimizing variation graph size subject to preserving paths of length α with at most δ differences. This framework leads to a rich set of problems based on the types of variants [e.g. single nucleotide polymorphisms (SNPs), indels or structural variants (SVs)], and whether the goal is to minimize the number of positions at which variants are listed or to minimize the total number of variants listed. We classify the computational complexity of these problems and provide efficient algorithms along with their software implementation when feasible. We empirically evaluate the magnitude of graph reduction achieved in human chromosome variation graphs using multiple α and δ parameter values corresponding to short and long-read resequencing characteristics. When our algorithm is run with parameter settings amenable to long-read mapping (α = 10 kbp, δ = 1000), 99.99% SNPs and 73% SVs can be safely excluded from human chromosome 1 variation graph. The graph size reduction can benefit downstream pan-genome analysis. AVAILABILITY AND IMPLEMENTATION: : https://github.com/AT-CG/VF. SUPPLEMENTARY INFORMATION: Supplementary data are available at Bioinformatics online. Neda Tavakoli, Srinivas Aluru |
Bioinform. | 3 |
| 2021 | Real-time mapping of nanopore raw signalsabstractMOTIVATION: Oxford Nanopore Technologies sequencing devices support adaptive sequencing, in which undesired reads can be ejected from a pore in real time. This feature allows targeted sequencing aided by computational methods for mapping partial reads, rather than complex library preparation protocols. However, existing mapping methods either require a computationally expensive base-calling procedure before using aligners to map partial reads or work well only on small genomes. RESULTS: In this work, we present a new streaming method that can map nanopore raw signals for real-time selective sequencing. Rather than converting read signals to bases, we propose to convert reference genomes to signals and fully operate in the signal space. Our method features a new way to index reference genomes using k-d trees, a novel seed selection strategy and a seed chaining algorithm tailored toward the current signal characteristics. We implemented the method as a tool Sigmap. Then we evaluated it on both simulated and real data and compared it to the state-of-the-art nanopore raw signal mapper Uncalled. Our results show that Sigmap yields comparable performance on mapping yeast simulated raw signals, and better mapping accuracy on mapping yeast real raw signals with a 4.4× speedup. Moreover, our method performed well on mapping raw signals to genomes of size >100 Mbp and correctly mapped 11.49% more real raw signals of green algae, which leads to a significantly higher F1-score (0.9354 versus 0.8660). AVAILABILITY AND IMPLEMENTATION: Sigmap code is accessible at https://github.com/haowenz/sigmap. SUPPLEMENTARY INFORMATION: Supplementary data are available at Bioinformatics online. Haoran Li 0015, Haoyu Cheng, Kin Fai Au, Heng Li 0002, Srinivas Aluru |
Bioinform. | 7 |
| 2021 | Editorial: From the New Editor-in-ChiefabstractI am delighted to have the opportunity to serve you as the next editor-in-chief of this prestigious journal, beginning August 2021. I regard the IEEE/ACM Transactions on Computational Biology and Bioinformatics (TCBB) as the premier journal devoted to the publication of computational, mathematical, and statistical methods that are central to advancing bioinformatics and computational biology. True to its roots within IEEE and ACM, the journal will continue to distinguish itself by focusing on methodological advances, while at the same time requiring that these be rooted in important biological challenges, and are designed for and validated against real-world data. I want to take this opportunity to outline some of my priorities in leading the journal to greater heights. Quality and breadth of coverage within the identified scope is of paramount importance. Together, the editorial board will work to increase high quality submissions, ensure uniformity in acceptance standards, and engage only in partnerships (e.g., with conferences and workshops) that meet journal quality standards. Another priority is to support sensible growth of the journal commensurate with the growth in the field, and ensure that we attract high quality research and survey articles in frontier topics. As a practical matter, we have already taken steps to address the significant backlog of accepted papers pending publication by securing increased page budget for the next year. Srinivas Aluru |
IEEE ACM Trans. Comput. Biol. Bioinform. | 1 |
| 2020 | GLAD: Learning Sparse Graph Recovery
Harsh Shrivastava 0001, Xinshi Chen, Binghong Chen, Guanghui Lan, Srinivas Aluru, Han Liu 0001 |
ICLR | 5 |
| 2020 | A parallel framework for constraint-based bayesian network learning via markov blanket discoveryabstractBayesian networks (BNs) are a widely used graphical model in machine learning. As learning the structure of BNs is NP-hard, high-performance computing methods are necessary for constructing large-scale networks. In this paper, we present a parallel framework to scale BN structure learning algorithms to tens of thousands of variables. Our framework is applicable to learning algorithms that rely on the discovery of Markov blankets (MBs) as an intermediate step. We demonstrate the applicability of our framework by parallelizing three different algorithms: Grow-Shrink (GS), Incremental Association MB (IAMB), and Interleaved IAMB (Inter-IAMB). Our implementations are able to construct BNs from real data sets with tens of thousands of variables and thousands of observations in less than a minute on 1024 cores, with a speedup of up to 845X and 82.5% efficiency. Furthermore, we demonstrate using simulated data sets that our proposed parallel framework can scale to BNs of even higher dimensionality. Ankit Srivastava, Sriram P. Chockalingam, Srinivas Aluru |
SC | 3 |
| 2020 | An alignment-free heuristic for fast sequence comparisons with applications to phylogeny reconstructionabstractAbstract Background Alignment-free methods for sequence comparisons have become popular in many bioinformatics applications, specifically in the estimation of sequence similarity measures to construct phylogenetic trees. Recently, the average common substring measure, ACS, and its k-mismatch counterpart, ACSk, have been shown to produce results as effective as multiple-sequence alignment based methods for reconstruction of phylogeny trees. Since computing ACSk takes O(n logkn) time and hence impractical for large datasets, multiple heuristics that can approximate ACSk have been introduced. Results In this paper, we present a novel linear-time heuristic to approximate ACSk, which is faster than computing the exact ACSk while being closer to the exact ACSk values compared to previously published linear-time greedy heuristics. Using four real datasets, containing both DNA and protein sequences, we evaluate our algorithm in terms of accuracy, runtime and demonstrate its applicability for phylogeny reconstruction. Our algorithm provides better accuracy than previously published heuristic methods, while being comparable in its applications to phylogeny reconstruction. Conclusions Our method produces a better approximation for ACSk and is applicable for the alignment-free comparison of biological sequences at highly competitive speed. The algorithm is implemented in Rust programming language and the source code is available at https://github.com/srirampc/adyar-rs . Sriram P. Chockalingam, Jodh Pannu, Sahar Hooshmand, Sharma V. Thankachan, Srinivas Aluru |
BMC Bioinform. | 5 |
| 2020 | Sequential and parallel algorithms for all-pair k-mismatch maximal common substrings
Sriram P. Chockalingam, Sharma V. Thankachan, Srinivas Aluru |
J. Parallel Distributed Comput. | 3 |
| 2020 | Interval stabbing on the Automata Processor
Indranil Roy, Ankit Srivastava, Matt Grimm, Srinivas Aluru |
J. Parallel Distributed Comput. | 4 |
| 2020 | Fast de Bruijn Graph Compaction in Distributed Memory EnvironmentsabstractDe Bruijn graph based genome assembly has gained popularity as short read sequencers become ubiquitous. A core assembly operation is the generation of unitigs, which are sequences corresponding to chains in the graph. Unitigs are used as building blocks for generating longer sequences in many assemblers, and can facilitate graph compression. Chain compaction, by which unitigs are generated, remains a critical computational task. In this paper, we present a distributed memory parallel algorithm for simultaneous compaction of all chains in bi-directed de Bruijn graphs. The key advantages of our algorithm include bounding the chain compaction run-time to logarithmic number of iterations in the length of the longest chain, and ability to differentiate cycles from chains within logarithmic number of iterations in the length of the longest cycle. Our algorithm scales to thousands of computational cores, and can compact a whole genome de Bruijn graph from a human sequence read set in 7.3 seconds using 7680 distributed memory cores, and in 12.9 minutes using 64 shared memory cores. It is 3.7× and 2.0× faster than equivalent steps in the state-of-the-art tools for distributed and shared memory environments, respectively. An implementation of the algorithm is available at https://github.com/ParBLiSS/bruno. Tony Pan, Rahul Nihalani, Srinivas Aluru |
IEEE ACM Trans. Comput. Biol. Bioinform. | 3 |
| 2019 | Accelerating Sequence Alignment to GraphsabstractAligning DNA sequences to an annotated reference is a key step for genotyping in biology. Recent scientific studies have demonstrated improved inference by aligning reads to a variation graph, i.e., a reference sequence augmented with known genetic variations. Given a variation graph in the form of a directed acyclic string graph, the sequence to graph alignment problem seeks to find the best matching path in the graph for an input query sequence. Solving this problem exactly using a sequential dynamic programming algorithm takes quadratic time in terms of the graph size and query length, making it difficult to scale to high throughput DNA sequencing data. In this work, we propose the first parallel algorithm for computing sequence to graph alignments that leverages multiple cores and single-instruction multiple-data (SIMD) operations. We take advantage of the available inter-task parallelism, and provide a novel blocked approach to compute the score matrix while ensuring high memory locality. Using a 48-core Intel Xeon Skylake processor, the proposed algorithm achieves peak performance of 317 billion cell updates per second (GCUPS), and demonstrates near linear weak and strong scaling on up to 48 cores. It delivers significant performance gains compared to existing algorithms, and results in run-time reduction from multiple days to three hours for the problem of optimally aligning high coverage long (PacBio/ONT) or short (Illumina) DNA reads to an MHC human variation graph containing 10 million vertices. Sanchit Misra, Alexander T. Dilthey, Srinivas Aluru |
IPDPS | 5 |
| 2019 | Efficient Architecture-Aware Acceleration of BWA-MEM for Multicore SystemsabstractInnovations in Next-Generation Sequencing are enabling generation of DNA sequence data at ever faster rates and at very low cost. For example, the Illumina NovaSeq 6000 sequencer can generate 6 Terabases of data in less than two days, sequencing nearly 20 Billion short DNA fragments called reads at the low cost of $1000 per human genome. Large sequencing centers typically employ hundreds of such systems. Such highthroughput and low-cost generation of data underscores the need for commensurate acceleration in downstream computational analysis of the sequencing data. A fundamental step in downstream analysis is mapping of the reads to a long reference DNA sequence, such as a reference human genome. Sequence mapping is a compute-intensive step that accounts for more than 30% of the overall time of the GATK (Genome Analysis ToolKit) best practices workflow. BWA-MEM is one of the most widely used tools for sequence mapping and has tens of thousands of users. In this work, we focus on accelerating BWA-MEM through an efficient architecture aware implementation, while maintaining identical output. The volume of data requires distributed computing and is usually processed on clusters or cloud deployments with multicore processors usually being the platform of choice. Since the application can be easily parallelized across multiple sockets (even across distributed memory systems) by simply distributing the reads equally, we focus on performance improvements on a single socket multicore processor. BWA-MEM run time is dominated by three kernels, collectively responsible for more than 85% of the overall compute time. We improved the performance of the three kernels by 1) using techniques to improve cache reuse, 2) simplifying the algorithms, 3) replacing many small memory allocations with a few large contiguous ones to improve hardware prefetching of data, 4) software prefetching of data, and 5) utilization of SIMD wherever applicable and massive reorganization of the source code to enable these improvements. As a result, we achieved nearly 2x, 183x, and 8x speedups on the three kernels, respectively, resulting in up to 3.5x and 2.4x speedups on end-to-end compute time over the original BWA-MEM on single thread and single socket of Intel Xeon Skylake processor. To the best of our knowledge, this is the highest reported speedup over BWA-MEM (running on a single CPU) while using a single CPU or a single CPU-single GPGPU/FPGA combination. Md. Vasimuddin, Sanchit Misra, Heng Li 0002, Srinivas Aluru |
IPDPS | 4 |
| 2019 | On the Complexity of Sequence to Graph Alignment
Yu Gao 0001, Srinivas Aluru |
RECOMB | 4 |
| 2019 | Distributed enhanced suffix arrays: efficient algorithms for construction and queryingabstractSuffix arrays and trees are important and fundamental string data structures which lie at the foundation of many string algorithms, with important applications in computational biology, text processing, and information retrieval. Recent work enables the efficient parallel construction of suffix arrays and trees requiring at most O(n/p) memory per process in distributed memory. Patrick Flick, Srinivas Aluru |
SC | 2 |
| 2019 | Validating Paired-End Read Alignments in Sequence GraphsabstractGraph based non-linear reference structures such as variation graphs and colored de Bruijn graphs enable incorporation of full genomic diversity within a population. However, transitioning from a simple string-based reference to graphs requires addressing many computational challenges, one of which concerns accurately mapping sequencing read sets to graphs. Paired-end Illumina sequencing is a commonly used sequencing platform in genomics, where the paired-end distance constraints allow disambiguation of repeats. Many recent works have explored provably good index-based and alignment-based strategies for mapping individual reads to graphs. However, validating distance constraints efficiently over graphs is not trivial, and existing sequence to graph mappers rely on heuristics. We introduce a mathematical formulation of the problem, and provide a new algorithm to solve it exactly. We take advantage of the high sparsity of reference graphs, and use sparse matrix-matrix multiplications (SpGEMM) to build an index which can be queried efficiently by a mapping algorithm for validating the distance constraints. Effectiveness of the algorithm is demonstrated using real reference graphs, including a human MHC variation graph, and a pan-genome de-Bruijn graph built using genomes of 20 B. anthracis strains. While the one-time indexing time can vary from a few minutes to a few hours using our algorithm, answering a million distance queries takes less than a second. Alexander T. Dilthey, Srinivas Aluru |
WABI | 4 |
| 2019 | Evaluating High Performance Pattern Matching on the Automata ProcessorabstractIn this paper, we study the acceleration of applications that identify all the occurrences of thousands of string-patterns in an input data-stream using the Automata Processor (AP). For this evaluation, we use two applications from two fields, namely, cybersecurity and bioinformatics. The first application, called Fast-SNAP, scans network data for 4312 signatures of intrusion derived from the popular open-source Snort database. Using the resources of a single AP-board, Fast-SNAP can scan for all these signatures at 1 Gbps. The second application, called PROTOMATA, looks for all the occurrences of 1,309 motifs from the PROSITE database in protein sequences. PROTOMATA is up to 68 times faster than the state-of-the-art CPU implementation. As a comparison, we emulate the execution of the same NFAs by programming FPGAs using state-of-the-art techniques. We find that the performance derived by using the resources of a single AP-board, which houses 32 AP-chips, is comparable to that of the resources of five to six large FPGAs. The design techniques used in this paper are generic and may be applicable to the development of similar applications on the AP. Indranil Roy, Ankit Srivastava, Matt Grimm, Marziyeh Nourian, Michela Becchi, Srinivas Aluru |
IEEE Trans. Computers | 6 |
| 2019 | Kmerind: A Flexible Parallel Library for K-mer Indexing of Biological Sequences on Distributed Memory SystemsabstractCounting and indexing fixed length substrings, or $k$k-mers, in biological sequences is a key step in many bioinformatics tasks including genome alignment and mapping, genome assembly, and error correction. While advances in next generation sequencing technologies have dramatically reduced the cost and improved latency and throughput, few bioinformatics tools can efficiently process the datasets at the current generation rate of 1.8 terabases per 3-day experiment from a single sequencer. We present Kmerind, a high performance parallel $k$k-mer indexing library for distributed memory environments. The Kmerind library provides a set of simple and consistent APIs with sequential semantics and parallel implementations that are designed to be flexible and extensible. Kmerind's $k$k-mer counter performs similarly or better than the best existing $k$k-mer counting tools even on shared memory systems. In a distributed memory environment, Kmerind counts $k$k-mers in a 120 GB sequence read dataset in less than 13 seconds on 1024 Xeon CPU cores, and fully indexes their positions in approximately 17 seconds. Querying for 1 percent of the $k$k-mers in these indices can be completed in 0.23 seconds and 28 seconds, respectively. Kmerind is the first $k$k-mer indexing library for distributed memory environments, and the first extensible library for general $k$k-mer indexing and counting. Kmerind is available at https://github.com/ParBLiSS/kmerind. Tony Pan, Patrick Flick, Yongchao Liu 0004, Srinivas Aluru |
IEEE ACM Trans. Comput. Biol. Bioinform. | 5 |
| 2018 | Performance extraction and suitability analysis of multi- and many-core architectures for next generation sequencing secondary analysisabstractHigh-throughput next generation sequencers (NGS) can rapidly read billions of short DNA fragments, called reads, at low cost. Moreover, their throughput is increasing and cost is decreasing at rates much faster than the Moore's law. This demands commensurate acceleration for NGS secondary analysis that process the reads to identify variations between genomes. Conventional architectural improvements can at best improve performance at the rate of Moore's law even if the software tools efficiently utilize the underlying architecture. Unfortunately, most of the dozens of software products developed for this purpose fail to exploit the underlying architecture well. Therefore, to match the pace of development of the sequencers, we will need architecture that is more tailored for the computational requirements of NGS secondary analysis as well as software that uses the architecture optimally. Sanchit Misra, Tony Pan, Kanak Mahadik, George Powley, Priya N. Vaidya, Md. Vasimuddin, Srinivas Aluru |
PACT | 7 |
| 2018 | A Parallel Algorithm for Bayesian Network Inference Using Arithmetic CircuitsabstractExact inference in Bayesian networks is NP-Hard. While many parallel algorithms have been proposed for this irregular problem, none have been shown to scale to even hundreds of processors. In this paper, we present a scalable distributed-memory parallel algorithm for exact inference based on Darwiche's approach, which poses inference as upward and downward accumulation of values computed at the nodes of an arithmetic circuit, a rooted directed acyclic graph. Our work includes parallel algorithms for both construction of the arithmetic circuit as well as inference using the circuit. We demonstrate the scalability of our algorithms for up to 1,536 cores on synthetic as well as real datasets, whose corresponding arithmetic circuits contain up to billions of nodes. The runtime for inference is only a small fraction of the runtime for circuit construction, providing the ability to quickly perform multiple inferences once the circuit is constructed. Md. Vasimuddin, Sriram P. Chockalingam, Srinivas Aluru |
IPDPS | 3 |
| 2018 | Cooperative neural networks (CoNN): Exploiting prior independence structure for improved classificationabstractWe propose a new approach, called cooperative neural networks (CoNN), which use a set of cooperatively trained neural networks to capture latent representations that exploit prior given independence structure. The model is more flexible than traditional graphical models based on exponential family distributions, but incorporates more domain specific prior structure than traditional deep networks or variational autoencoders. The framework is very general and can be used to exploit the independence structure of any graphical model. We illustrate the technique by showing that we can transfer the independence structure of the popular Latent Dirichlet Allocation (LDA) model to a cooperative neural network, CoNN-sLDA. Empirical evaluation of CoNN-sLDA on supervised text classification tasks demonstrate that the theoretical advantages of prior independence structure can be realized in practice - we demonstrate a 23 percent reduction in error on the challenging MultiSent data set compared to state-of-the-art. Harsh Shrivastava 0001, Eugene Bart, Bob Price, Hanjun Dai, Bo Dai 0001, Srinivas Aluru |
NeurIPS | 6 |
| 2018 | Algorithmic Framework for Approximate Matching Under Bounded Edits with Applications to Sequence Analysis
Sharma V. Thankachan, Chaitanya Aluru, Sriram P. Chockalingam, Srinivas Aluru |
RECOMB | 4 |
| 2018 | Optimizing high performance distributed memory parallel hash tables for DNA k-mer counting
Tony Pan, Sanchit Misra, Srinivas Aluru |
SC | 3 |
| 2018 | A fast adaptive algorithm for computing whole-genome homology mapsabstractMotivation: Whole-genome alignment is an important problem in genomics for comparing different species, mapping draft assemblies to reference genomes and identifying repeats. However, for large plant and animal genomes, this task remains compute and memory intensive. In addition, current practical methods lack any guarantee on the characteristics of output alignments, thus making them hard to tune for different application requirements. Results: We introduce an approximate algorithm for computing local alignment boundaries between long DNA sequences. Given a minimum alignment length and an identity threshold, our algorithm computes the desired alignment boundaries and identity estimates using kmer-based statistics, and maintains sufficient probabilistic guarantees on the output sensitivity. Further, to prioritize higher scoring alignment intervals, we develop a plane-sweep based filtering technique which is theoretically optimal and practically efficient. Implementation of these ideas resulted in a fast and accurate assembly-to-genome and genome-to-genome mapper. As a result, we were able to map an error-corrected whole-genome NA12878 human assembly to the hg38 human reference genome in about 1 min total execution time and <4 GB memory using eight CPU threads, achieving significant improvement in memory-usage over competing methods. Recall accuracy of computed alignment boundaries was consistently found to be >97% on multiple datasets. Finally, we performed a sensitive self-alignment of the human genome to compute all duplications of length ≥1 Kbp and ≥90% identity. The reported output achieves good recall and covers twice the number of bases than the current UCSC browser's segmental duplication annotation. Availability and implementation: https://github.com/marbl/MashMap. Sergey Koren, Alexander T. Dilthey, Adam M. Phillippy, Srinivas Aluru |
Bioinform. | 5 |
| 2018 | An SVM-based method for assessment of transcription factor-DNA complex modelsabstractBACKGROUND: Atomic details of protein-DNA complexes can provide insightful information for better understanding of the function and binding specificity of DNA binding proteins. In addition to experimental methods for solving protein-DNA complex structures, protein-DNA docking can be used to predict native or near-native complex models. A docking program typically generates a large number of complex conformations and predicts the complex model(s) based on interaction energies between protein and DNA. However, the prediction accuracy is hampered by current approaches to model assessment, especially when docking simulations fail to produce any near-native models. RESULTS: We present here a Support Vector Machine (SVM)-based approach for quality assessment of the predicted transcription factor (TF)-DNA complex models. Besides a knowledge-based protein-DNA interaction potential DDNA3, we applied several structural features that have been shown to play important roles in binding specificity between transcription factors and DNA molecules to quality assessment of complex models. To address the issue of unbalanced positive and negative cases in the training dataset, we applied hard-negative mining, an iterative training process that selects an initial training dataset by combining all of the positive cases and a random sample from the negative cases. Results show that the SVM model greatly improves prediction accuracy (84.2%) over two knowledge-based protein-DNA interaction potentials, orientation potential (60.8%) and DDNA3 (68.4%). The improvement is achieved through reducing the number of false positive predictions, especially for the hard docking cases, in which a docking algorithm fails to produce any near-native complex models. CONCLUSIONS: A learning-based SVM scoring model with structural features for specific protein-DNA binding and an atomic-level protein-DNA interaction potential DDNA3 significantly improves prediction accuracy of complex models by successfully identifying cases without near-native structural models. Rosario I. Corona, Sanjana Sudarshan, Srinivas Aluru, Jun-tao Guo |
BMC Bioinform. | 3 |
| 2017 | Confidence assessment of protein-DNA complex modelsabstractProtein-DNA docking is an important computational technique for generating native or near-native complex models. A docking program typically generates a number of complex conformations and predicts the docking solution based on interaction energies. However, incomplete sampling and energy function deficiencies can result in false positive protein-DNA complex models, which hampers its application in biology or medicine. Built upon our investigation of structural features for binding specificity between protein and DNA molecules, we present here a Support Vector Machine (SVM)-based approach for quality assessment of the docked transcription factor-DNA complex models by combining structural features and a knowledge-based protein-DNA interaction potential. Our results show that the SVM scoring model greatly improves the prediction accuracy by successfully identifying the false positive cases, in which the docking algorithm fails to produce any near-native complex models. Rosario I. Corona, Sanjana Sudarshan, Jun-tao Guo, Srinivas Aluru |
BIBM | 4 |
| 2017 | Probabilistic estimation of overlap graphs for large sequence datasetsabstractSequence overlap graphs, constructed based on suffix-prefix relationships between pairs of sequences, are an important data structure in computational biology. High throughput sequencers can read several million to a few billion DNA fragments in a single experiment, making the construction of overlap graphs for such datasets compute-intensive. In this paper, we present a Locality-Sensitive Hashing based parallel heuristic algorithm to construct overlap graphs for large genomic datasets. With reasonable assumptions on the characteristics of input sequences, we establish probabilistic bounds on the quality of the overlap graphs so produced. We demonstrate the validity and efficiency of our approach by comparing against true overlap graphs using datasets derived from small (E. coli) and large (H. sapiens) genomes. Rahul Nihalani, Sriram P. Chockalingam, Shaowei Zhu 0001, Vijay V. Vazirani, Srinivas Aluru |
BIBM | 5 |
| 2017 | Parallel Exact Dynamic Bayesian Network Structure Learning with Application to Gene NetworksabstractLearning the structure of Bayesian networks, even in the static case, is NP-hard, compelling much of the research to focus on heuristic-based approaches. However, there are instances where exact solutions are desirable especially for small network sizes. In this work, we present a dynamic programming based exact solution to learn dynamic Bayesian network structure. Our method simultaneously learns intra- as well as higher order inter-time-slice interactions in the network. For n variables, our exact solution requires O(n2.2n(M+1)) computations to learn M-th order network. To handle such high computational requirements, we present a parallel exact solution to push the limit on the size of the networks that can be learned. Given p = 2kprocessors, the parallel algorithm runs in O(n2.2nM.(2n-k+ k)) time and achieves optimal parallel efficiency when 2n-k> k. Using MPI+X parallel programming model, the parallel algorithm linearly scales to 1,024 cores of a 64-node Intel Xeon InfiniBand cluster, sustaining >99% of parallel efficiency. We also show that the learned networks on gene network datasets are of high fidelity compared to heuristic-based techniques. Md. Vasimuddin, Srinivas Aluru |
HiPC | 2 |
| 2017 | Parallel Construction of Suffix Trees and the All-Nearest-Smaller-Values ProblemabstractA Suffix tree is a fundamental and versatile string data structure that is frequently used in important application areas such as text processing, information retrieval, and computational biology. Sequentially, the construction of suffix trees takes linear time, and optimal parallel algorithms exist only for the PRAM model. Recent works mostly target low core-count shared-memory implementations but achieve suboptimal complexity, and prior distributed-memory parallel algorithms have quadratic worst-case complexity. Suffix trees can be constructed from suffix and longest common prefix (LCP) arrays by solving the All-Nearest-Smaller-Values(ANSV) problem. In this paper, we formulate a more generalized version of the ANSV problem, and present a distributed-memory parallel algorithm for solving it in O(n/p +p) time. Our algorithm minimizes the overall and per-node communication volume. Building on this, we present a parallel algorithm for constructing a distributed representation of suffix trees, yielding both superior theoretical complexity and better practical performance compared to previous distributed-memory algorithms. We demonstrate the construction of the suffix tree for the human genome given its suffix and LCP arrays in under 2 seconds on 1024 Intel Xeon cores. Patrick Flick, Srinivas Aluru |
IPDPS | 2 |
| 2017 | A Fast Approximate Algorithm for Mapping Long Reads to Large Reference Databases
Alexander T. Dilthey, Sergey Koren, Srinivas Aluru, Adam M. Phillippy |
RECOMB | 4 |
| 2017 | A greedy alignment-free distance estimator for phylogenetic inferenceabstractBACKGROUND: Alignment-free sequence comparison approaches have been garnering increasing interest in various data- and compute-intensive applications such as phylogenetic inference for large-scale sequences. While k-mer based methods are predominantly used in real applications, the average common substring (ACS) approach is emerging as one of the prominent alignment-free approaches. This ACS approach has been further generalized by some recent work, either greedily or exactly, by allowing a bounded number of mismatches in the common substrings. RESULTS: We present ALFRED-G, a greedy alignment-free distance estimator for phylogenetic tree reconstruction based on the concept of the generalized ACS approach. In this algorithm, we have investigated a new heuristic to efficiently compute the lengths of common strings with mismatches allowed, and have further applied this heuristic to phylogeny reconstruction. Performance evaluation using real sequence datasets shows that our heuristic is able to reconstruct comparable, or even more accurate, phylogenetic tree topologies than the kmacs heuristic algorithm at highly competitive speed. CONCLUSIONS: ALFRED-G is an alignment-free heuristic for evolutionary distance estimation between two biological sequences. This algorithm is implemented in C++ and has been incorporated into our open-source ALFRED software package ( http://alurulab.cc.gatech.edu/phylo ). Sharma V. Thankachan, Sriram P. Chockalingam, Yongchao Liu 0004, Ambujam Krishnan, Srinivas Aluru |
BMC Bioinform. | 5 |
| 2017 | Reprint of "A parallel connectivity algorithm for de Bruijn graphs in metagenomic applications"
Patrick Flick, Tony Pan, Srinivas Aluru |
Parallel Comput. | 4 |
| 2017 | An Adaptive Parallel Algorithm for Computing Connected ComponentsabstractWe present an efficient distributed memory parallel algorithm for computing connected components in undirected graphs based on Shiloach-Vishkin's PRAM approach. We discuss multiple optimization techniques that reduce communication volume as well as load-balance the algorithm. We also note that the efficiency of the parallel graph connectivity algorithm depends on the underlying graph topology. Particularly for short diameter graph components, we observe that parallel Breadth First Search (BFS) method offers better performance. However, running parallel BFS is not efficient for computing large diameter components or large number of small components. To address this challenge, we employ a heuristic that allows the algorithm to quickly predict the type of the network by computing the degree distribution and follow the optimal hybrid route. Using large graphs with diverse topologies from domains including metagenomics, web crawl, social graph and road networks, we show that our hybrid implementation is efficient and scalable for each of the graph types. Our approach achieves a runtime of 215 seconds using 32 K cores of Cray XC30 for a metagenomic graph with over 50 billion edges. When compared against the previous state-of-the-art method, we see performance improvements up to 24 ×. Patrick Flick, Tony Pan, Oded Green, Srinivas Aluru |
IEEE Trans. Parallel Distributed Syst. | 5 |
| 2016 | Genomes Galore: Big Data Challenges in the Life SciencesabstractSummary form only given. While the big data revolution in the consumer, business, and social networks domains is widely known, a similar revolution is taking place in the sciences and engineering driven by high-throughput instrumentation. This talk will feature big data challenges in the life sciences, primarily due to advances in sequencing that resulted in several orders of magnitude throughput increases per unit cost during the last decade. These advances are democratizing big data generation capabilities and spawning new scientific inquiries that would not be feasible otherwise. The time, cost, and complexity of data analysis have overtaken the cost and speed of data generation as the primary bottlenecks, posing significant challenges for computer scientists. I will present an overview of my group's research in addressing some of these issues through the development of parallel algorithms and high performance computing approaches. Apart from opening new avenues of investigation in parallel processing, research in this domain is also leading to broadly applicable techniques in areas such as graph analytics and parallel machine learning. I will also brief the audience on the ongoing federal initiatives in the United States aimed at nurturing multi-stakeholder partnerships to advance such big data challenges. Srinivas Aluru |
HiPC | 1 |
| 2016 | Programming Techniques for the Automata ProcessorabstractThe Micron Automata Processor (AP) is a novel co-processor accelerator that supports the parallel execution of multiple Nondeterministic Finite Automata (NFA) programmed directly into hardware over a single data-stream. In this paper, we present a number of programming techniques to develop automata that execute efficiently on this processor. First, we present general techniques to transform NFAs defined in their classical representation to the representation used by the AP, and optimize the same. Then, we present automata development techniques using simple but powerful generic building blocks. All the above techniques are generic in nature and can be useful to application developers working on this new upcoming co-processor architecture. Indranil Roy, Ankit Srivastava, Srinivas Aluru |
ICPP | 3 |
| 2016 | Algorithmic Techniques for Solving Graph Problems on the Automata ProcessorabstractThe Automata Processor is a new accelerator technology that supports direct hardware implementation of a set of non-deterministic finite automata over a streaming input, and is designed for complex string pattern matching applications. In this paper, we broaden the scope of this architecture beyond its primary design goal, by developing algorithmic techniques to solve problems on unweighted graphs. We present a strategy to represent nodes and edges in a graph using strings, and use this transformation to develop algorithms for several classic graph problems including finding Hamiltonian paths and cycles, connected components, and breadth-first search. Our algorithms rely on a core set of automata building blocks which we designed for this purpose, and illustrate various design considerations that developers must bear in mind when harnessing this new technology. We expect that this work provides the foundations for solving graph problems using the Automata Processor. Indranil Roy, Nagakishore Jammula, Srinivas Aluru |
IPDPS | 3 |
| 2016 | High Performance Pattern Matching Using the Automata ProcessorabstractIn this paper, we study the acceleration of applications that require searching for all occurrences of thousands of string-patterns in an input data-stream, using the Automata Processor (AP). For this purpose, we use two applications from two fields, namely, network security and bioinformatics. The first application, called Fast-SNAP (for Fast-SNort using AP), scans network data for 4312 signatures of intrusion derived from the popular open-source Snort database. Using the resources of a single AP board, Fast-SNAP can scan for all these signatures at 10.3 Gbps. The second application, called PROTOMATA (for PROTein autOMATA), looks for all occurrences of 1308 protein motifs from the PROSITE database in protein sequences. PROTOMATA is up to half a million times faster than its single-CPU-based counterpart. The techniques developed to program these applications may be useful in the design and development of similar applications using this new hardware accelerator. Indranil Roy, Ankit Srivastava, Marziyeh Nourian, Michela Becchi, Srinivas Aluru |
IPDPS | 5 |
| 2016 | An Efficient Algorithm for Finding All Pairs k-Mismatch Maximal Common Substrings
Sharma V. Thankachan, Sriram P. Chockalingam, Srinivas Aluru |
ISBRA | 3 |
| 2016 | Parallel Pairwise Correlation Computation on Intel Xeon Phi ClustersabstractCo-expression network is a critical technique for the identification of inter-gene interactions, which usually relies on all-pairs correlation (or similar measure) computation between gene expression profiles across multiple samples. Pearson's correlation coefficient (PCC) is one widely used technique for gene co-expression network construction. However, all-pairs PCC computation is computationally demanding for large numbers of gene expression profiles, thus motivating our acceleration of its execution using high-performance computing. In this paper, we present LightPCC, the first parallel and distributed all-pairs PCC computation on Intel Xeon Phi (Phi) clusters. It achieves high speed by exploring the SIMD-instruction-level and thread-level parallelism within Phis as well as accelerator-level parallelism among multiple Phis. To facilitate balanced workload distribution, we have proposed a general framework for symmetric all-pairs computation by building bijective functions between job identifier and coordinate space for the first time. We have evaluated LightPCC and compared it to two CPU-based counterparts: a sequential C++ implementation in ALGLIB and an implementation based on a parallel general matrix-matrix multiplication routine in Intel Math Kernel Library (MKL) (all use double precision), using a set of gene expression datasets. Performance evaluation revealed that with one 5110P Phi and 16 Phis, LightPCC runs up to 20.6× and 218.2× faster than ALGLIB, and up to 6.8× and 71.4× faster than single-threaded MKL, respectively. In addition, LightPCC demonstrated good parallel scalability in terms of number of Phis. Source code of LightPCC is publicly available at http://lightpcc.sourceforge.net. Yongchao Liu 0004, Tony Pan, Srinivas Aluru |
SBAC-PAD | 3 |
| 2016 | A parallel algorithm for finding all pairs k-mismatch maximal common substringsabstractWe present an efficient parallel algorithm for the following problem: Given an input collection D of n sequences of total length N, a length threshold f and a mismatch threshold κ, report all κ-mismatch maximal common substrings of length at least f over all pairs of strings in D. This problem is motivated by clustering and assembly applications in computational biology, where D is a collection of millions of short DNA sequences. Sequencing errors and massive size of these datasets necessitate efficient parallel approximate sequence matching algorithms. We present a novel distributed memory parallel algorithm that solves this approximate sequence matching problem in O ((N/p log N + occ)logkN) expected time and takes only O(logk+1N) expected rounds of global communications, under some realistic assumptions, where p is the number of processors and occ is the output size. To our knowledge, this is the first provably sub-quadratic time algorithm for solving this problem. We demonstrate the performance and scalability of our algorithm using large high throughput sequencing data sets. Sriram P. Chockalingam, Sharma V. Thankachan, Srinivas Aluru |
SC | 3 |
| 2016 | Discovering Motifs in Biological Sequences Using the Micron Automata ProcessorabstractFinding approximately conserved sequences, called motifs, across multiple DNA or protein sequences is an important problem in computational biology. In this paper, we consider the (l, d) motif search problem of identifying one or more motifs of length l present in at least q of the n given sequences, with each occurrence differing from the motif in at most d substitutions. The problem is known to be NP-complete, and the largest solved instance reported to date is (26,11). We propose a novel algorithm for the (l,d) motif search problem using streaming execution over a large set of non-deterministic finite automata (NFA). This solution is designed to take advantage of the micron automata processor, a new technology close to deployment that can simultaneously execute multiple NFA in parallel. We demonstrate the capability for solving much larger instances of the (l, d) motif search problem using the resources available within a single automata processor board, by estimating run-times for problem instances (39,18) and (40,17). The paper serves as a useful guide to solving problems using this new accelerator technology. Indranil Roy, Srinivas Aluru |
IEEE ACM Trans. Comput. Biol. Bioinform. | 2 |
| 2015 | Parallel machine learning approaches for reverse engineering genome-scale networksabstractReverse engineering whole-genome networks from large-scale gene expression measurements and analyzing them to extract biologically valid hypotheses are important challenges in systems biology. While simpler models easily scale to large number of genes and gene expression datasets, more accurate models are compute intensive limiting their scale of applicability. In this talk, I will present our research on the development of parallel mutual information and Bayesian network based structure learning methods to eliminate such bottlenecks and facilitate genome-scale network inference. As a demonstration, we reconstructed genome-scale networks of the model plant Arabidopsis thaliana from 11,700 microarray experiments using 1.57 million cores of the Tianhe-2 Supercomputer. Such networks can be used as a guide to predicting gene function and extracting context-specific subnetworks. Srinivas Aluru |
BIBM | 1 |
| 2015 | SNVSniffer: An integrated caller for germline and somatic SNVs based on Bayesian modelsabstractThe discovery of single nucleotide variants (SNVs) from next-generation sequencing (NGS) data typically works by aligning reads to a given genome and then creating an alignment map to interpret the presence of SNVs. Various approaches have been developed to call whether germline SNVs (or SNPs) in normal cells or somatic SNVs in cancer/tumor cells. Nonetheless, efficient callers for both germline and somatic SNVs have not yet been extensively investigated. In this paper, we present SNVSniffer, an integrated caller for germline and somatic SNVs from NGS data based on Bayesian probabilistic models. In SNVSniffer, our germline SNV calling models allele counts per site as a multinomial conditional distribution. Meanwhile, our somatic SNV calling relies on NGS tumor-normal sample pairs, and introduces a hybrid approach combining a subtraction approach with a joint sample analysis which models tumor-normal allele counts per site as a joint multinomial conditional distribution. Moreover, we investigate a lightweight tumor purity estimation approach, which demonstrates high accuracy on synthetic tumors. Compared to some leading SNP callers (SAMtools, GATK and FaSD) and somatic SNV callers (VarScan2, SomaticSniper, JointSNVMix2, MuTect), SNVSniffer demonstrates comparable or even better accuracy at faster speed. SVNSniffer, the synthetic tumor-normal data and the supplementary information are available at http://snvsniffer.sourceforge.net. Yongchao Liu 0004, Martin Loewer, Srinivas Aluru, Bertil Schmidt |
BIBM | 3 |
| 2015 | Information Theory Based Genome-Scale Gene Networks Construction Using MapReduceabstractReverse-engineering genome-scale gene networks from gene expression data is a principal challenge in systems biology. Mutual information (MI) based methods are favored because of their ability to recover non-linear relationships, low algorithmic complexity, and their successful use in various biological applications such as gene function prediction. In this paper, we present the first ever construction of MI based genome-scale gene networks using MapReduce. We develop the solution for all the stages of a MI-based network construction algorithm using only the map and reduce operations on distributed datasets. Our solution is implemented using Spark, a software that provides a compute and memory abstraction for distributed datasets. We deploy our solution using on-demand virtual instances on Amazon EC2 cloud computing platform, thus demonstrating the use of a rent-by-the-hour ad-hoc cluster for this grand challenge problem in systems biology. Our implementation can scale with the number of virtual instances, and can be used to construct networks of sizes in the range of 2000 to 5000 genes within an hour in a cost effective manner. We demonstrate the capability to construct genome-scale networks by reverse engineering a network of over 17,000 genes for the widely studied model plant Arabidopsis Thaliana. Sriram P. Chockalingam, Maneesha Aluru, Srinivas Aluru |
HiPC | 3 |
| 2015 | Parallel Read Error Correction for Big Genomic DatasetsabstractGenome sequencing, using instruments in vogue today, deciphers in the order of a billion short genomic fragments per run. These fragments are a few hundred bases long and are commonly referred to as `reads'. Reads contain errors due to limitations of sequencing technology. Read error correction enhances the quality of results produced by applications in areas such as genomics, metagenomics, and transcriptomics. Use of error corrected reads also improves the runtime and the memory usage of such applications. Sequential error correction tools cannot cope with the large number of reads produced by modern day sequencing instruments. A distributed-memory Parallel Spectrum-based Error Correction (PSbEC) algorithm was proposed to overcome this drawback [1]. In this work, we propose techniques to address three major shortcomings of the PSbEC algorithm. Our optimizations enhance the scope and the speedup of the PSbEC algorithm, thereby enabling error correction of big genomic datasets. More specifically, by combining our optimizations, we are able to achieve a cumulative speedup of up to 11 X. Further, we demonstrate error correction of a human dataset containing nearly 1.55 billion reads. This work stands as the first demonstration of distributed-memory genomic read error correction for a dataset consisting of more than a billion reads. Nagakishore Jammula, Sriram P. Chockalingam, Srinivas Aluru |
HiPC | 3 |
| 2015 | Efficient Alignment Free Sequence Comparison with Bounded Mismatches
Srinivas Aluru, Alberto Apostolico, Sharma V. Thankachan |
RECOMB | 1 |
| 2015 | Parallel distributed memory construction of suffix and longest common prefix arraysabstractSuffix arrays and trees are fundamental string data structures of importance to many applications in computational biology. Consequently, their parallel construction is an actively studied problem. To date, algorithms with best practical performance lack efficient worst-case run-time guarantees, and vice versa. In addition, much of the recent work targeted low core count, shared memory parallelization. In this paper, we present parallel algorithms for distributed memory construction of suffix arrays and longest common prefix (LCP) arrays that simultaneously achieve good worst-case run-time bounds and superior practical performance. Our algorithms run in O(Tsort(n, p) · log n) worst-case time where Tsort(n, p) is the run-time of parallel sorting. We present several algorithm engineering techniques that improve performance in practice. We demonstrate the construction of suffix and LCP arrays of the human genome in less than 8 seconds on 1,024 Intel Xeon cores, reaching speedups of over 110X compared to the best sequential suffix array construction implementation divsufsort. Patrick Flick, Srinivas Aluru |
SC | 2 |
| 2015 | A parallel connectivity algorithm for de Bruijn graphs in metagenomic applicationsabstractDramatic advances in DNA sequencing technology have made it possible to study microbial environments by direct sequencing of environmental DNA samples. Yet, due to the huge volume and high data complexity, current de novo assemblers cannot handle large metagenomic datasets or fail to perform assembly with acceptable quality. This paper presents the first parallel solution for decomposing the metagenomic assembly problem without compromising the post-assembly quality. We transform this problem into that of finding weakly connected components in the de Bruijn graph. We propose a novel distributed memory algorithm to identify the connected subgraphs, and present strategies to minimize the communication volume. We demonstrate the scalability of our algorithm on a soil metagenome dataset with 1.8 billion reads. Our approach achieves a runtime of 22 minutes using 1280 Intel Xeon cores for a 421 GB uncompressed FASTQ dataset. Moreover, our solution is generalizable to finding connected components in arbitrary undirected graphs. Patrick Flick, Tony Pan, Srinivas Aluru |
SC | 4 |
| 2015 | In search of perfect readsabstractBACKGROUND: Continued advances in next generation short-read sequencing technologies are increasing throughput and read lengths, while driving down error rates. Taking advantage of the high coverage sampling used in many applications, several error correction algorithms have been developed to improve data quality further. However, correcting errors in high coverage sequence data requires significant computing resources. METHODS: We propose a different approach to handle erroneous sequence data. Presently, error rates of high-throughput platforms such as the Illumina HiSeq are within 1%. Moreover, the errors are not uniformly distributed in all reads, and a large percentage of reads are indeed error-free. Ability to predict such perfect reads can significantly impact the run-time complexity of applications. We present a simple and fast k-spectrum analysis based method to identify error-free reads. The filtration process to identify and weed out erroneous reads can be customized at several levels of stringency depending upon the downstream application need. RESULTS: Our experiments show that if around 80% of the reads in a dataset are perfect, then our method retains almost 99.9% of them with more than 90% precision rate. Though filtering out reads identified as erroneous by our method reduces the average coverage by about 7%, we found the remaining reads provide as uniform a coverage as the original dataset. We demonstrate the effectiveness of our approach on an example downstream application: we show that an error correction algorithm, Reptile, which rely on collectively analyzing the reads in a dataset to identify and correct erroneous bases, instead use reads predicted to be perfect by our method to correct the other reads, the overall accuracy improves further by up to 10%. CONCLUSIONS: Thanks to the continuous technological improvements, the coverage and accuracy of reads from dominant sequencing platforms have now reached an extent where we can envision just filtering out reads with errors, thus making error correction less important. Our algorithm is a first attempt to propose and demonstrate this new paradigm. Moreover, our demonstration is applicable to any error correction algorithm as a downstream application, this in turn gives a new class of error correcting algorithms as a by product. Soumitra Pal 0001, Srinivas Aluru |
BMC Bioinform. | 2 |
| 2015 | Editorial: Scalable Systems for Big Data Management and Analytics
Srinivas Aluru, Yogesh L. Simmhan |
J. Parallel Distributed Comput. | 1 |
| 2015 | Guest Editors' Introduction: Selected Papers from ACM-BCB 2013abstractThe articles in this special section were presented at the fourth ACM Conference on Bioinformatics, Computational Biology, and BiomedicalInformatics, held in Washington D.C. in September 2013. Srinivas Aluru, Donna K. Slonim |
IEEE ACM Trans. Comput. Biol. Bioinform. | 1 |
| 2015 | Parallel Mutual Information Based Construction of Genome-Scale Networks on the Intel®Xeon Phi™ CoprocessorabstractConstruction of whole-genome networks from large-scale gene expression data is an important problem in systems biology. While several techniques have been developed, most cannot handle network reconstruction at the whole-genome scale, and the few that can, require large clusters. In this paper, we present a solution on the Intel Xeon Phi coprocessor, taking advantage of its multi-level parallelism including many x86-based cores, multiple threads per core, and vector processing units. We also present a solution on the Intel® Xeon® processor. Our solution is based on TINGe, a fast parallel network reconstruction technique that uses mutual information and permutation testing for assessing statistical significance. We demonstrate the first ever inference of a plant whole genome regulatory network on a single chip by constructing a 15,575 gene network of the plant Arabidopsis thaliana from 3,137 microarray experiments in only 22 minutes. In addition, our optimization for parallelizing mutual information computation on the Intel Xeon Phi coprocessor holds out lessons that are applicable to other domains. Sanchit Misra, Kiran Pamnany, Srinivas Aluru |
IEEE ACM Trans. Comput. Biol. Bioinform. | 3 |
| 2014 | Parallel Mutual Information Based Construction of Whole-Genome Networks on the Intel (R) Xeon Phi (TM) CoprocessorabstractConstruction of whole-genome networks from large-scale gene expression data is an important problem in systems biology. While several techniques have been developed, most cannot handle network reconstruction at the whole-genome scale, and the few that can, require large clusters. In this paper, we present a solution on the Intel (R) Xeon Phi (TM) coprocessor, taking advantage of its multi-level parallelism including many x86-based cores, multiple threads per core, and vector processing units. We also present a solution on the Intel (R) Xeon (R) processor. Our solution is based on TINGe, a fast parallel network reconstruction technique that uses mutual information and permutation testing for assessing statistical significance. We demonstrate the first ever inference of a plant whole genome regulatory network on a single chip by constructing a 15,575 gene network of the plant Arabidopsis thaliana from 3,137 microarray experiments in only 22 minutes. In addition, our optimization for parallelizing mutual information computation on the Intel Xeon Phi coprocessor holds out lessons that are applicable to other domains. Sanchit Misra, Kiran Pamnany, Srinivas Aluru |
IPDPS | 3 |
| 2014 | Finding Motifs in Biological Sequences Using the Micron Automata ProcessorabstractFinding approximately conserved sequences, called motifs, across multiple DNA or protein sequences is an important problem in computational biology. In this paper, we consider the (l, d) motif search problem of identifying one or more motifs of length l present in at least q of the n given sequences, with each occurrence differing from the motif in at most d substitutions. The problem is known to be NP-hard, and the largest solved instance reported to date is (26, 11). We propose a novel algorithm for the (l, d) motif search problem using streaming execution over a large set of Non-deterministic Finite Automata (NFA). This solution is designed to take advantage of the Micron Automata Processor, a new technology close to deployment that can simultaneously execute multiple NFA in parallel. We estimate the run-time for the (39, 18) and (40, 17) problem instances using the resources available within a single Automata Processor board. In addition to solving larger instances of the (l, d) motif search problem, the paper serves as a useful guide to solving problems using this new accelerator technology. Indranil Roy, Srinivas Aluru |
IPDPS | 2 |
| 2014 | Parallel Bayesian Network Structure Learning for Genome-Scale Gene NetworksabstractLearning Bayesian networks is NP-hard. Even with recent progress in heuristic and parallel algorithms, modeling capabilities still fall short of the scale of the problems encountered. In this paper, we present a massively parallel method for Bayesian network structure learning, and demonstrate its capability by constructing genome-scale gene networks of the model plant Arabidopsis thaliana from over 168.5 million gene expression values. We report strong scaling efficiency of 75% and demonstrate scaling to 1.57 million cores of the Tianhe-2 supercomputer. Our results constitute three and five orders of magnitude increase over previously published results in the scale of data analyzed and computations performed, respectively. We achieve this through algorithmic innovations, using efficient techniques to distribute work across all compute nodes, all available processors and coprocessors on each node, all available threads on each processor and coprocessor, and vectorization techniques to maximize single thread performance. Sanchit Misra, Md. Vasimuddin, Kiran Pamnany, Sriram P. Chockalingam, Yong Dong, Maneesha Aluru, Srinivas Aluru |
SC | 8 |
| 2013 | A survey of error-correction methods for next-generation sequencingabstractUNLABELLED: Error Correction is important for most next-generation sequencing applications because highly accurate sequenced reads will likely lead to higher quality results. Many techniques for error correction of sequencing data from next-gen platforms have been developed in the recent years. However, compared with the fast development of sequencing technologies, there is a lack of standardized evaluation procedure for different error-correction methods, making it difficult to assess their relative merits and demerits. In this article, we provide a comprehensive review of many error-correction methods, and establish a common set of benchmark data and evaluation criteria to provide a comparative assessment. We present experimental results on quality, run-time, memory usage and scalability of several error-correction methods. Apart from providing explicit recommendations useful to practitioners, the review serves to identify the current state of the art and promising directions for future research. AVAILABILITY: All error-correction programs used in this article are downloaded from hosting websites. The evaluation tool kit is publicly available at: http://aluru-sun.ece.iastate.edu/doku.php?id=ecr. Xiao Yang 0019, Sriram P. Chockalingam, Srinivas Aluru |
Briefings Bioinform. | 3 |
| 2013 | Parallel globally optimal structure learning of Bayesian networks
Olga Nikolova, Jaroslaw Zola, Srinivas Aluru |
J. Parallel Distributed Comput. | 3 |
| 2013 | All-pairs computations on many-core graphics processors
Abhinav Sarje, Srinivas Aluru |
Parallel Comput. | 2 |
| 2012 | A Parallel Algorithm for Spectrum-based Short Read Error CorrectionabstractCorrecting sequence errors in high-throughput DNA sequencing by taking advantage of redundant sampling and low error rates is often an important first step in applications of this technology. Consequently, a number of error correction methods have been developed in the recent years. Due to an order of magnitude throughput gain per year, some of these technologies are now generating upwards of a billion reads per run. In this paper, we present an algorithm for parallel zing error correction methods that are based on frequency spectrum of kmers observed in input reads. Based on this, we present a parallelization of Reptile, a recently introduced error correction method that employs frequency spectrum of two different lengths, one for identifying correction possibilities and another for providing contextual information. Our method is well suited for distributed memory parallel computers and clusters. Experimental results indicate the method achieves near linear speedup and provides the ability to scale to larger data sets than previously demonstrated. Sriram P. Chockalingam, Srinivas Aluru |
IPDPS | 3 |
| 2012 | Parallel Bayesian network structure learning with application to gene networksabstractBayesian networks (BN) are probabilistic graphical models which are widely utilized in various research areas, including modeling complex biological interactions in the cell. Learning the structure of a BN is an NP-hard problem and exact solutions are limited to a few tens of variables. In this work, we present a parallel BN structure learning algorithm that combines principles of both heuristic and exact approaches and facilitates learning of larger networks. We demonstrate the applicability of our approach by an implementation on a Cray AMD cluster, and present experimental results for the problem of inferring gene networks. Our approach is work-optimal and achieves nearly perfect scaling. Olga Nikolova, Srinivas Aluru |
SC | 2 |
| 2012 | An Algorithmic View on Multi-Related-Segments: A Unifying Model for Approximate Common Interval
Xiao Yang 0019, Florian Sikora, Guillaume Blin, Sylvie Hamel, Romeo Rizzi, Srinivas Aluru |
TAMC | 6 |
| 2011 | Parallel Discovery of Direct Causal Relations and Markov Boundaries with Applications to Gene NetworksabstractBayesian networks enable formal probabilistic reasoning on a set of interacting variables of a domain, and have been shown to have broad applicability. More specifically, in bioinformatics Bayesian networks are used to model gene interactions. Learning the structure of a Bayesian network is an NP-hard problem making it necessary to employ heuristics for solving large-scale problems. In this paper, we present parallel algorithms for two problems that arise in relation with network structure learning and analysis: (i) the discovery of all direct causal relations for each variable, i.e., the set of parents and children of each node in the corresponding Bayesian network, and (ii) the computation of Markov boundary of each variable, defined as the minimal set of variables that shield the target variable from all other variables in the domain. Our parallel algorithms are based on state-of-the art constraint-based heuristic optimization methods. They are shown to be work-optimal and communication efficient, and exhibit nearly perfect scaling. Olga Nikolova, Srinivas Aluru |
ICPP | 2 |
| 2011 | Parallel Metagenomic Sequence Clustering Via Sketching and Maximal Quasi-clique Enumeration on Map-Reduce CloudsabstractTaxonomic clustering of species is an important and frequently arising problem in metagenomics. High-throughput next generation sequencing is facilitating the creation of large metagenomic samples, while at the same time making the clustering problem harder due to the short sequence length supported and unknown species sampled. In this paper, we present a parallel algorithm for hierarchical taxonomic clustering of large metagenomic samples with support for overlapping clusters. We adapt the sketching techniques originally developed for web document clustering to deduce significant similarities between pairs of sequences without resorting to expensive all vs. all alignments. We formulate the metagenomics classification problem as that of maximal quasi-clique enumeration in the resulting similarity graph, at multiple levels of the hierarchy as prescribed by different similarity thresholds. We cast execution of the underlying algorithmic steps as applications of the map-reduce framework to achieve a cloud based implementation. Apart from solving an important problem in metagenomics, this work demonstrates the applicability of map-reduce framework in relatively complicated algorithmic settings. Xiao Yang 0019, Jaroslaw Zola, Srinivas Aluru |
IPDPS | 3 |
| 2011 | Repeat-aware modeling and correction of short read errorsabstractBACKGROUND: High-throughput short read sequencing is revolutionizing genomics and systems biology research by enabling cost-effective deep coverage sequencing of genomes and transcriptomes. Error detection and correction are crucial to many short read sequencing applications including de novo genome sequencing, genome resequencing, and digital gene expression analysis. Short read error detection is typically carried out by counting the observed frequencies of kmers in reads and validating those with frequencies exceeding a threshold. In case of genomes with high repeat content, an erroneous kmer may be frequently observed if it has few nucleotide differences with valid kmers with multiple occurrences in the genome. Error detection and correction were mostly applied to genomes with low repeat content and this remains a challenging problem for genomes with high repeat content. RESULTS: We develop a statistical model and a computational method for error detection and correction in the presence of genomic repeats. We propose a method to infer genomic frequencies of kmers from their observed frequencies by analyzing the misread relationships among observed kmers. We also propose a method to estimate the threshold useful for validating kmers whose estimated genomic frequency exceeds the threshold. We demonstrate that superior error detection is achieved using these methods. Furthermore, we break away from the common assumption of uniformly distributed errors within a read, and provide a framework to model position-dependent error occurrence frequencies common to many short read platforms. Lastly, we achieve better error correction in genomes with high repeat content. AVAILABILITY: The software is implemented in C++ and is freely available under GNU GPL3 license and Boost Software V1.0 license at "http://aluru-sun.ece.iastate.edu/doku.php?id = redeem". CONCLUSIONS: We introduce a statistical framework to model sequencing errors in next-generation reads, which led to promising results in detecting and correcting errors for genomes with high repeat content. Xiao Yang 0019, Srinivas Aluru, Karin S. Dorman |
BMC Bioinform. | 2 |
| 2011 | Accelerating Pairwise Computations on Cell ProcessorsabstractDirect computation of all pairwise distances or interactions is a fundamental problem that arises in many application areas including particle or atomistic simulations, fluid dynamics, computational electromagnetics, materials science, genomics and systems biology, and clustering and data mining. In this paper, we present methods for performing such pairwise computations efficiently in parallel on Cell processors. This problem is particularly challenging on the Cell processor due to the small sized Local Stores of the Synergistic Processing Elements, the main computational cores of the processor. We present techniques for different variants of this problem including those with large number of entities or when the dimensionality of the information per entity is large. We demonstrate our methods in the context of multiple applications drawn from fluid dynamics, materials science and systems biology, and present detailed experimental results. Our software library is an open source and can be readily used by application scientists to accelerate pairwise computations using Cell accelerators. Abhinav Sarje, Jaroslaw Zola, Srinivas Aluru |
IEEE Trans. Parallel Distributed Syst. | 3 |
| 2010 | A MapReduce Style Framework for Computations on TreesabstractThe emergence of cloud computing and Google's MapReduce paradigm is renewing interest in the development of broadly applicable high level abstractions as a means to deliver easy programmability and cyber resources to the user, while hiding complexities of system architecture, parallelism and algorithms, heterogeneity, and fault-tolerance. In this paper, we present a high-level framework for computations on tree structures. Despite the diversity and types of tree structures, and the algorithmic ways in which they are utilized, our abstraction provides sufficient generality to be broadly applicable. We show how certain frequently used operations on tree structures can be cast in terms of our framework. We further demonstrate the applicability of our framework by solving two applications -- k-nearest neighbors and fast multipole method (FMM) based simulations -- by merely using our framework in multiple ways. We developed a generic programming based implementation of the framework using C++ and MPI, and demonstrate its performance on the aforementioned applications using homogeneous multi-core clusters. William Sarje, Srinivas Aluru |
ICPP | 2 |
| 2010 | Parallel de novo assembly of large genomes from high-throughput short readsabstractThe advent of high-throughput short read technology is revolutionizing life sciences by providing an inexpensive way to sequence genomes at high coverage. Exploiting this technology requires the development of a de novo short read assembler, which is an important open problem that is garnering significant research effort. Current methods are largely limited to microbial organisms, whose genomes are two to three orders of magnitude smaller than complex mammalian and plant genomes. In this paper, we present the design and development of a parallel de novo short read assembler that can scale to large genomes with high coverage. Our approach is based on the string graph formulation. Input reads are mapped to short paths, and the genome is reconstructed as a superpath anchored by distance constraints inferred from read pairs. Our method can handle a mixture of multiple read sizes and multiple paired read distances. We present parallel algorithms for string graph construction, string graph compaction, graph based error detection and removal, and computing aggregate summarization of paired read links across graph edges. Using this, we navigate the final graph structure to reproduce large contiguous sequences from the underlying genome. We present a validation of our framework on experimental and simulated data from multiple known genomes and present scaling results on IBM Blue Gene/L. Benjamin G. Jackson, Matthew Regennitter, Xiao Yang 0019, Patrick S. Schnable, Srinivas Aluru |
IPDPS | 5 |
| 2010 | Reptile: representative tiling for short read error correctionabstractMOTIVATION: Error correction is critical to the success of next-generation sequencing applications, such as resequencing and de novo genome sequencing. It is especially important for high-throughput short-read sequencing, where reads are much shorter and more abundant, and errors more frequent than in traditional Sanger sequencing. Processing massive numbers of short reads with existing error correction methods is both compute and memory intensive, yet the results are far from satisfactory when applied to real datasets. RESULTS: We present a novel approach, termed Reptile, for error correction in short-read data from next-generation sequencing. Reptile works with the spectrum of k-mers from the input reads, and corrects errors by simultaneously examining: (i) Hamming distance-based correction possibilities for potentially erroneous k-mers; and (ii) neighboring k-mers from the same read for correct contextual information. By not needing to store input data, Reptile has the favorable property that it can handle data that does not fit in main memory. In addition to sequence data, Reptile can make use of available quality score information. Our experiments show that Reptile outperforms previous methods in the percentage of errors removed from the data and the accuracy in true base assignment. In addition, a significant reduction in run time and memory usage have been achieved compared with previous methods, making it more practical for short-read error correction when sampling larger genomes. AVAILABILITY: Reptile is implemented in C++ and is available through the link: http://aluru-sun.ece.iastate.edu/doku.php?id=software CONTACT: [email protected]. Xiao Yang 0019, Karin S. Dorman, Srinivas Aluru |
Bioinform. | 3 |
| 2010 | A scalable parallelization of the gene duplication problem
André Wehe, Wen-Chieh Chang 0002, Oliver Eulenstein, Srinivas Aluru |
J. Parallel Distributed Comput. | 4 |
| 2010 | Parallel Information-Theory-Based Construction of Genome-Wide Gene Regulatory NetworksabstractConstructing genome-wide gene regulatory networks from large-scale gene expression data is an important problem in systems biology. While several techniques have been developed, none of them is parallel, and they do not scale to the whole genome level or incorporate the largest data sets, particularly with rigorous statistical techniques. In this paper, we present a parallel method integrating mutual information, data processing inequality, and statistical testing to detect significant dependencies between genes, and efficiently exploit parallelism inherent in such computations. We present a new method to carry out permutation testing for assessing statistical significance of interactions, while reducing its computational complexity by a factor of Θ(n2), where n is the number of genes. Using both synthetic and known regulatory networks, we show that our method produces networks of quality similar to ARACNe, a widely used mutual-information-based method. We further explore the use of accelerators for gene network construction by presenting a parallelization on a cluster of IBM Cell blades. We exploit parallelization across multiple Cells, multiple cores within each Cell, and vector units within the cores to develop a high-performance implementation that effectively addresses the scaling problem. We report the first inference of a plant whole genome network by constructing a 15,222 gene network of the plant Arabidopsis thaliana from 3,137 microarray experiments in 30 minutes on a 2,048-CPU IBM Blue Gene/L, and in 2 hours and 25 minutes on a 8-node Cell blade cluster. Jaroslaw Zola, Maneesha Aluru, Abhinav Sarje, Srinivas Aluru |
IEEE Trans. Parallel Distributed Syst. | 4 |
| 2009 | A parallel algorithm for exact Bayesian network inferenceabstractGiven n random variables and a set of m observations of each of the n variables, the Bayesian network inference problem is to infer a directed acyclic graph (DAG) on the n variables such that the implied joint probability distribution best explains the set of observations. Bayesian networks are widely used in many fields ranging from data mining to computational biology. Exact inference of Bayesian networks takes O(n2· 2n) time plus the cost of O(n · 2n) evaluations of an application-specific scoring function. In this paper, we present a parallel algorithm for exact Bayesian inference that is work-optimal and communication-efficient. We demonstrate the applicability of our method by an implementation on the IBM Blue Gene/L, with experimental results that exhibit near perfect scaling. Olga Nikolova, Jaroslaw Zola, Srinivas Aluru |
HiPC | 3 |
| 2009 | Constructing Gene Regulatory Networks on Clusters of Cell ProcessorsabstractConstructing genome-wide gene regulatory networks from a large number of gene expression profile measurements is an important problem in systems biology. While several techniques have been developed, none of them is parallel, and they lack the capability to scale to the whole-genome level or incorporate the largest data sets, particularly with rigorous statistical testing. To address this problem, we recently developed a mutual information theory based parallel method for gene network reconstruction. In this paper, we extend this work to a cluster of Cell processors. We use parallelization across multiple Cells, multiple cores within each Cell, and vector units within the cores to develop a high performance implementation that effectively addresses the scaling problem. We present experimental results comparing the Cell implementation with a standard uniprocessor implementation and an implementation on a conventional supercomputer. Finally, we report the construction of a large 15,203 gene network of the plant Arabidopsis thaliana from 2,996 microarray experiments on a 8-node Cell blade cluster in 2 hours and 24 minutes. Jaroslaw Zola, Abhinav Sarje, Srinivas Aluru |
ICPP | 3 |
| 2009 | Parallel accelerated cartesian expansions for particle dynamics simulationsabstractRapid evaluation of potentials in large physical systems plays a crucial role in several fields and has been an intensely studied topic on parallel computers. Computational methods and associated parallel algorithms tend to vary depending on the potential being computed. Real applications often involve multiple potentials, leading to increased complexity and the need to strike a balance between competing data distribution strategies, ultimately resulting in low parallel efficiencies. In this paper, we present a parallel accelerated Cartesian expansion (PACE) method that enables rapid evaluation of multiple forms of potentials using a common Fast Multipole Method (FMM) type framework. In addition, our framework localizes potential dependent computations to one particular operator, allowing reuse of much of the computation across different potentials. We present an implicitly load balanced and communication efficient parallel algorithm and show that it can integrate multiple potentials, multiple time steps and address dynamically evolving physical systems. We demonstrate the applicability of the method by solving particle dynamics simulations using both long-range and Lennard-Jones potentials with parallel efficiencies of 97% on 512 to 1024 processors. Melapudi Vikram, Andrew Baczewzki, Balasubramaniam Shanker, Srinivas Aluru |
IPDPS | 4 |
| 2009 | Parallel short sequence assembly of transcriptomesabstractBACKGROUND: The de novo assembly of genomes and transcriptomes from short sequences is a challenging problem. Because of the high coverage needed to assemble short sequences as well as the overhead of modeling the assembly problem as a graph problem, the methods for short sequence assembly are often validated using data from BACs or small sized prokaryotic genomes. RESULTS: We present a parallel method for transcriptome assembly from large short sequence data sets. Our solution uses a rigorous graph theoretic framework and tames the computational and space complexity using parallel computers. First, we construct a distributed bidirected graph that captures overlap information. Next, we compact all chains in this graph to determine long unique contigs using undirected parallel list ranking, a problem for which we present an algorithm. Finally, we process this compacted distributed graph to resolve unique regions that are separated by repeats, exploiting the naturally occurring coverage variations arising from differential expression. CONCLUSION: We demonstrate the validity of our method using a synthetic high coverage data set generated from the predicted coding regions of Zea mays. We assemble 925 million sequences consisting of 40 billion nucleotides in a few minutes on a 1024 processor Blue Gene/L. Our method is the first fully distributed method for assembling a non-hierarchical short sequence data set and can scale to large problem sizes. Benjamin G. Jackson, Patrick S. Schnable, Srinivas Aluru |
BMC Bioinform. | 3 |
| 2009 | Parallel Genomic Alignments on the Cell Broadband EngineabstractGenomic alignments, as a means to uncover evolutionary relationships among organisms, are a fundamental tool in computational biology. There is considerable recent interest in using the Cell Broadband Engine, a heterogeneous multicore chip that provides high performance, for biological applications. However, work in genomic alignments so far has been limited to computing optimal alignment scores using quadratic space for the basic global/local alignment problem. In this paper, we present a comprehensive study of developing alignment algorithms on the Cell, exploiting its thread and data level parallelism features. First, we develop a parallel implementation on the Cell that computes optimal alignments and adopts Hirschberg's linear space technique. The former is essential, as merely computing optimal alignment scores is not useful, while the latter is needed to permit alignments of longer sequences. We then present Cell implementations of two advanced alignment techniques-spliced alignments and syntenic alignments. Spliced alignments are useful in aligning mRNA sequences with corresponding genomic sequences to uncover the gene structure. Syntenic alignments are used to discover conserved exons and other sequences between long genomic sequences from different organisms. We present experimental results for these three types of alignments on 16 Synergistic Processing Elements of the IBM QS20 dual-Cell blade system. Abhinav Sarje, Srinivas Aluru |
IEEE Trans. Parallel Distributed Syst. | 2 |
| 2008 | Parallel Information Theory Based Construction of Gene Regulatory Networks
Jaroslaw Zola, Maneesha Aluru, Srinivas Aluru |
HiPC | 3 |
| 2008 | Parallel Construction of Bidirected String Graphs for Genome AssemblyabstractGraph theoretic models for genome assembly are continually being proposed and refined. At the same time, large scale assembly projects rely on the overlap-layout-consensus assembly paradigm, in which the best pairwise alignments serve as seeds for a greedy extension of contigs. These methods, which largely rely on local information, are used despite research that demonstrates the superiority of other graph models, largely because the memory requirement of such models is prohibitive on single processor architectures. In this paper, we present a parallel algorithm for constructing bidirected string graphs from whole genome shotgun sequencing data, for use in the assembly problem. Our algorithm uses O(n/p) local computation - where n is the total size of shotgun sequences and p is the number of processors - and a constant number of all-to-all communications. We demonstrate scalability of the algorithm on the Blue Gene/L, and show that graphs for large, complex genome sequencing projects with deep sequence coverage can be effectively handled using parallel computers. Benjamin G. Jackson, Srinivas Aluru |
ICPP | 2 |
| 2008 | Tracking Nanostructural Evolution in Alloys: Large-Scale Analysis of Atom Probe Tomography Data on Blue Gene/LabstractThe advent of Local Electrode Atom Probe (LEAP) tomography is revolutionizing materials science by enabling near atomic scale imaging of materials. Analysis of three-dimensional atom probe tomography (APT) data holds the promise of relating combinatorial arrangement of atoms to material properties and enable better design and synthesis of complex materials. Existing techniques, which are serial and require O(n2) work for n atoms, do not scale to the hundred million large data sets produced by current generation atom probe microscopes. In this paper, we present an O(n) work autocorrelation based technique that reveals clustering of constituent atoms and spatial associations between them. We present an efficient parallelization of this method and show scaling on a 1,024 node Blue Gene/L. To our knowledge, this is the first parallel algorithm for the analysis of APT data, and together with our linear work autocorrelation technique, is demonstrated to easily scale to billion atom data sets expected in the very near future. Sudip K. Seal, Michael Moody, Anna Ceguerra, Simon P. Ringer, Krishna Rajan, Srinivas Aluru |
ICPP | 6 |
| 2008 | Parallel biological sequence alignments on the Cell Broadband EngineabstractSequence alignment and its many variants are a fundamental tool in computational biology. There is considerable recent interest in using the cell broadband engine, a heterogenous multi-core chip that provides high performance, for biological applications. However, work so far has been limited to computing optimal alignment scores using quadratic space under the basic global/local alignment algorithm. In this paper, we present a comprehensive study of developing sequence alignment algorithms on the Cell exploiting its thread and data level parallelism features. First, we develop a cell implementation that computes optimal alignments and adopts Hirschberg's linear space technique. The former is essential as merely computing optimal alignment scores is not useful while the latter is needed to permit alignments of longer sequences. We then present cell implementations of two advanced alignment techniques - spliced alignments and syntenic alignments. In a spliced alignment, consecutive non-overlapping portions of a sequence align with ordered non-overlapping, but non-consecutive portions of another sequence. Spliced alignments are useful in aligning mRNA sequences with corresponding genomic sequences to uncover gene structure. Syntenic alignments are used to discover conserved exons and other sequences between long genomic sequences from different organisms. We present experimental results for these three types of alignments on the Cell BE and report speedups of about 4 on six SPUs on the Playstation 3, when compared to the respective best serial algorithms on the Cell BE and the Pentium 4 processor. Abhinav Sarje, Srinivas Aluru |
IPDPS | 2 |
| 2008 | High-performance computational biology
David A. Bader, Srinivas Aluru |
Parallel Comput. | 2 |
| 2008 | Consensus Genetic Maps as Median Orders from Inconsistent SourcesabstractA genetic map is an ordering of genetic markers calculated from a population of known lineage. While traditionally a map has been generated from a single population for each species, recently researchers have created maps from multiple populations. In the face of these new data, we address the need to find a consensus map--a map that combines the information from multiple partial and possibly inconsistent input maps. We model each input map as a partial order and formulate the consensus problem as finding a median partial order. Finding the median of multiple total orders (preferences or rankings)is a well studied problem in social choice. We choose to find the median using the weighted symmetric difference distance, a more general version of both the symmetric difference distance and the Kemeny distance. Finding a median order using this distance is NP-hard. We show that for our chosen weight assignment, a median order satisfies the positive responsiveness, extended Condorcet,and unanimity criteria. Our solution involves finding the maximum acyclic subgraph of a weighted directed graph. We present a method that dynamically switches between an exact branch and bound algorithm and a heuristic algorithm, and show that for real data from closely related organisms, an exact median can often be found. We present experimental results using seven populations of the crop plant Zea mays. Benjamin G. Jackson, Patrick S. Schnable, Srinivas Aluru |
IEEE ACM Trans. Comput. Biol. Bioinform. | 3 |
| 2007 | The Combinatorics of Sequencing the Corn Genome
Srinivas Aluru |
COCOON | 1 |
| 2007 | Symposium Evening Tutorial: High-performance Computing Methods for Computational GenomicsabstractAs biomolecular sequence data continue to be amassed at unprecedented rates, the design of effective computational methods and capabilities that can derive biologically significant information from them has become both increasingly challenging and imperative. In this tutorial, the audience will be first introduced to the different types of biomolecular sequence data and the wealth of information they encode. Following this technical grounding, high-performance computing approaches developed to address some of the most computationally challenging problems in genomics will be described. The contents will be presented in three parts: (i) In the first part, we will describe methods that were designed to query a sequence against a large sequence database. Two popular parallel approaches, mpiBLAST and ScalaBLAST, implementing the NCBI BLAST suite of programs will be described. (ii) Next, we will describe PaCE, which is a parallel DNA sequence clustering algorithm. As direct applications, we will discuss the clustering of large-scale Expressed Sequence Tag data and the assembly of complex genomes. (iii) Finally, we describe GRAPPA, which is a high-performance software suite developed for phylogenetic reconstruction of a collection of genomes or genes. Throughout the tutorial, emphasis will be on both scalability and effectiveness in exploiting large-scale state-of-the-art supercomputing technologies. The intended audience are academic and industry researchers, educators, and/or commercial application developers, with a computational background. No background in biology is assumed. Srinivas Aluru, David A. Bader, Anantharaman Kalyanaraman |
IPDPS | 1 |
| 2007 | Large-scale maximum likelihood-based phylogenetic analysis on the IBM BlueGene/LabstractPhylogenetic inference is a grand challenge in Bioinformatics due to immense computational requirements. The increasing popularity of multi-gene alignments in biological studies, which typically provide a stable topological signal due to a more favorable ratio of the number of base pairs to the number of sequences, coupled with rapid accumulation of sequence data in general, poses new challenges for high performance computing. In this paper, we demonstrate how state-of-the-art Maximum Likelihood (ML) programs can be efficiently scaled to the IBM BlueGene/L (BG/L) architecture, by porting RAxML, which is currently among the fastest and most accurate programs for phylogenetic inference under the ML criterion. We simultaneously exploit coarse-grained and fine-grained parallelism that is inherent in every ML-based biological analysis. Performance is assessed using datasets consisting of 212 sequences and 566,470 base pairs, and 2,182 sequences and 51,089 base pairs, respectively. To the best of our knowledge, these are the largest datasets analyzed under ML to date. The capability to analyze such datasets will help to address novel biological questions via phylogenetic analyses. Our experimental results indicate that the fine-grained parallelization scales well up to 1, 024 processors. Moreover, a larger number of processors can be efficiently exploited by a combination of coarse-grained and fine-grained parallelism. Finally, we demonstrate that our parallelization scales equally well on an AMD Opteron cluster with a less favorable network latency to processor speed ratio. We recorded super-linear speedups in several cases due to increased cache efficiency. Michael Ott 0001, Jaroslaw Zola, Alexandros Stamatakis, Srinivas Aluru |
SC | 4 |
| 2007 | Optimal Self-adjusting Trees for Dynamic String Data in Secondary Storage
Pang Ko, Srinivas Aluru |
SPIRE | 2 |
| 2007 | Assembling genomes on large-scale parallel computers
Anantharaman Kalyanaraman, Scott J. Emrich, Patrick S. Schnable, Srinivas Aluru |
J. Parallel Distributed Comput. | 4 |
| 2006 | Obtaining Provably Good Performance from Suffix Trees in Secondary Storage
Pang Ko, Srinivas Aluru |
CPM | 2 |
| 2006 | A Formal Analysis of Space Filling Curves for Parallel Domain DecompositionabstractSpacefilling curves (SFCs) are widely used for parallel domain decomposition in scientific computing applications. The proximity preserving properties of SFCs are expected to keep most accesses local in applications that require efficient access to spatial neighborhoods. While experimental results are used to confirm this behavior, a rigorous mathematical analysis of SFCs turns out to be rather hard and rarely attempted. In this paper, we analyze SFC based parallel domain decomposition for a uniform random spatial distribution in three dimensions. Let n denote the expected number of points and P denote the number of processors. We show that the expected distance along an SFC to a nearest neighbor is O(n2/3). We then consider the problem of answering nearest neighbor and spherical region queries for each point. For P = nalpha(0frac34+alpha/4). This analysis shows that the expected number of total remote accesses is sublinear for any sublinear number of processors. We view the analysis presented here as a step towards the goal of understanding the utility of SFCs in scientific applications and the analysis of more complex spatial distributions Srikanta Tirthapura, Sudip K. Seal, Srinivas Aluru |
ICPP | 3 |
| 2006 | Assembling genomes on large-scale parallel computersabstractAssembly of large genomes from tens of millions of short genomic fragments is computationally demanding requiring hundreds of gigabytes of memory and tens of thousands of CPU hours. New gene-enrichment sequencing strategies are expected to further exacerbate this situation. In this paper, we present a massively parallel genome assembly framework. The unique features of our approach include space-efficient and on-demand algorithms that consume only linear space, and heuristic strategies that reduce the number of expensive pairwise sequence alignments while maintaining assembly quality. As part of the ongoing efforts in maize genome sequencing, we applied our assembly framework to the largest available collection of maize genomic data. We report the partitioning of more than 1.6 million fragments of over 1.25 billion nucleotides total size into genomic islands in 2 hours on 1,024 processors of an IBM BlueGene/L supercomputer. Anantharaman Kalyanaraman, Scott J. Emrich, Patrick S. Schnable, Srinivas Aluru |
IPDPS | 4 |
| 2006 | M11 - High-performance computing methods for computational genomicsabstractThe high computational requirements of several applications in computational genomics are aggravated by an exponential growth in biological databases. This tutorial will provide a detailed introduction to high-performance computing methods designed to address various large-scale problems in computational genomics. First, we will describe mpiBLAST and ScalaBLAST, which are parallelizations of the NCBI BLAST suite of programs used for querying against large sequence databases. Next, we will describe PaCE, which is a parallel DNA sequence clustering algorithm with applications to clustering Expressed Sequence Tags and whole genome assembly. Next, we describe GRAPPA, which is a high-performance software suite developed for phylogenetic reconstruction of a collection of organisms or genes. Throughout the tutorial, emphasis will be on scalability and effectiveness in exploiting large-scale state-of-the-art supercomputing technologies.The intended audience are academic and industry researchers, educators, and/or commercial application developers, with a computational background. No background in biology is assumed. Srinivas Aluru, David A. Bader, Anantharaman Kalyanaraman |
SC | 1 |
| 2006 | Editorial: Special Section on High-Performance Computational BiologyabstractOVER the past decade, computational molecular biology has grown into a mature discipline with a well-defined body of core knowledge, and participation from a large and diverse group of researchers. To keep pace with the explosive growth in research in this field, a number of high quality journals and annual conferences have been established. Many universities are actively building academic programs and research centers and groups in computational biology. As a reflection of the maturing of the field, numerous textbooks on computational biology and its various subtopics have been written in recent years, and undergraduate programs are underway. Despite this progress, computational biology continues to be a vibrant discipline with many outstanding research problems and potential for new avenues of investigation for decades to come. We broadly view high-performance computational biology as the development and application of high-performance computing techniques for extending the reach or scale of investigations in computational biology. A major component of this is the development of parallel and distributed algorithms, and programming environments and systems for aiding biological investigations using highperformance parallel computers, grid computing, and emerging architectures. There is a compelling need for such research given the explosive growth in biological information, the complexity of interactions that underlie many biological processes, and the diversity and interconnectedness of organisms at the molecular level. However, research in high-performance computational biology has not grown as rapidly as computational biology itself. There are subfields of computational biology which have not seen significant influx of ideas from the high-performance computing community. This is perhaps a reflection of the confluence of expertise needed to conduct research in high-performance computational biology, which sets up a barrier to entry for new researchers. Efforts spent in transgressing the barrier are worthwhile given the opportunities for high impact research. By bringing together research in this area as a special section, we hope to provide a resource for IEEE Transactions on Parallel and Distributed Systems (TPDS) readers interested in this field and aid the entry of new researchers into the field. The arguments in favor of a sustained effort in highperformance computational biology are stronger than ever. New high-throughput sequencing machines introduced within the last year, such as those from 454 Life Sciences Inc., have significantly accelerated sequencing capabilities. Using 454 sequencing systems, it is possible to sequence as many as 200,000 short DNA fragments in a 4 hour experiment for a few thousand dollars. These machines are increasingly being used to sample transcriptomes of many organisms. The sequencing of several complex plant genomes is underway starting with maize and sorghum. Similar to large-scale genome sequencing projects, comprehensive gene expression profile measurement projects are underway to conduct large-scale microarray experiments on an organism spanning various organs, diesease/stress induced states, and developmental stages. Forays into personalized medicine, rational drug design, large-scale systems biology, such as the study of protein-protein interaction networks at the whole organism level, understanding evolutionary relationships and building the tree of life, all require processing vast amounts of data or carrying out highly complex computational tasks. In this special section, we showcase some of the recent work in high-performance computational biology. In addition to the open call for papers, authors whose work was published in the 2005 IEEE International Workshop on HighPerformance Computational Biology (HiCOMB, http:// www.hicomb.org) were solicited to submit extended versions of their papers. Each manuscript submitted to the special section was subjected to rigorous, independent peer review by three to four reviewers. We are extremely grateful to all the reviewers who agreed and delivered on providing thoughtful reviews within the time constraints imposed for the special issue. Based on the reviewer suggestions and our own reading of the manuscripts, six manuscripts were selected for publication in the special section. The first paper in this special issue is on a scalable implementation of the widely used BLAST search program for homology detection between a query sequence and a database of known sequences. In “ScalaBLAST: A Scalable Implementation of BLAST for High-Performance DataIntensive Bioinformatics Analysis,” Christopher Oehmen and Jarek Nieplocha report on ScalaBLAST, a high-performance sequence alignment program they developed to enable applications that require thousands to millions of queries to be performed simultaneously. Such queries are used in applications such as multiple genome/proteome comparisons, and in finding genes in newly sequenced genomes. By using a combination of techniques, including target database distribution, exploiting multilevel parallelism, parallel I/Os and latency hiding, the authors achieve a scalable implementation of this ubiquitous search program. IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 17, NO. 8, AUGUST 2006 737 Srinivas Aluru, Nancy M. Amato, David A. Bader |
IEEE Trans. Parallel Distributed Syst. | 1 |
| 2005 | An optimal hierarchical clustering algorithm for gene expression data
Sudip K. Seal, Srikanth Komarina, Srinivas Aluru |
Inf. Process. Lett. | 3 |
| 2005 | Parallel algorithms for tree accumulations
Fatih Erdogan Sevilgen, Srinivas Aluru, Natsuhiko Futamura |
J. Parallel Distributed Comput. | 2 |
| 2005 | Efficient parallel algorithms and software for compressed octrees with applications to hierarchical methods
Bhanu Hariharan, Srinivas Aluru |
Parallel Comput. | 2 |
| 2005 | Scalable, memory efficient, high-speed IP lookup algorithmsabstractOne of the central issues in router performance is IP address lookup based on longest prefix matching. IP address lookup algorithms can be evaluated on a number of metrics-lookup time, update time, memory usage, and to a less important extent, the time to construct the data structure used to support lookups and updates. Many of the existing methods are geared toward optimizing a specific metric, and do not scale well with the ever expanding routing tables and the forthcoming IPv6 where the IP addresses are 128 bits long. In contrast, our effort is directed at simultaneously optimizing multiple metrics and provide solutions that scale to IPv6, with its longer addresses and much larger routing tables. In this paper, we present two IP address lookup schemes-Elevator-Stairs algorithm and logW-Elevators algorithm. For a routing table with N prefixes, The Elevator-Stairs algorithm uses optimal O(N) memory, and achieves better lookup and update times than other methods with similar memory requirements. The logW-Elevators algorithm gives O(logW) lookup time, where W is the length of an IP address, while improving upon update time and memory usage. Experimental results using the MAE-West router with 29 487 prefixes show that the Elevator-Stairs algorithm gives an average throughput of 15.7 Million lookups per second (Mlps) using 459KB of memory, and the logW-Elevators algorithm gives an average throughput of 21.41Mlps with a memory usage of 1259KB. Rama Sangireddy, Natsuhiko Futamura, Srinivas Aluru, Arun K. Somani |
IEEE/ACM Trans. Netw. | 3 |
| 2004 | A strategy for assembling the maize (Zea mays L.) genomeabstractUNLABELLED: Because the bulk of the maize (Zea mays L.) genome consists of repetitive sequences, sequencing efforts are being targeted to its 'gene-rich' fraction. Traditional assembly programs are inadequate for this approach because they are optimized for a uniform sampling of the genome and inherently lack the ability to differentiate highly similar paralogs. RESULTS: We report the development of bioinformatics tools for the accurate assembly of the maize genome. This software, which is based on innovative parallel algorithms to ensure scalability, assembled 730,974 genomic survey sequences fragments in 4 h using 64 Pentium III 1.26 GHz processors of a commodity cluster. Algorithmic innovations are used to reduce the number of pairwise alignments significantly without sacrificing quality. Clone pair information was used to estimate the error rate for improved differentiation of polymorphisms versus sequencing errors. The assembly was also used to evaluate the effectiveness of various filtering strategies and thereby provide information that can be used to focus subsequent sequencing efforts. Scott J. Emrich, Srinivas Aluru, Tsui-Jung Wen, Mahesh Narayanan, Dan Ashlock, Patrick S. Schnable |
Bioinform. | 2 |
| 2004 | Special Issue: High Performance Computational Biology
David A. Bader, Srinivas Aluru |
Concurr. Pract. Exp. | 2 |
| 2004 | Space and Time Optimal Parallel Sequence AlignmentsabstractWe present the first space and time optimal parallel algorithm for the pairwise sequence alignment problem, a fundamental problem in computational biology. This problem can be solved sequentially in O(mn) time and O(m+n) space, where m and n are the lengths of the sequences to be aligned. The fastest known parallel space-optimal algorithm for pairwise sequence alignment takes optimal O(m+n/p) space, but suboptimal O((m+n)/sup 2//p) time, where p is the number of processors. On the other hand, the most space economical time-optimal parallel algorithm takes O(mn/p) time, but O(m+n/p) space. We close this gap by presenting an algorithm that achieves both time and space optimality, i.e. requires only O((m+n)/p) space and O(mn/p) time. We also present an experimental evaluation of the proposed algorithm on an IBM xSeries cluster. Although presented in the context of full sequence alignments, our algorithm is applicable to other alignment problems in computational biology including local alignments and syntenic alignments. It is also a useful addition to the range of techniques available for parallel dynamic programming. Stjepan Rajko, Srinivas Aluru |
IEEE Trans. Parallel Distributed Syst. | 2 |
| 2003 | Space Efficient Linear Time Construction of Suffix Arrays
Pang Ko, Srinivas Aluru |
CPM | 2 |
| 2003 | Scalable, memory efficient, high-speed lookup and update algorithms for IP routingabstractIP address lookup algorithms can be evaluated on a number of metrics lookup time, update time, memory usage, and to a lesser extent, the time to construct the data structure used to support lookups and updates. Many of the existing methods are geared towards optimizing a specific metric, and hence do not scale well with the ever expanding routing tables and the forthcoming IPv6 with 128 bit long IP address. In contrast, our effort is directed at simultaneously optimizing multiple metrics and provide solutions that scale well to IPv6. In this paper, we present two IP address lookup schemes Elevator - Stairs algorithm and logW - Elevators algorithm. For a routing table with N prefixes, The Elevator - Stairs algorithm uses optimal O(N) memory, and achieves better lookup and update times than other methods with similar memory requirements. The logW - Elevators algorithm gives O(log W) lookup time, where W is the length of an IP address, while improving upon update time and memory usage. Experimental results using the MAE-West router with 29,487 prefixes show that the Elevator - Stairs algorithm gives an average throughput of 15.7 Million lookups per second (Mlps) using 459 KB of memory, and the logW - Elevators algorithm gives an average throughput of 21.41 Mlps with a memory usage of 1259 KB. Natsuhiko Futamura, Rama Sangireddy, Srinivas Aluru, Arun K. Somani |
ICCCN | 3 |
| 2003 | Space and Time Optimal Parallel Sequence AlignmentsabstractWe present the first space and time optimal parallel algorithm for the pairwise sequence alignment problem, a fundamental problem in computational biology. This problem can be solved sequentially in O(mn) time and O(m+n) space, where m and n are the lengths of the sequences to be aligned. The fastest known parallel space-optimal algorithm for pairwise sequence alignment takes optimal O(m+n/p) space but suboptimal O((m+n)2/p) time, where p is the number of processors. On the other hand, the most space economical time-optimal parallel algorithm takes O(mn/p) time but O(m+n/p) space. We close this gap by presenting an algorithm that achieves both time and space optimality, i.e. requires only O(m+n/p) space and O(mn/p) time. We also present an experimental evaluation of the proposed algorithm on an IBMxSeries cluster Stjepan Rajko, Srinivas Aluru |
ICPP | 2 |
| 2003 | Guest Editor's Introduction: Special issue on high-performance computational biology
Srinivas Aluru, David A. Bader |
J. Parallel Distributed Comput. | 1 |
| 2003 | Parallel biological sequence comparison using prefix computations
Srinivas Aluru, Natsuhiko Futamura, Kishan G. Mehrotra |
J. Parallel Distributed Comput. | 1 |
| 2003 | Space and time efficient parallel algorithms and software for EST clusteringabstractExpressed sequence tags, abbreviated as ESTs, are DNA molecules experimentally derived from expressed portions of genes. Clustering of ESTs is essential for gene recognition and for understanding important genetic variations such as those resulting in diseases. We present the algorithmic foundations and implementation of PaCE, a parallel software system we developed for large-scale EST clustering. The novel features of our approach include 1) design of space-efficient algorithms to limit the space required to linear in the size of the input data set, 2) a combination of algorithmic techniques to reduce the total work without sacrificing the quality of EST clustering, and 3) use of parallel processing to reduce runtime and facilitate clustering of large data sets. Using a combination of these techniques, we report the clustering of 327,632 rat ESTs in 47 minutes, and 420,694 Triticum aestivum ESTs in 3 hours and 15 minutes, using a 60-processor IBM xSeries cluster. These problems are well beyond the capabilities of state-of-the-art sequential software. We also present thorough experimental evaluation of our software including quality assessment using benchmark Arabidopsis EST data. Anantharaman Kalyanaraman, Srinivas Aluru, Volker Brendel, Suresh C. Kothari |
IEEE Trans. Parallel Distributed Syst. | 2 |
| 2002 | Mixed Mode Matrix MultiplicationabstractIn modern clustering environments where the memory hierarchy has many layers (distributed memory, shared memory layer, cache, ...), an important question is how to fully utilize all available resources and identify the most dominant layer in certain computation. When combining algorithms on all layers together, what would be the best method to get the best performance out of all the resources we have? The mixed mode programming model that uses thread programming on the shared memory layer and message passing programming on the distributed memory layer is a method that many researchers are using to utilize the memory resources. We take an algorithmic approach that uses matrix multiplication as a tool to show how cache algorithms affect the performance of both shared memory and distributed memory algorithms. We show that with good underlying cache algorithm, overall performance is stable. When the underlying cache algorithm is bad, superlinear speedup may occur and increasing number of threads may also improve performance. Meng-Shiou Wu, Srinivas Aluru, Ricky A. Kendall |
CLUSTER | 2 |
| 2002 | Parallel Syntenic Alignments
Natsuhiko Futamura, Srinivas Aluru, Xiaoqiu Huang 0001 |
HiPC | 2 |
| 2002 | Space and Time Efficient Parallel Algorithms and Software for EST ClusteringabstractExpressed sequence tags, ESTs, are DNA molecules experimentally derived from expressed portions of genes. Clustering of ESTs is essential for gene recognition and understanding important genetic variations such as those resulting in diseases. In this paper, we present the design and development of a parallel software system for EST clustering. To our knowledge, this is the first such effort to address the problem of EST clustering in parallel. The novel features of our approach include 1) design of space efficient algorithms to keep the space requirement linear in the size of the input data set, 2) a combination of algorithmic techniques to reduce the total work without sacrificing the quality of EST clustering, and 3) use of parallel processing to reduce the run-time and facilitate the clustering of large datasets. Using a combination of these techniques, we report the clustering of 81,414 Arabidopsis ESTs in under 2.5 minutes on a 64-processor IBM SP, a problem that is estimated to take 9 hours of run-time with a state-of-the-art software, provided the memory required to run the software can be made available. Anantharaman Kalyanaraman, Srinivas Aluru, Suresh C. Kothari |
ICPP | 2 |
| 2002 | A scalable parallel fast multipole method for analysis of scattering from perfect electrically conducting surfacesabstractIn this paper, we develop a parallel Fast Multipole Method (FMM) based solution for computing the scattered electromagnetic fields from a Perfect Electrically Conducting (PEC) surface. The main contributions of this work are the development of parallel algorithms with the following characteristics: 1) provably efficient worst-case run-time irrespective of the shape of the scatterer, 2) communication-efficiency, and 3) guaranteed load balancing within a small constant factor. We have developed a scalable, parallel code and validated it against surfaces for which solution can be computed analytically, and against serial software. The efficiency and scalability of the code is demonstrated with experimental results on an IBM xSeries cluster. Though developed in the context of this particular application, our algorithms can be used in other applications involving parallel FMM. Bhanu Hariharan, Srinivas Aluru, Balasubramaniam Shanker |
SC | 2 |
| 2002 | Efficient Parallel Algorithms for Solvent Accessible Surface Area of ProteinsabstractWe present faster sequential and parallel algorithms for computing the solvent accessible surface area (ASA) of protein molecules. The ASA is computed by finding the exposed surface areas of the spheres obtained by increasing the van der Waals radii of the atoms with the van der Waals radius of the solvent. Using domain specific knowledge, we show that the number of sphere intersections is only O(n), where n is the number of atoms in the protein molecule. For computing sphere intersections, we present hash-based algorithms that run in O(n) expected sequential time and O(n/p) expected parallel time and sort-based algorithms that run in worst-case O(n log n) sequential time and O(n log n/p) parallel time. These are significant improvements over previously known algorithms which take O(n/sup 2/) time sequentially and O(n/sup 2//p) time in parallel. We present a Monte Carlo algorithm for computing the solvent accessible surface area. The basic idea is to generate points uniformly at random on the surface of spheres obtained by increasing the van der Waals radii of the atoms with the van der Waals radius of the solvent molecule and to test the points for accessibility. We also provide error bounds as a function of the sample size. Experimental verification of the algorithms is carried out using an IBM SP-2. Natsuhiko Futamura, Srinivas Aluru, Desh Ranjan, Bhanu Hariharan |
IEEE Trans. Parallel Distributed Syst. | 2 |
| 2001 | Efficient Parallel Algorithms and Software for Compressed Octrees with Applications to Hierarchical Methods
Bhanu Hariharan, Srinivas Aluru |
HiPC | 2 |
| 2000 | A Provably Optimal, Distribution-Independent Parallel Fast Multipole MethodabstractThe Fast Multipole Method (FMM) is a robust technique for the rapid evaluation of the combined effect of pairwise interactions of n data sources. Parallel computation of the FMM is considered a challenging problem due to the dependence of the computation on the distribution of the data sources, usually resulting in dynamic data decomposition and load balancing problems. In this paper, we present the first provably efficient and distribution-independent parallel algorithm for the FMM on distributed memory parallel computers. Our algorithm does not require any dynamic data decomposition or load balancing step. We present our algorithm in terms of a few basic and well understood primitive operations such as sorting and parallel prefix. Fatih Erdogan Sevilgen, Natsuhiko Futamura, Srinivas Aluru |
IPDPS | 3 |
| 2000 | Parallel Construction of Multidimensional Binary Search TreesabstractMultidimensional binary search tree (abbreviated k-d tree) is a popular data structure for the organization and manipulation of spatial data. The data structure is useful in several applications including graph partitioning, hierarchical applications such as molecular dynamics and n-body simulations, and databases. In this paper, we study efficient parallel construction of k-d trees on coarse-grained distributed memory parallel computers. We consider several algorithms for parallel k-d tree construction and analyze them theoretically and experimentally, with a view towards identifying the algorithms that are practically efficient. We have carried out detailed implementations of all the algorithms discussed on the CM-5 and report on experimental results. Ibraheem Al-Furaih, Srinivas Aluru, Sanjay Goil, Sanjay Ranka |
IEEE Trans. Parallel Distributed Syst. | 2 |
| 1999 | Dynamic Compressed Hypertoctrees with Application to the N-Body Problem
Srinivas Aluru, Fatih Erdogan Sevilgen |
FSTTCS | 1 |
| 1999 | A Parallel Monte Carlo Algorithm for Protein Accessible Surface Area Computation
Srinivas Aluru, Desh Ranjan, Natsuhiko Futamura |
HiPC | 1 |
| 1999 | A Unifying Data Structure for Hierarchical MethodsabstractWe present a data structure for supporting the access patterns required by most scientific applications that employ hierarchical methods. The data structure, termed the Distribution Independent Adaptive Tree, efficiently supports both grid-based and particle-based methods. We present efficient algorithms for most access patterns encountered in such applications: particle insertion/deletion/splitting, grid cell insertion/deletion, nearest neighbor queries, spherical region queries and computing long-range interactions. Apart from being an efficient data structure for an individual hierarchical method, the data structure is useful in applications that involve simultaneous application of multiple methods. Fatih Erdogan Sevilgen, Srinivas Aluru |
SC | 2 |
| 1998 | Distribution-Independent Hierarchical Algorithms for the N-body Problem
Srinivas Aluru, John L. Gustafson, Gurpur M. Prabhu, Fatih Erdogan Sevilgen |
J. Supercomput. | 1 |
| 1997 | Parallel domain decomposition and load balancing using space-filling curvesabstractPartitioning techniques based on space filling curves have received much recent attention due to their low running time and good load balance characteristics. The basic idea underlying these methods is to order the multidimensional data according to a space filling curve and partition the resulting one dimensional order. However, space filling curves are defined for points that lie on a uniform grid of a particular resolution. It is typically assumed that the coordinates of the points are representable using a fixed number of bits, and the run times of the algorithms depend upon the number of bits used. We present a simple and efficient technique for ordering arbitrary and dynamic multidimensional data using space filling curves and its application to parallel domain decomposition and load balancing. Our technique is based on a comparison routine that determines the relative position of two points in the order induced by a space filling curve. The comparison routine could then be used in conjunction with any parallel sorting algorithm to effect parallel domain decomposition. Srinivas Aluru, Fatih Erdogan Sevilgen |
HiPC | 1 |
| 1997 | Lagged Fibonacci Random Number Generators for Distributed Memory Parallel Computers
Srinivas Aluru |
J. Parallel Distributed Comput. | 1 |
| 1997 | Practical Algorithms for Selection on Coarse-Grained Parallel ComputersabstractIn this paper, we consider the problem of selection on coarse-grained distributed memory parallel computers. We discuss several deterministic and randomized algorithms for parallel selection. We also consider several algorithms for load balancing needed to keep a balanced distribution of data across processors during the execution of the selection algorithms. We have carried out detailed implementations of all the algorithms discussed on the CM-5 and report on the experimental results. The results clearly demonstrate the role of randomization in reducing communication overhead. Ibraheem Al-Furaih, Srinivas Aluru, Sanjay Goil, Sanjay Ranka |
IEEE Trans. Parallel Distributed Syst. | 2 |
| 1996 | Parallel Construction of Multidimensional Binary Search TreesabstractMultidimensionalbinary search tree (abbreviated k-d tree) is a popular data structure for the organization and manipulation of spatial data.In this paper, we present several algorithms for the parallel construction of k-d trees on coarse-grained distributed memory parallel computers and analyze them theoretically and experimentally.We report experimental results on the CM-5. Ibraheem Al-Furaih, Srinivas Aluru, Sanjay Goil, Sanjay Ranka |
International Conference on Supercomputing | 2 |
| 1996 | Parallel Additive Lagged Fibonacci Random Number Generators
Srinivas Aluru |
International Conference on Supercomputing | 1 |
| 1995 | Properties of Binomial Coefficients and Implications to Parallelizing Lagged Fibonacci Random Number Generators
Srinivas Aluru |
ICPP (3) | 1 |
| 1994 | Truly distribution-independent algorithms for the N-body problemabstractThe N-body problem is to simulate the motion of N particles under the influence of mutual force fields based on an inverse square law. Greengard's algorithm claims to compute the cumulative force on each particle in O(N) time for a fixed precision irrespective of the distribution of the particles. In this paper, we show that Greengard's algorithm is distribution dependent and has a lower bound of /spl Omega/(N log/sup 2/ N) in two dimensions and /spl Omega/(N log/sup 4/ N) in three dimensions. We analyze the Greengard and Barnes-Hut algorithms and show that they are unbounded for arbitrary distributions. We also present a truly distribution independent algorithm for solving the N-body problem in O(N log N) time in two dimensions and in O(N log/sup 2/ N) time in three dimensions.> Srinivas Aluru, Gurpur M. Prabhu, John L. Gustafson |
SC | 1 |
| 1993 | A Massively Parallel Optimizer for Expression EvaluationabstractA number of “tricks” are known that trade multiplications for additions. The term “tricks” reflects the way these methods seem not to proceed from any general theory, but instead jump into existence as recipes that work. The Strassen method for 2 by 2 matrix product with 7 multiplications is a well-known example, as is the method for finding a complex number product in 3 multiplications. We have created a practical computer program for finding such tricks automatically, where massive parallelism makes the combinatorially explosive search tolerable for small problems. One result of this program is a method for computing cross products of 3-vectors using only 5 multiplications. Srinivas Aluru, John L. Gustafson |
International Conference on Supercomputing | 1 |
| 1992 | A random number generator for parallel computers
Srinivas Aluru, Gurpur M. Prabhu, John L. Gustafson |
Parallel Comput. | 1 |