Changeset 2528


Ignore:
Timestamp:
Oct 20, 2012, 3:57:43 PM (7 years ago)
Author:
ksherdy
Message:

Performance section text.

Location:
docs/Working/icXML
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • docs/Working/icXML/icxml-main.tex

    r2527 r2528  
    4242% \preprintfooter{short description of paper}   % 'preprint' option specified.
    4343
    44 \def \xerces311 {Xerces-C++ 3.1.1}
     44\def \xerces {Xerces-C++ 3.1.1}
    4545\def \icXML {icXML}
    4646\def \icXMLp {icXML-p}
  • docs/Working/icXML/performance.tex

    r2526 r2528  
    1 We evaluate the Xerces C++ 3.1.1, ICXML Xerces C++ XML parser and pipelined
    2 ICXML Xerces C++ against two benchmark applications. Firstly against the Xerces C++ SAXCount
    3 sample application and secondly against a real world
    4 GML to SVG format conversion application implemented against the Xerces C++
    5 DocumentHandler interface. Herein we investigate XML parser performance
    6 evaluated using an Intel Core i7 quad-core
    7 "Sandy Bridge" processor (3.40GHz, 4 physical cores/8 threads,
     1We evaluate \xerces, \icXML, \icXMLp against two benchmarking applications.
     2First, against the Xerces C++ SAXCount
     3sample application, and secondly against a real world
     4GML to SVG transformation application.
     5
     6We investigated XML parser performance
     7using an Intel Core i7 quad-core
     8"Sandy Bridge" processor (3.40GHz, 4 physical cores, 8 threads (2 per core),
    8932+32 Kb (per core) L1 cache,
    910256 Kb (per core) L2 cache,
    10 8 MB L3 cache) and leverage the SSE2 SIMD instructions
    11 available on modern Intel commodity processors.
     118 MB L3 cache) running the 64-bit version of Ubuntu 12.04 (Linux).
    1212
    13 We investigated the execution profiles of each XML parser
     13We analyzed the execution profiles of each XML parser
    1414using the performance counters found in the processor.
    1515We chose several key hardware events that provide insight into the profile of each
     
    1717The set of events included in our study are:
    1818processor cycles, branch instructions, branch mispredictions,
    19 and cache misses.
     19and cache misses. The Performance Application Programming Interface
     20(PAPI) Version 5.5.0 \cite{papi} toolkit
     21was installed on the test system to facilitate the
     22collection of hardware performance monitoring
     23statistics. In addition, we used the Linux perf \cite{perf} utility
     24to collect per core hardware events.
    2025
    2126\subsection{Xerces C++ SAXCount}
    22 
    23 SAXCount is the simplest application that counts the elements, attributes and characters
    24 of a given XML file using the (event based) SAX API.
    25 The SAXCount sample parses an XML file and prints out the counts.
     27Xerces-C++ comes with sample applications that demonstrate salient features of the parser.
     28SAXCount is the simplest sample application. The SAXCount application counts the
     29elements, attributes and characters of a given XML file using the (event based) SAX API.
     30and prints out the counts.
    2631
    2732\begin{table}
  • docs/Working/icXML/reference.bib

    r2519 r2528  
    3333howpublished = {http://parabix.costar.sfu.ca/}
    3434}
     35
     36@misc{papi,
     37author = {},
     38title = {Performance Application Programming Interface},
     39howpublished = {http://icl.cs.utk.edu/papi/}
     40}
     41
     42@misc{perf,
     43author = {},
     44title = {Linux kernel profiling with perf},
     45howpublished = {https://perf.wiki.kernel.org/index.php/Tutorial}
     46}
     47
    3548
    3649@ARTICLE{canali2009,
Note: See TracChangeset for help on using the changeset viewer.