6
abstract public class XMLBench {
7
public string xslt_file;
9
public void Bench(string[] args) {
11
Console.WriteLine("Usage:\n\tme <iterations> <xml file|xmlgen|opcgen|xmark> [size|xsl_file]");
14
int iterations = Convert.ToInt32(args[0]);
17
if ((args[1] == "xmlgen")||(args[1] == "opcgen")||(args[1] == "xmark")) {
20
xslt_file = "../xml.files/generated.xsl";
23
xslt_file = "../xml.files/opc.xsl";
36
TimeSpan ts = new TimeSpan(0);
43
if (mode) xml = new FileStream("../xml.tmp/0.xml", FileMode.Open);
44
else xml = new FileStream(args[1], FileMode.Open);
46
ParseXML(xml, iterations, 0);
50
for (int i = 0; i < iterations; i++) {
51
if (mode) xml = new FileStream("../xml.tmp/0.xml", FileMode.Open);
52
else xml = new FileStream(args[1], FileMode.Open);
55
ParseXML(xml, iterations, 0);
57
d.disp_event((post - pre).TotalMilliseconds);
66
TimeSpan vts = new TimeSpan(0);
69
InitXML_Transformation(xslt_file);
71
if (mode) xml = new FileStream("../xml.tmp/0.xml", FileMode.Open);
72
else xml = new FileStream(args[1], FileMode.Open);
74
TransformXML(xml, iterations, 0);
78
for (int i = 0; i < iterations; i++) {
79
if (mode) xml = new FileStream("../xml.tmp/0.xml", FileMode.Open);
80
else xml = new FileStream(args[1], FileMode.Open);
83
TransformXML(xml, iterations, 0);
85
dv.disp_event((post - pre).TotalMilliseconds);
86
// Console.WriteLine((post - pre).TotalMilliseconds);
99
if (args[1] == "opcgen") {
100
Console.WriteLine("Mono Transformation Time: " + ts.TotalMilliseconds + " ms");
102
// Console.WriteLine("Mono Time: " + ts.TotalMilliseconds/iterations + " ms");
103
// Console.WriteLine("Mono Time: " + (dv.disp_m-d.disp_m) + "(" + (300*(d.disp_d+dv.disp_d)/(dv.disp_m-d.disp_m)) + "%)");
104
Console.WriteLine("Mono Transformation Time: " + (ts.TotalMilliseconds/iterations) + "(" + (300*(d.disp_d+dv.disp_d)/(dv.disp_m-d.disp_m)) + "%)");
107
virtual public void InitXML() {}
108
virtual public void InitXML_Transformation(string xslt_file) {}
109
virtual public void ReleaseXML() {}
110
abstract public void ParseXML(Stream xml, int iters, int iter);
111
abstract public void TransformXML(Stream xml, int iters, int iter);