Parallelization and optimization of a CBVIR system on multi-core architectures

Technique advances have made image capture and storage very convenient, which results in an explosion of the amount of visual information. It becomes difficult to find useful information from these tremendous data. Content-based Visual Information Retrieval (CBVIR) is emerging as one of the best solutions to this problem. Unfortunately, CBVIR is a very compute-intensive task. Nowadays, with the boom of multi-core processors, CBVIR can be accelerated by exploiting multi-core processing capability. In this paper, we propose a parallelization implementation of a CBVIR system facing to server application and use some serial and parallel optimization techniques to improve its performance on an 8-core and on a 16-core systems. Experimental results show that optimized implementation can achieve very fast retrieval on the two multi-core systems.We also compare the performance of the application on the two multi-core systems and give an explanation of the performance difference between the two systems. Furthermore, we conduct detailed scalability and memory performance analysis to identify possible bottlenecks in the application. Based on these experimental results and performance analysis, we gain many insights into developing efficient applications on future multi-core architectures.

[1]  Antonin Guttman,et al.  R-trees: a dynamic index structure for spatial searching , 1984, SIGMOD '84.

[2]  Lixia Liu,et al.  Analyzing memory access intensity in parallel programs on multicore , 2008, ICS '08.

[3]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .

[4]  John F. Canny,et al.  A Computational Approach to Edge Detection , 1986, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[5]  Nozha Boujemaa,et al.  Surfimage: a flexible content-based image retrieval system , 1998, MULTIMEDIA '98.

[6]  Matthias Bo Stuart,et al.  Parallelism and Scalability in an Image Processing Application , 2009, International Journal of Parallel Programming.

[7]  Irwin King,et al.  Distributed content-based visual information retrieval system on peer-to-peer networks , 2004, TOIS.

[8]  Shih-Fu Chang,et al.  VisualSEEk: a fully automated content-based image query system , 1997, MULTIMEDIA '96.

[9]  T M Lehmann,et al.  Content-based Image Retrieval in Medical Applications , 2004, Methods of Information in Medicine.

[10]  Donald F. Towsley,et al.  The effectiveness of affinity-based scheduling in multiprocessor network protocol processing (extended version) , 1996, TNET.

[11]  Tai Sing Lee,et al.  Image Representation Using 2D Gabor Wavelets , 1996, IEEE Trans. Pattern Anal. Mach. Intell..

[12]  Luis Pastor,et al.  Parallel CBIR implementations with load balancing algorithms , 2006, J. Parallel Distributed Comput..

[13]  Jon Louis Bentley,et al.  K-d trees for semidynamic point sets , 1990, SCG '90.

[14]  Lai-Man Po,et al.  Web-based Beowulf-Class parallel computing on image database indexing and retrieval system , 2001, Proceedings of 2001 International Symposium on Intelligent Multimedia, Video and Speech Processing. ISIMP 2001 (IEEE Cat. No.01EX489).

[15]  Heng Tao Shen,et al.  Principal Component Analysis , 2009, Encyclopedia of Biometrics.

[16]  James Ze Wang,et al.  Image retrieval: Ideas, influences, and trends of the new age , 2008, CSUR.

[17]  Dragutin Petkovic,et al.  Query by Image and Video Content: The QBIC System , 1995, Computer.

[18]  Hermann Ney,et al.  Shared-memory parallelization for content-based image retrieval , 2006 .

[19]  Nicu Sebe,et al.  Content-based multimedia information retrieval: State of the art and challenges , 2006, TOMCCAP.

[20]  Dong Wang,et al.  THU and ICRC at TRECVID 2007 , 2007, TRECVID.

[21]  Qi Zhang,et al.  Parallelization and Performance Analysis of Video Feature Extractions on Multi-Core Based Systems , 2007, 2007 International Conference on Parallel Processing (ICPP 2007).