[israfil-micro commit] r59 - wiki

0 views
Skip to first unread message

codesite...@google.com

unread,
Jul 30, 2008, 1:29:01 PM7/30/08
to israfil-...@googlegroups.com
Author: christianedwardgruber
Date: Wed Jul 30 10:28:05 2008
New Revision: 59

Modified:
wiki/Container_1_0_PerformanceMetrics.wiki

Log:
Edited wiki page through web user interface.

Modified: wiki/Container_1_0_PerformanceMetrics.wiki
==============================================================================
--- wiki/Container_1_0_PerformanceMetrics.wiki (original)
+++ wiki/Container_1_0_PerformanceMetrics.wiki Wed Jul 30 10:28:05 2008
@@ -4,37 +4,40 @@

Note: I'm a big fan of Tapestry5, and I'm very confused as to why t5's ioc container is so slow. I imagine I'm doing something wrong, but I haven't had a chance to ask HLS why I would find this performance.

-We're testing in comparison with:
-|| Container name || Version ||
-|| Hard Coded || N/A ||
-|| T5-IOC || 5.0.11 ||
-|| Pico Container || 2.1 ||
-|| Spring || 2.5.4 ||
-|| Israfil Micro || 1.0 ||
-
-
-The startup costs and first invocation for each container are as follows:
-
-|| *container/config* || *ms/startup* || *µs/query* || *ns/query* ||
-|| singleton || 2 || 0 || 11 ||
-|| t5-ioc ||339 || 18 || 18914 ||
-|| israfil micro early || 6 || 0 || 113 ||
-|| israfil micro late || 0 || 0 || 118 ||
-|| pico-nocache || 38 || 5 || 5637 ||
-|| pico-cache || 2 || 0 || 255 ||
-|| spring || 449 || 0 || 289 ||
+Here's the list of containers, with rolled up averages relative to hard-coded. (Note, results in nanoseconds, with that resolution being attained by iterating the test 10,000,000 times. For loop cost factored in, sadly)

-The ongoing average call costs are as follows:
+|| *Container name* || *Version* || *Configuration* || *ns/1st call* || *1st call / hard-coded* || *ns/avg call* || *avg call / hard-coded* ||
+|| Hard Coded || N/A || N/A || 11 || 1.0 || 8 || 1.0 ||
+|| Israfil Micro || 1.0 || early resolution || 113 || 10.3 || 109 || 13.6 ||
+|| Israfil Micro || 1.0 || late resolution || 118 || 10.7 || 112 || 14.0 ||
+|| Pico Container || 2.1 || with cache|| 255 || 23.2 || 256 || 32.0 ||
+|| Spring || 2.5.4 ||N/A || 289 || 26.3 || 292 || 36.5 ||
+|| Pico Container || 2.1 || without cache || 5637 || 512.5 || 5825 || 728.1 ||
+|| T5-IOC || 5.0.11 || N/A || 18914 || 1719.5 || 17637 || 2204.6 ||
+
+Oddly enough, the call time of the first invocation is smaller (relative to hard-coded) than later calls, though you would think it wouldn't be. I think this is because the first call to the hard-coded version had a slightly higher cost compared to average cost of calling the hard-coded one. This plays out in the relative numbers, even though the absolute average call time is smaller
+
+The startup costs for each container are as follows, reported in milliseconds by necessity:
+
+|| *container/config* || *ms/startup* ||
+|| singleton || 2 ||
+|| t5-ioc ||339 ||
+|| israfil micro early || 6 ||
+|| israfil micro late || 0 ||
+|| pico-nocache || 38 ||
+|| pico-cache || 2 ||
+|| spring || 449 ||

-|| *container/config* || *ms/startup* || *µs/query* || *ns/query* ||
-|| singleton || 0 || 0 || 8 ||
-|| t5-ioc || 6.8 || 17 || 17637 ||
-|| israfil micro early || 0 || 0 || 109 ||
-|| israfil micro late || 0 || 0 || 112 ||
-|| pico-nocache || 0.3 || 5 || 5825 ||
-|| pico-cache || 0.56 || 0 || 256 ||
-|| spring || 51 || 0 || 292 ||
+The ongoing average call costs are as follows:

+|| *container/config* || *ms/startup* ||
+|| singleton || 0 ||
+|| t5-ioc || 6.8 || 1
+|| israfil micro early || 0 ||
+|| israfil micro late || 0 ||
+|| pico-nocache || 0.3 ||
+|| pico-cache || 0.56 ||
+|| spring || 51 ||
And here's the raw data from the runs.

|| *container/config* || *init* || *staging* || *total startup* || *exec (10000000 cycles)* || *µs/query* || *ns/query* ||

Reply all
Reply to author
Forward
0 new messages