Beyond Bioinformatics

 

         

 
 
 
 

Previous

 

 

 

 

Title

 

 

 

 

Speedup bioinformatics applications on multicore-based processor using vectorizing and multithreading strategies

 

Authors

Kridsadakorn Chaichoompu1, Surin Kittitornkun2, Sissades Tongsima1, *

 

Affiliation

1 Genome Institute, National Center for Genetic Engineering and Biotechnology, 113 Thailand Science Park, Paholyothin Road, Klong 1, Klong Luang, Pathumtani 12120, Thailand; 2 Department  of Computer Engineering, Faculty of Engineering, King Mongkut’s Institute of Technology, Ladkrabang, Bangkok 10520, Thailand

 

 

Email

sissades@biotec.or.th; * Corresponding author

 

Article Type

Views & Challenges

 

Date

received December 13, 2007; accepted December 28, 2007; published online December 30, 2007

Abstract

Many computational intensive bioinformatics software, such as multiple sequence alignment, population structure analysis, etc., written in C/C++ are not multicore-aware. A multicore processor is an emerging CPU technology that combines two or more independent processors into a single package. The Single Instruction Multiple Data-stream (SIMD) paradigm is heavily utilized in this class of processors. Nevertheless, most popular compilers including Microsoft Visual C/C++ 6.0, x86 gnu C-compiler gcc do not automatically create SIMD code which can fully utilize the advancement of these processors. To harness the power of the new multicore architecture certain compiler techniques must be considered. This paper presents a generic compiling strategy to assist the compiler in improving the performance of bioinformatics applications written in C/C++. The proposed framework contains 2 main steps: multithreading and vectorizing strategies. After following the strategies, the application can achieve higher speedup by taking the advantage of multicore architecture technology. Due to the extremely fast interconnection networking among multiple cores, it is suggested that the proposed optimization could be more appropriate than making use of parallelization on a small cluster computer which has larger network latency and lower bandwidth.

 

Keywords

multicore processor; vectorization; optimization; speedup

 

Citation

Chaichoompu, et al., Bioinformation 2(5): 182-184 (2007)

 

Edited by

T. W. Tan & S. Ranganathan

ISSN

0973-2063

 

Publisher

Biomedical Informatics Publishing Group

 

Copyright

Publisher

 

Copyright Transfer Agreement

The authors of published articles in Bioinformation automatically transfer the copyright to the publisher upon formal acceptance. However, the authors reserve right to use the information contained in the article for non commercial purposes.

 

License

This is an open-access article, which permits unrestricted use, distribution, and reproduction in any medium, for non-commercial purposes, provided the original author and source are credited.