PageRenderTime 16ms CodeModel.GetById 14ms app.highlight 0ms RepoModel.GetById 0ms app.codeStats 1ms

/thirdparty/breakpad/third_party/protobuf/protobuf/benchmarks/readme.txt

http://github.com/tomahawk-player/tomahawk
Plain Text | 50 lines | 37 code | 13 blank | 0 comment | 0 complexity | e994988f4a7e8d74c2c88f68e404c305 MD5 | raw file
 1Contents
 2--------
 3
 4This folder contains three kinds of file:
 5
 6- Code, such as ProtoBench.java, to build the benchmarking framework.
 7- Protocol buffer definitions (.proto files)
 8- Sample data files
 9
10If we end up with a lot of different benchmarks it may be worth
11separating these out info different directories, but while there are
12so few they might as well all be together.
13
14Running a benchmark (Java)
15--------------------------
16
171) Build protoc and the Java protocol buffer library. The examples
18   below assume a jar file (protobuf.jar) has been built and copied
19   into this directory.
20
212) Build ProtoBench:
22   $ javac -d tmp -cp protobuf.jar ProtoBench.java
23   
243) Generate code for the relevant benchmark protocol buffer, e.g.
25   $ protoc --java_out=tmp google_size.proto google_speed.proto
26   
274) Build the generated code, e.g.
28   $ cd tmp
29   $ javac -d . -cp ../protobuf.jar benchmarks/*.java
30           
315) Run the test. Arguments are given in pairs - the first argument
32   is the descriptor type; the second is the filename. For example:
33   $ java -cp .;../protobuf.jar com.google.protocolbuffers.ProtoBench
34          benchmarks.GoogleSize$SizeMessage1 ../google_message1.dat
35          benchmarks.GoogleSpeed$SpeedMessage1 ../google_message1.dat
36          benchmarks.GoogleSize$SizeMessage2 ../google_message2.dat
37          benchmarks.GoogleSpeed$SpeedMessage2 ../google_message2.dat
38          
396) Wait! Each test runs for around 30 seconds, and there are 6 tests
40   per class/data combination. The above command would therefore take
41   about 12 minutes to run.
42
43   
44Benchmarks available
45--------------------
46
47From Google:
48google_size.proto and google_speed.proto, messages
49google_message1.dat and google_message2.dat. The proto files are
50equivalent, but optimized differently.