PLoS ONE (Jan 2013)

GRAPES: a software for parallel searching on biological graphs targeting multi-core architectures.

  • Rosalba Giugno,
  • Vincenzo Bonnici,
  • Nicola Bombieri,
  • Alfredo Pulvirenti,
  • Alfredo Ferro,
  • Dennis Shasha

DOI
https://doi.org/10.1371/journal.pone.0076911
Journal volume & issue
Vol. 8, no. 10
p. e76911

Abstract

Read online

Biological applications, from genomics to ecology, deal with graphs that represents the structure of interactions. Analyzing such data requires searching for subgraphs in collections of graphs. This task is computationally expensive. Even though multicore architectures, from commodity computers to more advanced symmetric multiprocessing (SMP), offer scalable computing power, currently published software implementations for indexing and graph matching are fundamentally sequential. As a consequence, such software implementations (i) do not fully exploit available parallel computing power and (ii) they do not scale with respect to the size of graphs in the database. We present GRAPES, software for parallel searching on databases of large biological graphs. GRAPES implements a parallel version of well-established graph searching algorithms, and introduces new strategies which naturally lead to a faster parallel searching system especially for large graphs. GRAPES decomposes graphs into subcomponents that can be efficiently searched in parallel. We show the performance of GRAPES on representative biological datasets containing antiviral chemical compounds, DNA, RNA, proteins, protein contact maps and protein interactions networks.