aboutsummaryrefslogtreecommitdiffhomepage
path: root/third_party/protobuf/3.6.0/benchmarks/java/src/main/java/com/google/protobuf/ProtoCaliperBenchmark.java
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/protobuf/3.6.0/benchmarks/java/src/main/java/com/google/protobuf/ProtoCaliperBenchmark.java')
-rw-r--r--third_party/protobuf/3.6.0/benchmarks/java/src/main/java/com/google/protobuf/ProtoCaliperBenchmark.java232
1 files changed, 0 insertions, 232 deletions
diff --git a/third_party/protobuf/3.6.0/benchmarks/java/src/main/java/com/google/protobuf/ProtoCaliperBenchmark.java b/third_party/protobuf/3.6.0/benchmarks/java/src/main/java/com/google/protobuf/ProtoCaliperBenchmark.java
deleted file mode 100644
index 94568aea78..0000000000
--- a/third_party/protobuf/3.6.0/benchmarks/java/src/main/java/com/google/protobuf/ProtoCaliperBenchmark.java
+++ /dev/null
@@ -1,232 +0,0 @@
-
-package com.google.protobuf;
-
-import com.google.caliper.BeforeExperiment;
-import com.google.caliper.AfterExperiment;
-import com.google.caliper.Benchmark;
-import com.google.caliper.Param;
-import com.google.protobuf.ByteString;
-import com.google.protobuf.CodedOutputStream;
-import com.google.protobuf.ExtensionRegistry;
-import com.google.protobuf.Message;
-import com.google.protobuf.benchmarks.Benchmarks.BenchmarkDataset;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.BufferedWriter;
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.io.RandomAccessFile;
-import java.util.ArrayList;
-import java.util.List;
-
-public class ProtoCaliperBenchmark {
- public enum BenchmarkMessageType {
- GOOGLE_MESSAGE1_PROTO3 {
- @Override ExtensionRegistry getExtensionRegistry() { return ExtensionRegistry.newInstance(); }
- @Override
- Message getDefaultInstance() {
- return com.google.protobuf.benchmarks.BenchmarkMessage1Proto3.GoogleMessage1
- .getDefaultInstance();
- }
- },
- GOOGLE_MESSAGE1_PROTO2 {
- @Override ExtensionRegistry getExtensionRegistry() { return ExtensionRegistry.newInstance(); }
- @Override
- Message getDefaultInstance() {
- return com.google.protobuf.benchmarks.BenchmarkMessage1Proto2.GoogleMessage1
- .getDefaultInstance();
- }
- },
- GOOGLE_MESSAGE2 {
- @Override ExtensionRegistry getExtensionRegistry() { return ExtensionRegistry.newInstance(); }
- @Override
- Message getDefaultInstance() {
- return com.google.protobuf.benchmarks.BenchmarkMessage2.GoogleMessage2.getDefaultInstance();
- }
- },
- GOOGLE_MESSAGE3 {
- @Override
- ExtensionRegistry getExtensionRegistry() {
- ExtensionRegistry extensions = ExtensionRegistry.newInstance();
- com.google.protobuf.benchmarks.BenchmarkMessage38.registerAllExtensions(extensions);
- com.google.protobuf.benchmarks.BenchmarkMessage37.registerAllExtensions(extensions);
- com.google.protobuf.benchmarks.BenchmarkMessage36.registerAllExtensions(extensions);
- com.google.protobuf.benchmarks.BenchmarkMessage35.registerAllExtensions(extensions);
- com.google.protobuf.benchmarks.BenchmarkMessage34.registerAllExtensions(extensions);
- com.google.protobuf.benchmarks.BenchmarkMessage33.registerAllExtensions(extensions);
- com.google.protobuf.benchmarks.BenchmarkMessage32.registerAllExtensions(extensions);
- com.google.protobuf.benchmarks.BenchmarkMessage31.registerAllExtensions(extensions);
- com.google.protobuf.benchmarks.BenchmarkMessage3.registerAllExtensions(extensions);
- return extensions;
- }
- @Override
- Message getDefaultInstance() {
- return com.google.protobuf.benchmarks.BenchmarkMessage3.GoogleMessage3.getDefaultInstance();
- }
- },
- GOOGLE_MESSAGE4 {
- @Override
- ExtensionRegistry getExtensionRegistry() {
- ExtensionRegistry extensions = ExtensionRegistry.newInstance();
- com.google.protobuf.benchmarks.BenchmarkMessage43.registerAllExtensions(extensions);
- com.google.protobuf.benchmarks.BenchmarkMessage42.registerAllExtensions(extensions);
- com.google.protobuf.benchmarks.BenchmarkMessage41.registerAllExtensions(extensions);
- com.google.protobuf.benchmarks.BenchmarkMessage4.registerAllExtensions(extensions);
- return extensions;
- }
- @Override
- Message getDefaultInstance() {
- return com.google.protobuf.benchmarks.BenchmarkMessage4.GoogleMessage4.getDefaultInstance();
- }
- };
-
- abstract ExtensionRegistry getExtensionRegistry();
- abstract Message getDefaultInstance();
- }
-
- private BenchmarkMessageType benchmarkMessageType;
- @Param("")
- private String dataFile;
-
- private byte[] inputData;
- private BenchmarkDataset benchmarkDataset;
- private Message defaultMessage;
- private ExtensionRegistry extensions;
- private List<byte[]> inputDataList;
- private List<ByteArrayInputStream> inputStreamList;
- private List<ByteString> inputStringList;
- private List<Message> sampleMessageList;
-
- private BenchmarkMessageType getMessageType() throws IOException {
- if (benchmarkDataset.getMessageName().equals("benchmarks.proto3.GoogleMessage1")) {
- return BenchmarkMessageType.GOOGLE_MESSAGE1_PROTO3;
- } else if (benchmarkDataset.getMessageName().equals("benchmarks.proto2.GoogleMessage1")) {
- return BenchmarkMessageType.GOOGLE_MESSAGE1_PROTO2;
- } else if (benchmarkDataset.getMessageName().equals("benchmarks.proto2.GoogleMessage2")) {
- return BenchmarkMessageType.GOOGLE_MESSAGE2;
- } else if (benchmarkDataset.getMessageName().
- equals("benchmarks.google_message3.GoogleMessage3")) {
- return BenchmarkMessageType.GOOGLE_MESSAGE3;
- } else if (benchmarkDataset.getMessageName().
- equals("benchmarks.google_message4.GoogleMessage4")) {
- return BenchmarkMessageType.GOOGLE_MESSAGE4;
- } else {
- throw new IllegalStateException("Invalid DataFile! There's no testing message named "
- + benchmarkDataset.getMessageName());
- }
- }
-
- @BeforeExperiment
- void setUp() throws IOException {
- if (!dataFile.equals("")) {
- RandomAccessFile file = new RandomAccessFile(new File(dataFile), "r");
- inputData = new byte[(int) file.length()];
- file.readFully(inputData);
- benchmarkDataset = BenchmarkDataset.parseFrom(inputData);
- benchmarkMessageType = getMessageType();
- } else {
- inputData = new byte[0];
- benchmarkDataset = BenchmarkDataset.parseFrom(inputData);
- benchmarkMessageType = BenchmarkMessageType.GOOGLE_MESSAGE2;
- }
- defaultMessage = benchmarkMessageType.getDefaultInstance();
- extensions = benchmarkMessageType.getExtensionRegistry();
- inputDataList = new ArrayList<byte[]>();
- inputStreamList = new ArrayList<ByteArrayInputStream>();
- inputStringList = new ArrayList<ByteString>();
- sampleMessageList = new ArrayList<Message>();
-
- for (int i = 0; i < benchmarkDataset.getPayloadCount(); i++) {
- byte[] singleInputData = benchmarkDataset.getPayload(i).toByteArray();
- inputDataList.add(benchmarkDataset.getPayload(i).toByteArray());
- inputStreamList.add(new ByteArrayInputStream(
- benchmarkDataset.getPayload(i).toByteArray()));
- inputStringList.add(benchmarkDataset.getPayload(i));
- sampleMessageList.add(
- defaultMessage.newBuilderForType().mergeFrom(singleInputData, extensions).build());
- }
- }
-
-
- @Benchmark
- void serializeToByteString(int reps) throws IOException {
- if (sampleMessageList.size() == 0) {
- return;
- }
- for (int i = 0; i < reps; i++) {
- for (int j = 0; j < sampleMessageList.size(); j++) {
- sampleMessageList.get(j).toByteString();
- }
- }
- }
-
- @Benchmark
- void serializeToByteArray(int reps) throws IOException {
- if (sampleMessageList.size() == 0) {
- return;
- }
- for (int i = 0; i < reps; i++) {
- for (int j = 0; j < sampleMessageList.size(); j++) {
- sampleMessageList.get(j).toByteArray();
- }
- }
- }
-
- @Benchmark
- void serializeToMemoryStream(int reps) throws IOException {
- if (sampleMessageList.size() == 0) {
- return;
- }
- for (int i = 0; i < reps; i++) {
- for (int j = 0; j < sampleMessageList.size(); j++) {
- ByteArrayOutputStream output = new ByteArrayOutputStream();
- sampleMessageList.get(j).writeTo(output);
- }
- }
- }
-
- @Benchmark
- void deserializeFromByteString(int reps) throws IOException {
- if (inputStringList.size() == 0) {
- return;
- }
- for (int i = 0; i < reps; i++) {
- for (int j = 0; j < inputStringList.size(); j++) {
- benchmarkMessageType.getDefaultInstance().getParserForType().parseFrom(
- inputStringList.get(j), extensions);
- }
- }
- }
-
- @Benchmark
- void deserializeFromByteArray(int reps) throws IOException {
- if (inputDataList.size() == 0) {
- return;
- }
- for (int i = 0; i < reps; i++) {
- for (int j = 0; j < inputDataList.size(); j++) {
- benchmarkMessageType.getDefaultInstance().getParserForType().parseFrom(
- inputDataList.get(j), extensions);
- }
- }
- }
-
- @Benchmark
- void deserializeFromMemoryStream(int reps) throws IOException {
- if (inputStreamList.size() == 0) {
- return;
- }
- for (int i = 0; i < reps; i++) {
- for (int j = 0; j < inputStreamList.size(); j++) {
- benchmarkMessageType.getDefaultInstance().getParserForType().parseFrom(
- inputStreamList.get(j), extensions);
- inputStreamList.get(j).reset();
- }
- }
- }
-}
-
-