Mercurial > hg > blitz_stable
comparison test/org/dancres/blitz/WriteSpeedTest.java @ 0:3dc0c5604566
Initial checkin of blitz 2.0 fcs - no installer yet.
author | Dan Creswell <dan.creswell@gmail.com> |
---|---|
date | Sat, 21 Mar 2009 11:00:06 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:3dc0c5604566 |
---|---|
1 package org.dancres.blitz; | |
2 | |
3 import net.jini.core.entry.Entry; | |
4 import net.jini.core.lease.Lease; | |
5 | |
6 import org.dancres.blitz.mangler.*; | |
7 | |
8 public class WriteSpeedTest { | |
9 public static void main(String args[]) { | |
10 | |
11 try { | |
12 System.out.println("Start space"); | |
13 | |
14 SpaceImpl mySpace = new SpaceImpl(null); | |
15 | |
16 System.out.println("Prepare entry"); | |
17 | |
18 EntryMangler myMangler = new EntryMangler(); | |
19 TestEntry myEntry = new TestEntry(); | |
20 myEntry.init(); | |
21 | |
22 System.out.println("init'd entry"); | |
23 MangledEntry myPackedEntry = myMangler.mangle(myEntry); | |
24 | |
25 System.out.println("Do writes"); | |
26 | |
27 long myStart = System.currentTimeMillis(); | |
28 | |
29 for (int i = 0; i < Integer.parseInt(args[0]); i++) { | |
30 mySpace.write(myPackedEntry, null, Lease.FOREVER); | |
31 } | |
32 | |
33 long myEnd = System.currentTimeMillis(); | |
34 | |
35 double myEntriesWritten = Integer.parseInt(args[0]); | |
36 double myStartTime = (double) myStart; | |
37 double myEndTime = (double) myEnd; | |
38 | |
39 double myTime = (myEndTime - myStartTime) / myEntriesWritten; | |
40 | |
41 System.out.println("Time per write: " + myTime); | |
42 | |
43 System.out.println("Do takes"); | |
44 | |
45 myStart = System.currentTimeMillis(); | |
46 | |
47 for (int i = 0; i < Integer.parseInt(args[0]); i++) { | |
48 if (mySpace.take(myPackedEntry, null, 10000) == null) | |
49 System.out.println("Missed: " + i); | |
50 } | |
51 | |
52 myEnd = System.currentTimeMillis(); | |
53 | |
54 double myEntriesTaken = Integer.parseInt(args[0]); | |
55 myStartTime = (double) myStart; | |
56 myEndTime = (double) myEnd; | |
57 | |
58 myTime = (myEndTime - myStartTime) / myEntriesTaken; | |
59 | |
60 System.out.println("Time per take: " + myTime); | |
61 | |
62 System.out.println("Do stop"); | |
63 | |
64 mySpace.stop(); | |
65 | |
66 } catch (Exception anE) { | |
67 System.err.println("Got exception :("); | |
68 anE.printStackTrace(System.err); | |
69 } | |
70 | |
71 } | |
72 | |
73 public static class TestEntry implements Entry { | |
74 public String rhubarb; | |
75 public Integer count; | |
76 | |
77 public TestEntry() { | |
78 } | |
79 | |
80 public void init() { | |
81 rhubarb = "blah"; | |
82 count = new Integer(5); | |
83 } | |
84 | |
85 public String toString() { | |
86 return super.toString() + ", " + rhubarb + ", " + count; | |
87 } | |
88 } | |
89 } |