Home | History | Annotate | Download | only in benchmarks
      1 
      2 # Protocol Buffers Benchmarks
      3 
      4 This directory contains benchmarking schemas and data sets that you
      5 can use to test a variety of performance scenarios against your
      6 protobuf language runtime.
      7 
      8 The schema for the datasets is described in `benchmarks.proto`.
      9 
     10 Generate the data sets like so:
     11 
     12 ```
     13 $ make
     14 $ ./generate-datasets
     15 Wrote dataset: dataset.google_message1_proto3.pb
     16 Wrote dataset: dataset.google_message1_proto2.pb
     17 Wrote dataset: dataset.google_message2.pb
     18 $
     19 ```
     20 
     21 Each data set will be written to its own file.  Benchmarks will
     22 likely want to run several benchmarks against each data set (parse,
     23 serialize, possibly JSON, possibly using different APIs, etc).
     24 
     25 We would like to add more data sets.  In general we will favor data sets
     26 that make the overall suite diverse without being too large or having
     27 too many similar tests.  Ideally everyone can run through the entire
     28 suite without the test run getting too long.
     29