Analysis and Parallelization of JPEG-2000 Reference Software for General-Purpose Processors

Like many other multimedia applications, image compression involves a significant amount of data processing for coding images. Sophisticated general-purpose processors with parallel architectures and advanced cache systems can be dedicated to enhancing performance for serial multimedia applications...

Full description

Bibliographic Details
Main Author: FAN, BO
Other Authors: Queen's University (Kingston, Ont.). Theses (Queen's University (Kingston, Ont.))
Language:en
en
Published: 2011
Subjects:
Online Access:http://hdl.handle.net/1974/6855
id ndltd-LACETR-oai-collectionscanada.gc.ca-OKQ.1974-6855
record_format oai_dc
spelling ndltd-LACETR-oai-collectionscanada.gc.ca-OKQ.1974-68552013-12-20T03:40:29ZAnalysis and Parallelization of JPEG-2000 Reference Software for General-Purpose ProcessorsFAN, BOImage processingParallel ProcessingLike many other multimedia applications, image compression involves a significant amount of data processing for coding images. Sophisticated general-purpose processors with parallel architectures and advanced cache systems can be dedicated to enhancing performance for serial multimedia applications through parallelization. This thesis describes parallelization of the JasPer reference software for the JPEG-2000 image compression standard and presents results from simulation, and from hardware execution on a multicore processor where speedups of more than 2 are obtained with 4 processors. Results from execution and cache behavior analysis are presented to establish the expected speedup and to further characterize JasPer execution. The JasPer encoding process has been analyzed on a single processor for both simulated and hardware execution in order to obtain more insights into application behavior. On recent hardware platforms, the significant contributors to the total execution time have been identified through profiling. The granularity of parallelism for parallelizable loops have been analyzed for execution on real hardware. Cache behavior and memory access pattern have been studied closely for the simulated execution. To facilitate parallelization, selected parallelizable loops have been transformed in order to assist the partitioning of loop iterations for parallel execution and to increase workload granularity and reduce synchronization overhead. These modifications include loop index and body transformation, and loop fusion. A memory access pattern tracking feature has also been introduced for serial and parallel execution of a program in simulation. This feature tracks the number of memory accesses in a particular data region during a particular interval of time in order to gain additional insights into execution behavior. The multithreaded execution of the parallelized JasPer encoder presents a relatively balanced workload which indicates a reasonable efficiency for parallel execution. The generated images have been compared against their original images by using analytical tools to ensure the image quality and to verify correctness.Thesis (Master, Electrical & Computer Engineering) -- Queen's University, 2011-10-29 00:10:43.437Queen's University (Kingston, Ont.). Theses (Queen's University (Kingston, Ont.))2011-10-29 00:10:43.4372011-11-02T21:11:10Z2011-11-02T21:11:10Z2011-11-02Thesishttp://hdl.handle.net/1974/6855enenCanadian thesesThis publication is made available by the authority of the copyright owner solely for the purpose of private study and research and may not be copied or reproduced except as permitted by the copyright laws without written authority from the copyright owner.
collection NDLTD
language en
en
sources NDLTD
topic Image processing
Parallel Processing
spellingShingle Image processing
Parallel Processing
FAN, BO
Analysis and Parallelization of JPEG-2000 Reference Software for General-Purpose Processors
description Like many other multimedia applications, image compression involves a significant amount of data processing for coding images. Sophisticated general-purpose processors with parallel architectures and advanced cache systems can be dedicated to enhancing performance for serial multimedia applications through parallelization. This thesis describes parallelization of the JasPer reference software for the JPEG-2000 image compression standard and presents results from simulation, and from hardware execution on a multicore processor where speedups of more than 2 are obtained with 4 processors. Results from execution and cache behavior analysis are presented to establish the expected speedup and to further characterize JasPer execution. The JasPer encoding process has been analyzed on a single processor for both simulated and hardware execution in order to obtain more insights into application behavior. On recent hardware platforms, the significant contributors to the total execution time have been identified through profiling. The granularity of parallelism for parallelizable loops have been analyzed for execution on real hardware. Cache behavior and memory access pattern have been studied closely for the simulated execution. To facilitate parallelization, selected parallelizable loops have been transformed in order to assist the partitioning of loop iterations for parallel execution and to increase workload granularity and reduce synchronization overhead. These modifications include loop index and body transformation, and loop fusion. A memory access pattern tracking feature has also been introduced for serial and parallel execution of a program in simulation. This feature tracks the number of memory accesses in a particular data region during a particular interval of time in order to gain additional insights into execution behavior. The multithreaded execution of the parallelized JasPer encoder presents a relatively balanced workload which indicates a reasonable efficiency for parallel execution. The generated images have been compared against their original images by using analytical tools to ensure the image quality and to verify correctness. === Thesis (Master, Electrical & Computer Engineering) -- Queen's University, 2011-10-29 00:10:43.437
author2 Queen's University (Kingston, Ont.). Theses (Queen's University (Kingston, Ont.))
author_facet Queen's University (Kingston, Ont.). Theses (Queen's University (Kingston, Ont.))
FAN, BO
author FAN, BO
author_sort FAN, BO
title Analysis and Parallelization of JPEG-2000 Reference Software for General-Purpose Processors
title_short Analysis and Parallelization of JPEG-2000 Reference Software for General-Purpose Processors
title_full Analysis and Parallelization of JPEG-2000 Reference Software for General-Purpose Processors
title_fullStr Analysis and Parallelization of JPEG-2000 Reference Software for General-Purpose Processors
title_full_unstemmed Analysis and Parallelization of JPEG-2000 Reference Software for General-Purpose Processors
title_sort analysis and parallelization of jpeg-2000 reference software for general-purpose processors
publishDate 2011
url http://hdl.handle.net/1974/6855
work_keys_str_mv AT fanbo analysisandparallelizationofjpeg2000referencesoftwareforgeneralpurposeprocessors
_version_ 1716621359873785856