<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>A Prototype Service for Benchmarking Power Consumption of Mobile Semantic Applications</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Evan W. Patton</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Deborah L. McGuinness</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Rensselaer Polytechnic Institute 110</institution>
          <addr-line>8th Street, Troy NY 12180</addr-line>
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>We present a prototype web service that enables researchers to evaluate the performance per watt of semantic web tools. The web service provides access to a hardware platform for collecting power consumption data for a mobile device. Experiments are speci ed using RDF to de ne the conditions of the experiment, the operations that compose those conditions, and how they are combined into individual execution plans. Further, experimental descriptions and their provenance are published as linked data, allowing others to easily repeat experiments. We will demonstrate how we have used the system to date, how others can use it, and discuss its potential to revolutionize design and development of semantically enabled mobile applications.</p>
      </abstract>
      <kwd-group>
        <kwd>reasoning</kwd>
        <kwd>mobile</kwd>
        <kwd>power</kwd>
        <kwd>performance</kwd>
        <kwd>resource-constrained</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>One challenge that semantic technologies face when deployed on mobile
platforms like smartphones is the amount of energy available for the device to
compute and communicate with other agents. For example, the Google Nexus One,
one of the rst Android smartphones, had a single core processor operating at
1 GHz and 512 MB of RAM. Samsung's latest o ering, the Galaxy S5, has a
quad core, 2.5 GHz processor and 2 GB of RAM, more than a 8-fold increase in
processing power and 4-fold increase in memory in 5 years. However, the battery
capacity of the two phones are 1400 mAh and 2800 mAh, resp., which indicates
that battery technology is progressing more slowly than processing technology.
Further, application complexity has also increased. Tools are needed to help
developers understand how semantic tools consume power so as to identify when
they can use local reasoning on mobile platforms or when o -device computation
is more practical.</p>
      <p>
        We introduced a broadly reusable methodology [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] motivated by these
concerns to evaluate the performance of reasoners relative to the amount of energy
consumed during operation. Ultimately, these metrics will provide developers
deeper insight into power consumption and enable next-generation applications
of semantic technologies for power constrained devices. We present a prototype
ontology-driven web service for researchers to use our reference hardware setup
to perform analysis of semantic web tools' power consumption.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Web Service for Power-Performance Evaluation</title>
      <p>
        Our power benchmarking methodology [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] bypasses the removable battery in a
Samsung Galaxy S4 to collect power data during reasoning and query answering
tasks using three reasoning engines. Because our methodology requires a
hardware setup, we are developing and will demonstrate a web service to execute
experiments using our existing infrastructure. The web service is based on the
Semantic Automated Discovery and Integration (SADI) Framework1 and accepts
jobs described using RDF and the ontology we will discuss in Section 3. On
completion, it provides a ZIP le containing runtime information, raw and processed
power measurements, power and energy consumption statistics, and provenance
capturing information about the process. Table 1 shows a sample data point for
each of three di erent reasoners on the Lehigh University Benchmark [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], query
14 (shown in Listing 1.1).
      </p>
      <p>Listing 1.1. Lehigh University Benchmark query 14
PREFIX rdf: &lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&gt;
PREFIX ub: &lt;http://swat.cse.lehigh.edu/onto/univ-bench.owl#&gt;
SELECT ?X WHERE {?X rdf:type ub:UndergraduateStudent}
3</p>
    </sec>
    <sec id="sec-3">
      <title>Toward an Ontology for Experiment Descriptions</title>
      <p>
        We will demonstrate our experimental ontology for declaratively describing the
operational constraints of an experiment, which is then executed on the target
device. The experiment description is published as linked data, along with
metadata about the experiment output, andprovenance modeled using the PROV-O
ontology [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].These metadata are published in a triple store to enable
metaanalysis, recombination, and extension of power experiments.
1 http://sadiframework.org/content/
Experiment. Experiment provides the root of an experiment description.
Listing 1.2 shows an example experiment. Core to an experiment description are
conditions, which are grouped together based on some common dimension. If
an experiment de nes more than one condition group, the engine performing
the experiment can generate speci c conditions through the use of a
conditionFillStrategy. We are currently investigating two di erent strategies, CrossJoin
and Paired, that evaluate the cross product and paired conditions across groups,
respectively. To provide control over what data are returned, the author of the
experiment can declare which variables are of interest.
      </p>
      <p>Listing 1.2. An example description of an experiment
[] a exp:Experiment ;
exp:name ‘LUBM on Android’ ;
exp:version ‘1.0’ ;
dc:creator &lt;http://www.evanpatton.com/evan.rdf#me&gt; ;
exp:trials 30 ;
exp:conditions :ReasonerConditionGroup,</p>
      <p>OntologyConditionGroup ;
exp:conditionFillStrategy exp:CrossJoin ;
exp:dependentVariable exp:ExecutionInterval,</p>
      <p>exp:AveragePowerConsumption, exp:MaxPowerConsumption .
Conditions and Condition Groups. Conditions are the highest unit of test in
our experiment ontology. They are composed of collections of operations that
specify a sequence of actions to take on the device. Listing 1.3 shows an example
of an ontology condition group that speci es two di erent ontology operations.
Currently, we only support nominal values, but future versions of the ontology
will also support ordinal, scalar, and ratio level inputs.</p>
      <p>Listing 1.3. An example of a condition group with conditions
:OntologyConditionGroup a exp:ConditionGroup ;
exp:name ‘Ontology Condition’ ;
exp:varies exp:OntologyDatasetQueryOperation ;
exp:nominalValues ( :SchemaOrgOperations :LUBMOperations )
Operations. Operations encapsulate actions to be performed on the experimental
device. In Listing 1.4, we show an example of how an operation would de ne tests
for the LUBM query set. The measurePowerDuringDownload property can be
used to evaluate the performance of communication channels while retrieving the
content required for performing the experiment. In addition to loading
ontologies, datasets, and executing queries, our ontology supports modeling reasoners,
parallel and sequential operations, and randomization of operations.2
2 Due to space constraints, we cannot elaborate on the details of modeling each
operation type. For more information and examples, please see http://power.tw.rpi.edu
Listing 1.4. An example of an combined operation on an ontology, dataset, and queries
:LUMBOperations a exp:OntologyDatasetQueryOperation ;
exp:name ‘LUBM’ ;
exp:measurePowerDuringDownload false ;
exp:ontology lubm:univ-bench.owl ;
exp:dataset lubm:lubm-100k.ttl ;
exp:query lubm:query1.rq , lubm:query2.rq , ... .
4</p>
    </sec>
    <sec id="sec-4">
      <title>Discussion and Conclusions</title>
      <p>
        As semantic technologies become more prevalent, we need to ensure that tools
are available to assist in their deployment on a variety of devices including mobile
platforms, which are often power constrained. While our initial work provides
direction for this e ort, we recognize that more widespread adoption requires
lower barriers to entry. We described a web service under active development
to provide access to a reference implementation of the hardware described in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]
where we found that, while compute time accounts for most energy consumption,
signi cant memory consumption may a ect power consumption during
reasoning. With this investigation, we are working to enable semantic web researchers
and implementers to obtain insight into the power requirements for semantic
technology stacks. We will demonstrate a variety of example experiments and
discuss broader usage with attendees. In future work we intend to use expand
this web service to provide a means of easily repeating experiments as well as
further support for modeling the execution of experiments using We also
intend to provide example code that present an analysis of more reasoners, e.g. by
utilizing the work in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
    </sec>
    <sec id="sec-5">
      <title>Acknowledgements</title>
      <p>Mr. Patton was funded by an NSF Graduate Research Fellowship. RPIs
Tetherless World Constellation is supported in part by Fujitsu, Lockheed Martin, LGS,
Microsoft Research, Qualcomm, in addition to sponsored research from DARPA,
IARPA, NASA, NIST, NSF, and USGS.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Belhajjame</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cheney</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Corsar</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Garijo</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Soiland-Reyes</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zednik</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zhao</surname>
            ,
            <given-names>J.:</given-names>
          </string-name>
          <article-title>PROV-O: The PROV ontology</article-title>
          .
          <source>Tech. rep., W3C</source>
          (
          <year>2013</year>
          ), http://www.w3. org/TR/prov-o/
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Guo</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pan</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          , He in, J.:
          <article-title>LUBM: A benchmarking for OWL knowledge base systems</article-title>
          .
          <source>Web Semantics</source>
          <volume>3</volume>
          (
          <issue>2</issue>
          ),
          <volume>158</volume>
          {
          <fpage>182</fpage>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Patton</surname>
            ,
            <given-names>E.W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McGuinness</surname>
            ,
            <given-names>D.L.:</given-names>
          </string-name>
          <article-title>A power consumption benchmark for reasoners on mobile devices</article-title>
          .
          <source>In: Proceedings of the 13th International Semantic Web Conference: Replication</source>
          , Benchmark, Data &amp; Software
          <string-name>
            <surname>Track</surname>
          </string-name>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Yus</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bobed</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Esteban</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bobillo</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mena</surname>
          </string-name>
          , E.:
          <article-title>Android goes semantic: DL reasoners on smartphones</article-title>
          .
          <source>In: OWL Reasoner Evaluation Workshop</source>
          <year>2013</year>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>