source: docs/PACT2011/02-background.tex @ 927

Last change on this file since 927 was 927, checked in by lindanl, 8 years ago

Outline for PACT

File size: 2.9 KB
Line 
1\section{Background}
2\label{section:background}
3XML documents tend to be verbose---especially in the case of SOAP and WSDL. Processing these documents typically requires parsing them from a text-based format into an application-specific one.
4Cameron et al.'s work in \cite{CameronHerdyLin2008} shows that both parser selection and markup density have a substantial impact in the computational cost of processing XML documents.
5The foundational work by Bellosa in \cite{bellosa2001} as well as more recent work in \cite {bircher2007, bertran2010} 
6show that hardware-usage patterns has a significant impact in the energy consumption of a particular application;
7\cite{bellosa2001, bircher2007, bertran2010} further show that there is a strong correlation between
8specific performance events and energy usage---but the authors of each differ slightly in opinion as to
9which performance monitoring counters\footnote{Performance monitoring counters (PMCs) are special-purpose registers that are included in most modern microprocessors;
10they store the running count of specific hardware events, such as retired instructions, cache misses, branch mispredictions, and arithmetic-logic unit operations to name a few.
11They can be used to capture information about any program at run-time, under any workload, at a very fine granularity.} (PMCs) to use.
12
13In order to determine how and which performance factors influence energy consumption,
14we intend to use the Fluke i410 current clamp in conjunction with PMCs to compare the per parser invocation and per source XML byte energy usage of three XML parsers:
15Expat 2.0.1, Xerces-C++ 3.1.1 (SAX2), and Parabix2. All three parsers are C/C++ based, event-driven, stream-oriented XML parsers.
16The first two parsers employ traditional byte-at-a-time methods of parsing; these parsers were selected based on their popularity in the marketplace and the availability of source code for deeper analysis.
17The last parser is a high-performance SIMD-based parallel-bitstream XML parser developed by Cameron et al. \cite{CameronHerdyLin2008}.
18The Fluke i410 current clamp is a digital multimeter that reads the magnetic field of a live electrical cable to determine the current passing through it without affecting the underlying hardware.
19
20The results of \cite{CameronHerdyLin2008} showed that Parabix, the predecessor of Parabix2, was dramatically faster than both Expat 2.0.1 and Xerces-C++ 2.8.0.
21It is our expectation is that Parabix2 will outperform both Expat 2.0.1 and Xerces-C++ 3.1.1 in terms of energy consumption per source XML byte.
22This expectation is based on the relatively-branchless code composition of Parabix2 and the more-efficient utilization of last-level cache resources.
23The authors of \cite {bellosa2001, bircher2007, bertran2010} indicate that such factors have a considerable effect on overall energy consumption.
24Hence, one of the foci in our study is the manner in which straight line SIMD code influences energy usage.
25
Note: See TracBrowser for help on using the repository browser.