Cargando…

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

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 Si...

Descripción completa

Detalles Bibliográficos
Autores principales: Chaichoompu, Kridsadakorn, Kittitornkun, Surin, Tongsima, Sissades
Formato: Texto
Lenguaje:English
Publicado: Biomedical Informatics Publishing Group 2007
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2241925/
https://www.ncbi.nlm.nih.gov/pubmed/18305826
_version_ 1782150557994057728
author Chaichoompu, Kridsadakorn
Kittitornkun, Surin
Tongsima, Sissades
author_facet Chaichoompu, Kridsadakorn
Kittitornkun, Surin
Tongsima, Sissades
author_sort Chaichoompu, Kridsadakorn
collection PubMed
description 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.
format Text
id pubmed-2241925
institution National Center for Biotechnology Information
language English
publishDate 2007
publisher Biomedical Informatics Publishing Group
record_format MEDLINE/PubMed
spelling pubmed-22419252008-02-27 Speedup bioinformatics applications on multicore-based processor using vectorizing and multithreading strategies Chaichoompu, Kridsadakorn Kittitornkun, Surin Tongsima, Sissades Bioinformation Views & Challenges 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. Biomedical Informatics Publishing Group 2007-12-30 /pmc/articles/PMC2241925/ /pubmed/18305826 Text en © 2007 Biomedical Informatics Publishing Group 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.
spellingShingle Views & Challenges
Chaichoompu, Kridsadakorn
Kittitornkun, Surin
Tongsima, Sissades
Speedup bioinformatics applications on multicore-based processor using vectorizing and multithreading strategies
title Speedup bioinformatics applications on multicore-based processor using vectorizing and multithreading strategies
title_full Speedup bioinformatics applications on multicore-based processor using vectorizing and multithreading strategies
title_fullStr Speedup bioinformatics applications on multicore-based processor using vectorizing and multithreading strategies
title_full_unstemmed Speedup bioinformatics applications on multicore-based processor using vectorizing and multithreading strategies
title_short Speedup bioinformatics applications on multicore-based processor using vectorizing and multithreading strategies
title_sort speedup bioinformatics applications on multicore-based processor using vectorizing and multithreading strategies
topic Views & Challenges
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2241925/
https://www.ncbi.nlm.nih.gov/pubmed/18305826
work_keys_str_mv AT chaichoompukridsadakorn speedupbioinformaticsapplicationsonmulticorebasedprocessorusingvectorizingandmultithreadingstrategies
AT kittitornkunsurin speedupbioinformaticsapplicationsonmulticorebasedprocessorusingvectorizingandmultithreadingstrategies
AT tongsimasissades speedupbioinformaticsapplicationsonmulticorebasedprocessorusingvectorizingandmultithreadingstrategies