Commit b6541d56 authored by Anthony LICK's avatar Anthony LICK

Merge branch 'master' of https://git.lsv.fr/schmitz/xpparser

parents e9df91b4 e343ed11
......@@ -93,7 +93,7 @@ This buildfile is used to retrieve and parse XPath expressions from various sour
but are useful to test our parser.
-->
<target name="tests" depends="w3c,xpathmark"/>
<target name="tests" depends="xpathmark-pt,xpathmark-ft,xmark"/>
<!-- W3C test-suite -->
<target name="w3c">
......@@ -103,10 +103,61 @@ This buildfile is used to retrieve and parse XPath expressions from various sour
</target>
<!-- XPathMark -->
<target name="xpathmark">
<benchmark name="xpathmark"
<target name="xpathmark-ft">
<sequential>
<local name="offline"/>
<available file="xpathmark-ft" property="offline"/>
<mkdir unless:set="offline" dir="xpathmark-ft"/>
<!--get unless:set="offline" src="http://users.dimi.uniud.it/~massimo.franceschet/xpathmark/FT/queries.zip"
dest="xpathmark-ft/queries.zip" usetimestamp="true"/-->
<local name="tests"/>
<local name="count.tests"/>
<fileset id="fs.tests" dir="xpathmark-ft" includes="*.xsl"/>
<pathconvert property="tests" refid="fs.tests" pathsep=" "/>
<resourcecount property="count.tests" refid="fs.tests"/>
<echo message="Parsing ${count.tests} files..."/>
<java fork="yes" classname="fr.lsv.xpparser.Main"
classpathref="classpath"
output="xpathmark-ft-full.xml" error="xpathmark-ft.log">
<assertions><!-- this is ignored!!! -->
<enable/>
</assertions>
<jvmarg value="-Xmx7000M"/>
<arg line="--xml '//@select' --unique ${tests} --rnc ${relaxng}"/>
</java>
</sequential>
</target>
<target name="xpathmark-pt">
<benchmark name="xpathmark-pt"
src="http://users.dimi.uniud.it/~massimo.franceschet/xpathmark/PT/queries.zip"
includes="xpath-pt/xslt/*.xsl" arg="--xml '//@select'"/>
includes="xpath-pt/xslt/*.xsl" arg="--xml '//@select'"
license=""/>
</target>
<!-- XMark -->
<target name="xmark">
<sequential>
<local name="offline"/>
<available file="xmark" property="offline"/>
<mkdir unless:set="offline" dir="xmark"/>
<!--get unless:set="offline" src="https://projects.cwi.nl/xmark/Assets/xmlquery.txt"
dest="xmark/queries.xql" usetimestamp="true"/-->
<local name="tests"/>
<local name="count.tests"/>
<fileset id="fs.tests" dir="xmark" includes="*.xql"/>
<pathconvert property="tests" refid="fs.tests" pathsep=" "/>
<resourcecount property="count.tests" refid="fs.tests"/>
<echo message="Parsing ${count.tests} files..."/>
<java fork="yes" classname="fr.lsv.xpparser.Main"
classpathref="classpath"
output="xmark-full.xml" error="xmark.log">
<assertions><!-- this is ignored!!! -->
<enable/>
</assertions>
<jvmarg value="-Xmx7000M"/>
<arg line="--xquery ../xslt/xqx2xql.xsl --unique ${tests} --rnc ${relaxng}"/>
</java>
</sequential>
</target>
<!-- PoliticalMashup -->
......
......@@ -22,17 +22,16 @@
});
</script-->
<body>
<h1>XPath fragments in @BENCHMARK@</h1>
<h1>XPath fragments</h1>
<h2>(<span style="color:red">preliminary version</span>)</h2>
<p>We extracted <a href="@BENCHMARK@.xml.bz2">@ENTRIES@ XPath
entries</a>
<p>We extracted @ENTRIES@ XPath entries
using <a href="https://git.lsv.fr/schmitz/xpparser">xpparser</a>,
and checked those entries against various XPath fragments. The
following rendering of the results was built
with <a href="http://d3js.org/">D3</a>.
<p> We are mostly interested in XPath entries belonging to one
<p> We are interested in this page in XPath entries belonging to one
fragment but not another, which yields the matrix on the left and
the chord graph on the right. The colour of the links in the chord
graph indicate the `winning flows' from one fragment to the next;
......
all: extensions.xml gains-ext.tex countfuns_all.dat countfuns_xslt.dat countfuns_xquery.dat non-standard-xquery.xml non-standard-xslt.xml non-standard-all.xml
countfuns_all.dat: countfuns.pl $(wildcard ../../benchmark/*-full.xml)
XPPSUF="all" ./countfuns.pl ../../benchmark/*-full.xml
grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | \
sed -e 's/.*href="\(.*\.xml\)".*/\1/' | \
XPPSUF="xquery" xargs ./countfuns.pl
countfuns_xslt.dat: countfuns.pl $(wildcard ../../benchmark/*-full.xml)
grep 'type="xslt"' ../tex/benchmarks-all-full.xml | \
......@@ -26,7 +28,7 @@ non-standard-xslt.xml: nonstandard.pl ../../benchmark/*-full.xml
./nonstandard.pl xslt `grep 'type="xslt"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > $@
non-standard-all.xml: nonstandard.pl ../../benchmark/*-full.xml
./nonstandard.pl all `grep 'href' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > $@
./nonstandard.pl all `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > $@
%.reasons: %.xml
xmlstarlet sel -t -v '//xpath/schemas/validation[@valid="no" and contains(@schema, "efo-extra")]/text()' -n $*.xml | sort | uniq -c > $*.reasons
......
#!/bin/bash
echo "<count>"
sum=0
for FILE in ../../benchmark/*-full.xml
for FILE in `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
do
filename=$(basename "$FILE")
if [[ $filename = *"-full.xml" || $filename = "w3c.xml" || $filename = "xpathmark.xml" ]]; then
......@@ -15,7 +15,7 @@ echo "</count>"
echo "<countcst>"
printf "%'.0f" $sum > count-aggregation.tex
sum=0
for FILE in ../../benchmark/*-full.xml
for FILE in `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
do
filename=$(basename "$FILE")
if [[ $filename = *"-full.xml" || $filename = "w3c.xml" || $filename = "xpathmark.xml" ]]; then
......
#!/bin/bash
echo "<constantJoin>"
sum=0
for FILE in ../../benchmark/*-full.xml
for FILE in `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
do
filename=$(basename "$FILE")
if [[ $filename = *"-full.xml" || $filename = "w3c.xml" || $filename = "xpathmark.xml" ]]; then
......@@ -18,7 +18,7 @@ printf " %'.0f &" $sum >> occurrences-ext.tex
echo "<constantJoinNotAttr>"
sum=0
for FILE in ../../benchmark/*-full.xml
for FILE in `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
do
filename=$(basename "$FILE")
if [[ $filename = *"-full.xml" || $filename = "w3c.xml" || $filename = "xpathmark.xml" ]]; then
......
#!/bin/bash
for schema in $(xmlstarlet sel -t -v "/schemas/schema/@file" ../../relaxng/fragments-full.xml); do
for schema in $(xmlstarlet sel -t -v "/schemas/schema/@file" `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`); do
extra=$(echo $schema | sed s/[a-z]*.rnc/extra.rnc/)
echo "Differences between" $schema "and" $extra
total=0
value=0
for file in ../../benchmark/*-full.xml; do
for file in `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`; do
value=$(xmlstarlet sel -t -c "count(/benchmark/xpath[schemas[validation[@schema='$schema' and @valid='no'] and validation[@schema='$extra' and @valid='yes']]])" $file)
echo " "$(basename $file)":" $value
total=$(($total+$value))
......
#!/bin/bash
echo "<freevar>"
sum=0
for FILE in ../../benchmark/*-full.xml
for FILE in `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
do
filename=$(basename "$FILE")
if [[ $filename = *"-full.xml" || $filename = "w3c.xml" || $filename = "xpathmark.xml" ]]; then
......
#!/bin/bash
echo "<last>"
sum=0
for FILE in ../../benchmark/*-full.xml
for FILE in `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
do
filename=$(basename "$FILE")
if [[ $filename = *"-full.xml" || $filename = "w3c.xml" || $filename = "xpathmark.xml" ]]; then
......
......@@ -23,7 +23,7 @@ do
#printf '\multicolumn{3}{c}{'
# basic
./diffs.sh $orig $basic ../../benchmark/*-full.xml
./diffs.sh $orig $basic `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
#printf '} & '
printf ' & '
......@@ -31,7 +31,7 @@ do
if [ -f ../../relaxng/$join ]
then
printf "+"
./diffs.sh $basic $join ../../benchmark/*-full.xml
./diffs.sh $basic $join `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
fi
printf ' & '
......@@ -39,7 +39,7 @@ do
if [ -f ../../relaxng/$last ]
then
printf "+"
./diffs.sh $basic $last ../../benchmark/*-full.xml
./diffs.sh $basic $last `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
fi
printf ' & '
......@@ -47,7 +47,7 @@ do
if [ -f ../../relaxng/$id ]
then
printf "+"
./diffs.sh $basic $id ../../benchmark/*-full.xml
./diffs.sh $basic $id `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
fi
echo '\\'
done
......
#!/bin/bash
echo "<id>"
sum=0
for FILE in ../../benchmark/*-full.xml
for FILE in `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
do
filename=$(basename "$FILE")
if [[ $filename = *"-full.xml" || $filename = "w3c.xml" || $filename = "xpathmark.xml" ]]; then
......
#!/bin/bash
echo "<pureJoin>"
sum=0
for FILE in ../../benchmark/*-full.xml
for FILE in `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
do
filename=$(basename "$FILE")
if [[ $filename = *"-full.xml" || $filename = "w3c.xml" || $filename = "xpathmark.xml" ]]; then
......@@ -17,7 +17,7 @@ printf "%'.0f" $sum > occurrences-pure-joins.tex
echo "<fullJoin>"
sum=0
for FILE in ../../benchmark/*-full.xml
for FILE in `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
do
filename=$(basename "$FILE")
if [[ $filename = *"-full.xml" || $filename = "w3c.xml" || $filename = "xpathmark.xml" ]]; then
......
#!/bin/bash
echo "<last>"
sum=0
for FILE in ../../benchmark/*-full.xml
for FILE in `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
do
filename=$(basename "$FILE")
if [[ $filename = *"-full.xml" || $filename = "w3c.xml" || $filename = "xpathmark.xml" ]]; then
......
#!/bin/bash
echo "<positiveJoin>"
sum=0
for FILE in ../../benchmark/*-full.xml
for FILE in `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
do
filename=$(basename "$FILE")
if [[ $filename = *"-full.xml" || $filename = "w3c.xml" || $filename = "xpathmark.xml" ]]; then
......
#!/bin/bash
echo "<root>"
sum=0
for FILE in ../../benchmark/*-full.xml
for FILE in `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
do
filename=$(basename "$FILE")
if [[ $filename = *"-full.xml" || $filename = "w3c.xml" || $filename = "xpathmark.xml" ]]; then
......
#!/bin/bash
echo "<var>"
sum=0
for FILE in ../../benchmark/*-full.xml
for FILE in `grep 'type="\(xslt\|xquery\)"' ../tex/benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
do
filename=$(basename "$FILE")
if [[ $filename = *"-full.xml" || $filename = "w3c.xml" || $filename = "xpathmark.xml" ]]; then
......
......@@ -25,20 +25,20 @@ miniclean:
rm -f *.aux *.gnuploterrors *.log
numqueries: $(wildcard ../../benchmark/*-full.xml)
grep '<ast' `grep 'href' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` | wc -l > $@
grep '<ast' `grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` | wc -l > $@
numqueries.tex: numqueries
printf "%'.0f" `cat $<` > $@
MAXcount: $(wildcard ../../benchmark/*-full.xml)
grep 'MAX' `grep 'href' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` | wc -l > $@
grep 'MAX' `grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` | wc -l > $@
MAXcount.tex: MAXcount
printf "%'.0f" `cat $<` > $@
size-gte-100.tex: $(wildcard ../../benchmark/*-full.xml)
./size-gte.sh `grep 'href' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > $@
./size-gte.sh `grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > $@
axis-count.tex: $(wildcard ../../benchmark/*-axis-step.xml)
./axis-count.sh > $@
......@@ -71,19 +71,28 @@ xquery-full.cov: coverage.sh full-frags.sh ../../relaxng/fragments-full.xml
xquery-orig.cov: coverage.sh full-frags.sh ../../relaxng/fragments-full.xml
./coverage.sh 'type="xquery"' "`./full-frags.sh ../../relaxng/fragments-orig.xml`" > xquery-orig.cov
bnch-full.cov: coverage.sh full-frags.sh ../../relaxng/fragments-full.xml
./coverage.sh 'type="bench"' "`./full-frags.sh ../../relaxng/fragments-full.xml`" > bnch-full.cov
bnch-orig.cov: coverage.sh full-frags.sh ../../relaxng/fragments-full.xml
./coverage.sh 'type="bench"' "`./full-frags.sh ../../relaxng/fragments-orig.xml`" > bnch-orig.cov
xslt.dat: bench.sh xslt-full.cov xslt-orig.cov $(wildcard ../../benchmark/*-full.xml) benchmarks-all-full.xml
./bench.sh xslt-full.cov xslt-orig.cov `grep 'type="xslt"' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > xslt.dat 2> minmax-xslt.tex
xqy.dat: bench.sh xquery-full.cov xquery-orig.cov $(wildcard ../../benchmark/*-full.xml) benchmarks-all-full.xml
./bench.sh xquery-full.cov xquery-orig.cov `grep 'type="xquery"' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > xqy.dat 2> minmax-xqy.tex
bnch.dat: bench.sh bnch-full.cov bnch-orig.cov $(wildcard ../../benchmark/*-full.xml) benchmarks-all-full.xml
./bench.sh bnch-full.cov bnch-orig.cov `grep 'type="bench"' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > bnch.dat 2> minmax-bnch.tex
xslt-std.dat: bench-std.sh xslt-full.cov xslt-orig.cov $(wildcard ../../benchmark/*-full.xml) benchmarks-all-full.xml
./bench-std.sh xslt-full.cov xslt-orig.cov `grep 'type="xslt"' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > $@ 2> minmax-std-xslt.tex
xqy-std.dat: bench-std.sh xquery-full.cov xquery-orig.cov $(wildcard ../../benchmark/*-full.xml) benchmarks-all-full.xml
./bench-std.sh xquery-full.cov xquery-orig.cov `grep 'type="xquery"' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > $@ 2> minmax-std-xqy.tex
test.pdf: xslt.dat xqy.dat test.tex
test.pdf: xslt.dat xqy.dat bnch.dat test.tex
pdflatex --shell-escape test.tex
%.xml: %-full.xml
......@@ -92,24 +101,26 @@ benchmarks-xslt-full.xml: benchmarks-all-full.xml
grep -v 'type="xquery"' $< > $@
benchmarks-xquery-full.xml: benchmarks-all-full.xml
grep -v 'type="xslt"' $< > $@
benchmarks-bench-full.xml: benchmarks-all-full.xml
grep -v 'type="bench"' $< > $@
contingency-size.dat: contingency-size.sh benchmarks-all-full.xml $(wildcard ../../benchmark/*-full.xml)
./contingency-size.sh `grep 'href' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > $@
./contingency-size.sh `grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > $@
chisquare-size: contingency-size.dat chisquare.R
./chisquare.R contingency-size.dat
contingency-axis-step.dat: contingency-axis-step.sh benchmarks-all-full.xml $(wildcard ../../benchmark/*-full.xml)
./contingency-axis-step.sh `grep 'href' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > $@
./contingency-axis-step.sh `grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > $@
chisquare-axis-step: contingency-axis-step.dat chisquare.R
./chisquare.R contingency-axis-step.dat
coverage-size.tex: coverage-size.sh benchmarks-all-full.xml $(wildcard ../../benchmark/*-full.xml)
./$< `grep 'href' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > $@
./$< `grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > $@
coverage-axis-step.tex: coverage-axis-step.sh benchmarks-all-full.xml $(wildcard ../../benchmark/*-full.xml)
./$< `grep 'href' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > $@
./$< `grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'` > $@
composition.tex: composition.sh benchmarks-all-full.xml $(wildcard ../../benchmark/*-full.xml)
./$< > $@
......
......@@ -3,8 +3,8 @@
# path to benchmark files
path=$1
full=$2
xmlarray=($(grep href benchmarks-all-full.xml | sed -e 's/.*benchmark\/\(.*\)-full.xml.*/\1/'))
names=($(grep href benchmarks-all-full.xml | sed -e 's/.*name="\(.*\)".*/\1/'))
xmlarray=($(grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*benchmark\/\(.*\)-full.xml.*/\1/'))
names=($(grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*name="\(.*\)".*/\1/'))
echo "\\toprule"
echo "Source & \\textsf{Positive} & \\textsf{Core~1.0} & \\textsf{Core~2.0} & \\textsf{Downward} & \\textsf{Vertical} & \\textsf{Forward} & \\textsf{EMSO\$^\\textsf 2\$} & \\textsf{NonMixing}\\\\"
......
......@@ -3,8 +3,8 @@
# path to benchmark files
path=$1
full=$2
xmlarray=($(grep href benchmarks-all-full.xml | sed -e 's/.*benchmark\/\(.*\)-full.xml.*/\1/'))
names=($(grep href benchmarks-all-full.xml | sed -e 's/.*name="\(.*\)".*/\1/'))
xmlarray=($(grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*benchmark\/\(.*\)-full.xml.*/\1/'))
names=($(grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*name="\(.*\)".*/\1/'))
echo "\\toprule"
echo "Source & \\textsf{Full} & \\textsf{Positive} & \\textsf{Positive}-Xtra & \\textsf{Core~1.0} & \\textsf{Core~1.0}-Xtra & \\textsf{Core~2.0} & \\textsf{Core~2}-Xtra & \\textsf{Downward} & \\textsf{Vertical} & \\textsf{Forward} & \\textsf{EMSO\$^\\textsf 2\$} & \\textsf{NonMixing}\\\\"
......
......@@ -3,8 +3,8 @@
# path to benchmark files
path=$1
full=$2
xmlarray=($(grep href benchmarks-all-full.xml | sed -e 's/.*benchmark\/\(.*\)-full.xml.*/\1/'))
names=($(grep href benchmarks-all-full.xml | sed -e 's/.*name="\(.*\)".*/\1/'))
xmlarray=($(grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*benchmark\/\(.*\)-full.xml.*/\1/'))
names=($(grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*name="\(.*\)".*/\1/'))
echo "\\toprule"
echo "Source & \\textsf{Core~1.0} & \\textsf{Core~2.0} & \\textsf{Downward} & \\textsf{Vertical} & \\textsf{Forward} & \\textsf{EMSO\$^\\textsf 2\$} & \\textsf{NonMixing}\\\\"
......
......@@ -3,8 +3,8 @@
# path to benchmark files
path=$1
full=$2
xmlarray=($(grep href benchmarks-all-full.xml | sed -e 's/.*benchmark\/\(.*\)-full.xml.*/\1/'))
names=($(grep href benchmarks-all-full.xml | sed -e 's/.*name="\(.*\)".*/\1/'))
xmlarray=($(grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*benchmark\/\(.*\)-full.xml.*/\1/'))
names=($(grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*name="\(.*\)".*/\1/'))
echo "\\toprule"
echo "Source & \\textsf{Core~1.0} & \\textsf{Core~2.0} & \\textsf{Downward} & \\textsf{Vertical} & \\textsf{Forward} & \\textsf{EMSO\$^\\textsf 2\$} & \\textsf{NonMixing}\\\\"
......
......@@ -3,8 +3,8 @@
# path to benchmark files
path=$1
full=$2
xmlarray=($(grep href benchmarks-all-full.xml | sed -e 's/.*benchmark\/\(.*\)-full.xml.*/\1/'))
names=($(grep href benchmarks-all-full.xml | sed -e 's/.*name="\(.*\)".*/\1/'))
xmlarray=($(grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*benchmark\/\(.*\)-full.xml.*/\1/'))
names=($(grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*name="\(.*\)".*/\1/'))
echo "\\toprule"
echo "Source & \\textsf{Core~1.0} & \\textsf{Core~2.0} & \\textsf{Downward} & \\textsf{Vertical} & \\textsf{Forward} & \\textsf{EMSO\$^\\textsf 2\$} & \\textsf{NonMixing}\\\\"
......
......@@ -3,8 +3,8 @@
# path to benchmark files
path=$1
full=$2
xmlarray=($(grep href benchmarks-all-full.xml | sed -e 's/.*benchmark\/\(.*\)-full.xml.*/\1/'))
names=($(grep href benchmarks-all-full.xml | sed -e 's/.*name="\(.*\)".*/\1/'))
xmlarray=($(grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*benchmark\/\(.*\)-full.xml.*/\1/'))
names=($(grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*name="\(.*\)".*/\1/'))
echo "\\toprule"
echo "Source & \\textsf{Positive} & \\textsf{Core~1.0} & \\textsf{Core~2.0} & \\textsf{Downward} & \\textsf{Vertical} & \\textsf{Forward} & \\textsf{EMSO\$^\\textsf 2\$} & \\textsf{NonMixing}\\\\"
......
......@@ -3,8 +3,8 @@
# path to benchmark files
path=$1
full=$2
xmlarray=($(grep href benchmarks-all-full.xml | sed -e 's/.*benchmark\/\(.*\)-full.xml.*/\1/'))
names=($(grep href benchmarks-all-full.xml | sed -e 's/.*name="\(.*\)".*/\1/'))
xmlarray=($(grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*benchmark\/\(.*\)-full.xml.*/\1/'))
names=($(grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*name="\(.*\)".*/\1/'))
echo "\\toprule"
echo "Source & \\textsf{Core~1.0} & \\textsf{Core~2.0} & \\textsf{Downward} & \\textsf{Vertical} & \\textsf{Forward} & \\textsf{EMSO\$^\\textsf 2\$} & \\textsf{NonMixing}\\\\"
......
......@@ -3,8 +3,8 @@
# path to benchmark files
path=$1
full=$2
xmlarray=($(grep href benchmarks-all-full.xml | sed -e 's/.*benchmark\/\(.*\)-full.xml.*/\1/'))
names=($(grep href benchmarks-all-full.xml | sed -e 's/.*name="\(.*\)".*/\1/'))
xmlarray=($(grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*benchmark\/\(.*\)-full.xml.*/\1/'))
names=($(grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*name="\(.*\)".*/\1/'))
echo "\\toprule"
echo "Source & queries & XPath~1.0 & XPath~2.0 & XPath~3.0\\\\"
......
......@@ -28,4 +28,7 @@
<benchmark href="../../benchmark/libs-full.xml" type="xquery" name="xquery-libs" url="https://github.com/adamretter/xquery-libs/" />
<benchmark href="../../benchmark/guidomatic-full.xml" type="xquery" name="Guid-O-Matic" url="https://github.com/baskaufs/guid-o-matic/" />
<benchmark href="../../benchmark/functional-full.xml" type="xquery" name="functional.xq" url="https://github.com/jpcs/functional.xq/" />
<benchmark href="../../benchmark/xpathmark-ft-full.xml" type="bench" name="XPathMark-FT" />
<benchmark href="../../benchmark/xpathmark-pt-full.xml" type="bench" name="XPathMark-PT" />
<benchmark href="../../benchmark/xmark-full.xml" type="bench" name="XMark" />
</benchmarks>
......@@ -8,7 +8,7 @@ then
else
step=$1
fi
fragments=`grep 'href' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
fragments=`grep 'type="\(xslt\|xquery\)"' benchmarks-all-full.xml | sed -e 's/.*href="\([^"]*\).*/\1/'`
MAX=`grep 'MAX_AST_SIZE =' ../../src/main/java/fr/lsv/xpparser/XPathEntry.java| sed -e 's/[^0-9]*\([0-9]*\).*/\1/'`
numqueries=`cat numqueries`
......
......@@ -56,6 +56,29 @@
\end{gnuplot}
\caption{Coverage of the XQuery sources.}
\end{figure}
\begin{figure}[tbp]
\centering
% you need to compile with `pdflatex --shell-escape`
\begin{gnuplot}[terminal=cairolatex, terminaloptions={color size
10cm,6.0cm}]
set yrange [0:100]
set decimal locale
set format y '%.0f\%%'
set style fill solid 1.00 border rgb "#ffffff"
set ylabel "percentage of queries"
set xtics nomirror rotate by -45
set tic scale 0
set grid ytics lc rgb "#505050"
unset border
set style data histograms
set boxwidth 1.4
set key font ",9"
plot "bnch.dat" using 2:xticlabels(1) title "+extras" lt rgb "#fdc711",\
"" using 3 title "extended" lt rgb "#5f1d5e",\
"" using 4 title "baseline" lt rgb "#636369"
\end{gnuplot}
\caption{Coverage of the synthetic benchmarks.}
\end{figure}
%% \begin{figure*}[htp]
%% \centering
%% % you need to compile with `pdflatex --shell-escape`
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment