[stringtemplate-interest] oliver benchmarks

Terence Parr parrt at antlr.org
Fri Feb 4 12:14:35 PST 2011


# Env Host maniac.cs.usfca.edu, Feb 4, 2011 12:13:16 PM, Java 1.6.0_22-b04-307-10M3261, Mac OS X 10.6.5 on x86_64
# HotSpot warmup
# Computing number of reps per trial
# timeEmail benchmarking
# timeEmailWriteToStringBuffer benchmarking
# timeEmailWithRenderers benchmarking
timeEmail                     :    34.73   35.10   49.27   49.21   49.16 =    43.50 units of work / ms warning: variable average work
timeEmailWriteToStringBuffer  :    50.41   50.09   50.25   50.04   49.98 =    50.16 units of work / ms
timeEmailWithRenderers        :    31.61   31.73   32.41   32.66   32.49 =    32.18 units of work / ms

ok, now off to profile this and others.

	public void timeEmail(int reps) {
		ST st = test.getInstanceOf("email");
		st.add("order", Helper.order);
		st.add("separator", "----------------");
		for (int i = 0; i < reps; i++) {
			st.render();
		}
	}

	public void timeEmailWriteToStringBuffer(int reps) {
		ST st = test.getInstanceOf("email");
		st.add("order", Helper.order);
		st.add("separator", "----------------");
		for (int i = 0; i < reps; i++) {
			StringWriter sw = new StringWriter();
			AutoIndentWriter w = new AutoIndentWriter(sw);
			try {st.write(w);} catch (IOException ioe) {;}
		}
	}

	public void timeEmailWithRenderers(int reps) {
		STGroup test = new STGroupFile("email.stg");
		test.registerRenderer(Date.class, new DateRenderer());
		test.registerRenderer(BigDecimal.class, new BigDecimalRenderer());
		ST st = test.getInstanceOf("email");
		st.add("order", Helper.order);
		st.add("separator", "----------------");
		for (int i = 0; i < reps; i++) {
			st.render();
		}
	}

Ter


More information about the stringtemplate-interest mailing list