Add dependencies locally
This commit is contained in:
664
deps/protobuf/benchmarks/Makefile.am
vendored
Normal file
664
deps/protobuf/benchmarks/Makefile.am
vendored
Normal file
@ -0,0 +1,664 @@
|
||||
benchmarks_protoc_inputs_benchmark_wrapper = \
|
||||
benchmarks.proto
|
||||
|
||||
benchmarks_protoc_inputs = \
|
||||
datasets/google_message1/proto3/benchmark_message1_proto3.proto
|
||||
|
||||
benchmarks_protoc_inputs_proto2 = \
|
||||
datasets/google_message1/proto2/benchmark_message1_proto2.proto \
|
||||
datasets/google_message2/benchmark_message2.proto \
|
||||
datasets/google_message3/benchmark_message3.proto \
|
||||
datasets/google_message3/benchmark_message3_1.proto \
|
||||
datasets/google_message3/benchmark_message3_2.proto \
|
||||
datasets/google_message3/benchmark_message3_3.proto \
|
||||
datasets/google_message3/benchmark_message3_4.proto \
|
||||
datasets/google_message3/benchmark_message3_5.proto \
|
||||
datasets/google_message3/benchmark_message3_6.proto \
|
||||
datasets/google_message3/benchmark_message3_7.proto \
|
||||
datasets/google_message3/benchmark_message3_8.proto \
|
||||
datasets/google_message4/benchmark_message4.proto \
|
||||
datasets/google_message4/benchmark_message4_1.proto \
|
||||
datasets/google_message4/benchmark_message4_2.proto \
|
||||
datasets/google_message4/benchmark_message4_3.proto
|
||||
|
||||
make_tmp_dir:
|
||||
mkdir -p 'tmp/java/src/main/java'
|
||||
touch make_tmp_dir
|
||||
|
||||
|
||||
# We have to cd to $(srcdir) before executing protoc because $(protoc_inputs) is
|
||||
# relative to srcdir, which may not be the same as the current directory when
|
||||
# building out-of-tree.
|
||||
protoc_middleman: make_tmp_dir $(top_srcdir)/src/protoc$(EXEEXT) $(benchmarks_protoc_inputs) $(well_known_type_protoc_inputs) $(benchmarks_protoc_inputs_benchmark_wrapper)
|
||||
oldpwd=`pwd` && ( cd $(srcdir) && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$(top_srcdir)/src --cpp_out=$$oldpwd/cpp --java_out=$$oldpwd/tmp/java/src/main/java --python_out=$$oldpwd/tmp $(benchmarks_protoc_inputs) $(benchmarks_protoc_inputs_benchmark_wrapper) )
|
||||
touch protoc_middleman
|
||||
|
||||
protoc_middleman2: make_tmp_dir $(top_srcdir)/src/protoc$(EXEEXT) $(benchmarks_protoc_inputs_proto2) $(well_known_type_protoc_inputs)
|
||||
oldpwd=`pwd` && ( cd $(srcdir) && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$(top_srcdir)/src --cpp_out=$$oldpwd/cpp --java_out=$$oldpwd/tmp/java/src/main/java --python_out=$$oldpwd/tmp $(benchmarks_protoc_inputs_proto2) )
|
||||
touch protoc_middleman2
|
||||
|
||||
all_data = $$(find $$(cd $(srcdir) && pwd) -type f -name "dataset.*.pb" -not -path "$$(cd $(srcdir) && pwd)/tmp/*")
|
||||
|
||||
############# CPP RULES ##############
|
||||
|
||||
benchmarks_protoc_outputs = \
|
||||
cpp/benchmarks.pb.cc \
|
||||
cpp/datasets/google_message1/proto3/benchmark_message1_proto3.pb.cc
|
||||
|
||||
benchmarks_protoc_outputs_header = \
|
||||
cpp/benchmarks.pb.h \
|
||||
cpp/datasets/google_message1/proto3/benchmark_message1_proto3.pb.h
|
||||
|
||||
benchmarks_protoc_outputs_proto2_header = \
|
||||
cpp/datasets/google_message1/proto2/benchmark_message1_proto2.pb.h \
|
||||
cpp/datasets/google_message2/benchmark_message2.pb.h \
|
||||
cpp/datasets/google_message3/benchmark_message3.pb.h \
|
||||
cpp/datasets/google_message3/benchmark_message3_1.pb.h \
|
||||
cpp/datasets/google_message3/benchmark_message3_2.pb.h \
|
||||
cpp/datasets/google_message3/benchmark_message3_3.pb.h \
|
||||
cpp/datasets/google_message3/benchmark_message3_4.pb.h \
|
||||
cpp/datasets/google_message3/benchmark_message3_5.pb.h \
|
||||
cpp/datasets/google_message3/benchmark_message3_6.pb.h \
|
||||
cpp/datasets/google_message3/benchmark_message3_7.pb.h \
|
||||
cpp/datasets/google_message3/benchmark_message3_8.pb.h \
|
||||
cpp/datasets/google_message4/benchmark_message4.pb.h \
|
||||
cpp/datasets/google_message4/benchmark_message4_1.pb.h \
|
||||
cpp/datasets/google_message4/benchmark_message4_2.pb.h \
|
||||
cpp/datasets/google_message4/benchmark_message4_3.pb.h
|
||||
|
||||
benchmarks_protoc_outputs_proto2 = \
|
||||
cpp/datasets/google_message1/proto2/benchmark_message1_proto2.pb.cc \
|
||||
cpp/datasets/google_message2/benchmark_message2.pb.cc \
|
||||
cpp/datasets/google_message3/benchmark_message3.pb.cc \
|
||||
cpp/datasets/google_message3/benchmark_message3_1.pb.cc \
|
||||
cpp/datasets/google_message3/benchmark_message3_2.pb.cc \
|
||||
cpp/datasets/google_message3/benchmark_message3_3.pb.cc \
|
||||
cpp/datasets/google_message3/benchmark_message3_4.pb.cc \
|
||||
cpp/datasets/google_message3/benchmark_message3_5.pb.cc \
|
||||
cpp/datasets/google_message3/benchmark_message3_6.pb.cc \
|
||||
cpp/datasets/google_message3/benchmark_message3_7.pb.cc \
|
||||
cpp/datasets/google_message3/benchmark_message3_8.pb.cc \
|
||||
cpp/datasets/google_message4/benchmark_message4.pb.cc \
|
||||
cpp/datasets/google_message4/benchmark_message4_1.pb.cc \
|
||||
cpp/datasets/google_message4/benchmark_message4_2.pb.cc \
|
||||
cpp/datasets/google_message4/benchmark_message4_3.pb.cc
|
||||
|
||||
|
||||
$(benchmarks_protoc_outputs): protoc_middleman
|
||||
$(benchmarks_protoc_outputs_header): protoc_middleman
|
||||
$(benchmarks_protoc_outputs_proto2): protoc_middleman2
|
||||
$(benchmarks_protoc_outputs_proto2_header): protoc_middleman2
|
||||
|
||||
initialize_submodule:
|
||||
oldpwd=`pwd`
|
||||
cd $(top_srcdir) && git submodule update --init -r third_party/benchmark && cd third_party/benchmark \
|
||||
&& cmake -DCMAKE_BUILD_TYPE=Release && make
|
||||
cd $$oldpwd
|
||||
touch initialize_submodule
|
||||
|
||||
$(top_srcdir)/third_party/benchmark/src/libbenchmark.a: initialize_submodule
|
||||
|
||||
AM_CXXFLAGS = $(NO_OPT_CXXFLAGS) $(PROTOBUF_OPT_FLAG) -Wall -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare
|
||||
|
||||
bin_PROGRAMS = cpp-benchmark
|
||||
|
||||
cpp_benchmark_LDADD = $(top_srcdir)/src/libprotobuf.la $(top_srcdir)/third_party/benchmark/src/libbenchmark.a
|
||||
cpp_benchmark_SOURCES = cpp/cpp_benchmark.cc
|
||||
cpp_benchmark_CPPFLAGS = -I$(top_srcdir)/src -I$(srcdir)/cpp -I$(top_srcdir)/third_party/benchmark/include
|
||||
# Explicit deps because BUILT_SOURCES are only done before a "make all/check"
|
||||
# so a direct "make test_cpp" could fail if parallel enough.
|
||||
# See: https://www.gnu.org/software/automake/manual/html_node/Built-Sources-Example.html#Recording-Dependencies-manually
|
||||
cpp/cpp_benchmark-cpp_benchmark.$(OBJEXT): $(benchmarks_protoc_outputs) $(benchmarks_protoc_outputs_proto2) $(benchmarks_protoc_outputs_header) $(benchmarks_protoc_outputs_proto2_header) $(top_srcdir)/src/libprotobuf.la $(top_srcdir)/third_party/benchmark/src/libbenchmark.a
|
||||
cpp/benchmark-cpp_benchmark.$(OBJEXT): $(benchmarks_protoc_outputs) $(benchmarks_protoc_outputs_proto2) $(benchmarks_protoc_outputs_header) $(benchmarks_protoc_outputs_proto2_header) $(top_srcdir)/src/libprotobuf.la $(top_srcdir)/third_party/benchmark/src/libbenchmark.a
|
||||
nodist_cpp_benchmark_SOURCES = \
|
||||
$(benchmarks_protoc_outputs) \
|
||||
$(benchmarks_protoc_outputs_proto2) \
|
||||
$(benchmarks_protoc_outputs_proto2_header) \
|
||||
$(benchmarks_protoc_outputs_header)
|
||||
|
||||
cpp: protoc_middleman protoc_middleman2 cpp-benchmark initialize_submodule
|
||||
./cpp-benchmark $(all_data)
|
||||
|
||||
############ CPP RULES END ############
|
||||
|
||||
############# JAVA RULES ##############
|
||||
|
||||
java_benchmark_testing_files = \
|
||||
java/src/main/java/com/google/protobuf/ProtoCaliperBenchmark.java
|
||||
|
||||
javac_middleman: $(java_benchmark_testing_files) protoc_middleman protoc_middleman2
|
||||
cp -r $(srcdir)/java tmp
|
||||
mkdir -p tmp/java/lib
|
||||
cp $(top_srcdir)/java/core/target/*.jar tmp/java/lib/protobuf-java.jar
|
||||
cd tmp/java && mvn clean compile assembly:single -Dprotobuf.version=$(PACKAGE_VERSION) && cd ../..
|
||||
@touch javac_middleman
|
||||
|
||||
java-benchmark: javac_middleman
|
||||
@echo "Writing shortcut script java-benchmark..."
|
||||
@echo '#! /bin/bash' > java-benchmark
|
||||
@echo 'all_data=""' >> java-benchmark
|
||||
@echo 'conf=()' >> java-benchmark
|
||||
@echo 'data_files=""' >> java-benchmark
|
||||
@echo 'for arg in $$@; do if [[ $${arg:0:1} == "-" ]]; then conf+=($$arg); else data_files+="$$arg,"; fi; done' >> java-benchmark
|
||||
@echo 'java -cp '\"tmp/java/target/*:$(top_srcdir)/java/core/target/*:$(top_srcdir)/java/util/target/*\"" \\" >>java-benchmark
|
||||
@echo ' com.google.caliper.runner.CaliperMain com.google.protobuf.ProtoCaliperBenchmark -i runtime '"\\" >> java-benchmark
|
||||
@echo ' -b serializeToByteArray,serializeToMemoryStream,deserializeFromByteArray,deserializeFromMemoryStream '"\\" >> java-benchmark
|
||||
@echo ' -DdataFile=$${data_files:0:-1} $${conf[*]}' >> java-benchmark
|
||||
@chmod +x java-benchmark
|
||||
|
||||
java: protoc_middleman protoc_middleman2 java-benchmark
|
||||
./java-benchmark $(all_data)
|
||||
|
||||
############# JAVA RULES END ##############
|
||||
|
||||
|
||||
############# PYTHON RULES ##############
|
||||
|
||||
python_add_init: protoc_middleman protoc_middleman2
|
||||
all_file=`find tmp -type f -regex '.*\.py'` && \
|
||||
for file in $${all_file[@]}; do \
|
||||
path="$${file%/*}"; \
|
||||
while true; do \
|
||||
touch "$$path/__init__.py" && chmod +x "$$path/__init__.py"; \
|
||||
if [[ $$path != *"/"* ]]; then break; fi; \
|
||||
path=$${path%/*}; \
|
||||
done \
|
||||
done
|
||||
|
||||
python_cpp_pkg_flags = `pkg-config --cflags --libs python3`
|
||||
|
||||
lib_LTLIBRARIES = libbenchmark_messages.la
|
||||
libbenchmark_messages_la_SOURCES = python/python_benchmark_messages.cc
|
||||
libbenchmark_messages_la_LIBADD = $(top_srcdir)/src/.libs/libprotobuf.la
|
||||
libbenchmark_messages_la_LDFLAGS = -version-info 1:0:0 -export-dynamic
|
||||
libbenchmark_messages_la_CPPFLAGS = -I$(top_srcdir)/src -I$(srcdir)/cpp $(python_cpp_pkg_flags)
|
||||
libbenchmark_messages_la-python_benchmark_messages.$(OBJEXT): $(benchmarks_protoc_outputs_header) $(benchmarks_protoc_outputs_proto2_header) $(benchmarks_protoc_outputs) $(benchmarks_protoc_outputs_proto2)
|
||||
nodist_libbenchmark_messages_la_SOURCES = \
|
||||
$(benchmarks_protoc_outputs) \
|
||||
$(benchmarks_protoc_outputs_proto2) \
|
||||
$(benchmarks_protoc_outputs_proto2_header) \
|
||||
$(benchmarks_protoc_outputs_header)
|
||||
|
||||
python-pure-python-benchmark: python_add_init
|
||||
@echo "Writing shortcut script python-pure-python-benchmark..."
|
||||
@echo '#! /bin/bash' > python-pure-python-benchmark
|
||||
@echo export LD_LIBRARY_PATH=$(top_srcdir)/src/.libs >> python-pure-python-benchmark
|
||||
@echo export DYLD_LIBRARY_PATH=$(top_srcdir)/src/.libs >> python-pure-python-benchmark
|
||||
@echo export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=\'python\' >> python-pure-python-benchmark
|
||||
@echo cp $(srcdir)/python/py_benchmark.py tmp >> python-pure-python-benchmark
|
||||
@echo python3 tmp/py_benchmark.py '$$@' >> python-pure-python-benchmark
|
||||
@chmod +x python-pure-python-benchmark
|
||||
|
||||
python-cpp-reflection-benchmark: python_add_init
|
||||
@echo "Writing shortcut script python-cpp-reflection-benchmark..."
|
||||
@echo '#! /bin/bash' > python-cpp-reflection-benchmark
|
||||
@echo export LD_LIBRARY_PATH=$(top_srcdir)/src/.libs >> python-cpp-reflection-benchmark
|
||||
@echo export DYLD_LIBRARY_PATH=$(top_srcdir)/src/.libs >> python-cpp-reflection-benchmark
|
||||
@echo export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=\'cpp\' >> python-cpp-reflection-benchmark
|
||||
@echo cp $(srcdir)/python/py_benchmark.py tmp >> python-cpp-reflection-benchmark
|
||||
@echo python3 tmp/py_benchmark.py '$$@' >> python-cpp-reflection-benchmark
|
||||
@chmod +x python-cpp-reflection-benchmark
|
||||
|
||||
python-cpp-generated-code-benchmark: python_add_init libbenchmark_messages.la
|
||||
@echo "Writing shortcut script python-cpp-generated-code-benchmark..."
|
||||
@echo '#! /bin/bash' > python-cpp-generated-code-benchmark
|
||||
@echo export LD_LIBRARY_PATH=$(top_srcdir)/src/.libs >> python-cpp-generated-code-benchmark
|
||||
@echo export DYLD_LIBRARY_PATH=$(top_srcdir)/src/.libs >> python-cpp-generated-code-benchmark
|
||||
@echo export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=\'cpp\' >> python-cpp-generated-code-benchmark
|
||||
@echo cp $(srcdir)/python/py_benchmark.py tmp >> python-cpp-generated-code-benchmark
|
||||
@echo python3 tmp/py_benchmark.py --cpp_generated '$$@' >> python-cpp-generated-code-benchmark
|
||||
@chmod +x python-cpp-generated-code-benchmark
|
||||
|
||||
python-pure-python: python-pure-python-benchmark
|
||||
./python-pure-python-benchmark $(all_data)
|
||||
|
||||
python-cpp-reflection: python-cpp-reflection-benchmark
|
||||
./python-cpp-reflection-benchmark $(all_data)
|
||||
|
||||
python-cpp-generated-code: python-cpp-generated-code-benchmark
|
||||
./python-cpp-generated-code-benchmark $(all_data)
|
||||
|
||||
############# PYTHON RULES END ##############
|
||||
|
||||
############# GO RULES BEGIN ##############
|
||||
|
||||
benchmarks_protoc_inputs_proto2_message1 = \
|
||||
datasets/google_message1/proto2/benchmark_message1_proto2.proto
|
||||
|
||||
benchmarks_protoc_inputs_proto2_message2 = \
|
||||
datasets/google_message2/benchmark_message2.proto
|
||||
|
||||
benchmarks_protoc_inputs_proto2_message3 = \
|
||||
datasets/google_message3/benchmark_message3.proto \
|
||||
datasets/google_message3/benchmark_message3_1.proto \
|
||||
datasets/google_message3/benchmark_message3_2.proto \
|
||||
datasets/google_message3/benchmark_message3_3.proto \
|
||||
datasets/google_message3/benchmark_message3_4.proto \
|
||||
datasets/google_message3/benchmark_message3_5.proto \
|
||||
datasets/google_message3/benchmark_message3_6.proto \
|
||||
datasets/google_message3/benchmark_message3_7.proto \
|
||||
datasets/google_message3/benchmark_message3_8.proto
|
||||
|
||||
benchmarks_protoc_inputs_proto2_message4 = \
|
||||
datasets/google_message4/benchmark_message4.proto \
|
||||
datasets/google_message4/benchmark_message4_1.proto \
|
||||
datasets/google_message4/benchmark_message4_2.proto \
|
||||
datasets/google_message4/benchmark_message4_3.proto
|
||||
|
||||
go_protoc_middleman: make_tmp_dir $(top_srcdir)/src/protoc$(EXEEXT) $(benchmarks_protoc_inputs) $(well_known_type_protoc_inputs) $(benchmarks_protoc_inputs_proto2_message1) $(benchmarks_protoc_inputs_proto2_message2) $(benchmarks_protoc_inputs_proto2_message3) $(benchmarks_protoc_inputs_proto2_message4) $(well_known_type_protoc_inputs)
|
||||
oldpwd=`pwd` && ( cd $(srcdir) && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$(top_srcdir)/src --go_out=$$oldpwd/tmp $(benchmarks_protoc_inputs) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir) && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$(top_srcdir)/src --go_out=$$oldpwd/tmp $(benchmarks_protoc_inputs_benchmark_wrapper) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir) && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$(top_srcdir)/src --go_out=$$oldpwd/tmp $(benchmarks_protoc_inputs_proto2_message1) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir) && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$(top_srcdir)/src --go_out=$$oldpwd/tmp $(benchmarks_protoc_inputs_proto2_message2) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir) && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$(top_srcdir)/src --go_out=$$oldpwd/tmp $(benchmarks_protoc_inputs_proto2_message3) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir) && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$(top_srcdir)/src --go_out=$$oldpwd/tmp $(benchmarks_protoc_inputs_proto2_message4) )
|
||||
touch go_protoc_middleman
|
||||
|
||||
go-benchmark: go_protoc_middleman
|
||||
@echo "Writing shortcut script go-benchmark..."
|
||||
@echo '#! /bin/bash' > go-benchmark
|
||||
@echo 'cd $(srcdir)/go' >> go-benchmark
|
||||
@echo 'all_data=""' >> go-benchmark
|
||||
@echo 'conf=()' >> go-benchmark
|
||||
@echo 'data_files=()' >> go-benchmark
|
||||
@echo 'for arg in $$@; do if [[ $${arg:0:1} == "-" ]]; then conf+=($$arg); else data_files+=("$$arg"); fi; done' >> go-benchmark
|
||||
@echo 'go test -bench=. $${conf[*]} -- $${data_files[*]}' >> go-benchmark
|
||||
@echo 'cd ..' >> go-benchmark
|
||||
@chmod +x go-benchmark
|
||||
|
||||
go: go_protoc_middleman go-benchmark
|
||||
./go-benchmark $(all_data)
|
||||
|
||||
############# GO RULES END ##############
|
||||
|
||||
############# GOGO RULES BEGIN ############
|
||||
|
||||
cpp_no_group_benchmarks_protoc_outputs_header = \
|
||||
gogo/cpp_no_group/benchmarks.pb.h \
|
||||
gogo/cpp_no_group/datasets/google_message1/proto3/benchmark_message1_proto3.pb.h
|
||||
|
||||
cpp_no_group_benchmarks_protoc_outputs = \
|
||||
gogo/cpp_no_group/benchmarks.pb.cc \
|
||||
gogo/cpp_no_group/datasets/google_message1/proto3/benchmark_message1_proto3.pb.cc
|
||||
|
||||
cpp_no_group_benchmarks_protoc_outputs_proto2_header = \
|
||||
gogo/cpp_no_group/datasets/google_message1/proto2/benchmark_message1_proto2.pb.h \
|
||||
gogo/cpp_no_group/datasets/google_message2/benchmark_message2.pb.h \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3.pb.h \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3_1.pb.h \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3_2.pb.h \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3_3.pb.h \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3_4.pb.h \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3_5.pb.h \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3_6.pb.h \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3_7.pb.h \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3_8.pb.h \
|
||||
gogo/cpp_no_group/datasets/google_message4/benchmark_message4.pb.h \
|
||||
gogo/cpp_no_group/datasets/google_message4/benchmark_message4_1.pb.h \
|
||||
gogo/cpp_no_group/datasets/google_message4/benchmark_message4_2.pb.h \
|
||||
gogo/cpp_no_group/datasets/google_message4/benchmark_message4_3.pb.h
|
||||
|
||||
cpp_no_group_benchmarks_protoc_outputs_proto2 = \
|
||||
gogo/cpp_no_group/datasets/google_message1/proto2/benchmark_message1_proto2.pb.cc \
|
||||
gogo/cpp_no_group/datasets/google_message2/benchmark_message2.pb.cc \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3.pb.cc \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3_1.pb.cc \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3_2.pb.cc \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3_3.pb.cc \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3_4.pb.cc \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3_5.pb.cc \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3_6.pb.cc \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3_7.pb.cc \
|
||||
gogo/cpp_no_group/datasets/google_message3/benchmark_message3_8.pb.cc \
|
||||
gogo/cpp_no_group/datasets/google_message4/benchmark_message4.pb.cc \
|
||||
gogo/cpp_no_group/datasets/google_message4/benchmark_message4_1.pb.cc \
|
||||
gogo/cpp_no_group/datasets/google_message4/benchmark_message4_2.pb.cc \
|
||||
gogo/cpp_no_group/datasets/google_message4/benchmark_message4_3.pb.cc
|
||||
|
||||
$(cpp_no_group_benchmarks_protoc_outputs): cpp_no_group_protoc_middleman
|
||||
$(cpp_no_group_benchmarks_protoc_outputs_header): cpp_no_group_protoc_middleman
|
||||
$(cpp_no_group_benchmarks_protoc_outputs_proto2): cpp_no_group_protoc_middleman
|
||||
$(cpp_no_group_benchmarks_protoc_outputs_proto2_header): cpp_no_group_protoc_middleman
|
||||
|
||||
generate_cpp_no_group_benchmark_code:
|
||||
cp $(srcdir)/cpp/cpp_benchmark.cc gogo/cpp_no_group/cpp_benchmark.cc
|
||||
sed -i -e "s/\#include \"datasets/\#include \"gogo\/cpp_no_group\/datasets/g" gogo/cpp_no_group/cpp_benchmark.cc
|
||||
sed -i -e "s/\#include \"benchmarks.pb.h/\#include \"gogo\/cpp_no_group\/benchmarks.pb.h/g" gogo/cpp_no_group/cpp_benchmark.cc
|
||||
touch generate_cpp_no_group_benchmark_code
|
||||
|
||||
bin_PROGRAMS += cpp-no-group-benchmark
|
||||
cpp_no_group_benchmark_LDADD = $(top_srcdir)/src/libprotobuf.la $(top_srcdir)/third_party/benchmark/src/libbenchmark.a
|
||||
cpp_no_group_benchmark_SOURCES = gogo/cpp_no_group/cpp_benchmark.cc
|
||||
cpp_no_group_benchmark_CPPFLAGS = -I$(top_srcdir)/src -I$(srcdir)/gogo/cpp_no_group -I$(top_srcdir)/third_party/benchmark/include
|
||||
# Explicit deps because BUILT_SOURCES are only done before a "make all/check"
|
||||
# so a direct "make test_cpp" could fail if parallel enough.
|
||||
# See: https://www.gnu.org/software/automake/manual/html_node/Built-Sources-Example.html#Recording-Dependencies-manually
|
||||
gogo/cpp_no_group/cpp_no_group_benchmark-cpp_benchmark.$(OBJEXT): $(cpp_no_group_benchmarks_protoc_outputs) $(cpp_no_group_benchmarks_protoc_outputs_proto2) $(cpp_no_group_benchmarks_protoc_outputs_header) \
|
||||
$(cpp_no_group_benchmarks_protoc_outputs_proto2_header) $(top_srcdir)/third_party/benchmark/src/libbenchmark.a generate_cpp_no_group_benchmark_code
|
||||
gogo/cpp_no_group/cpp_benchmark.cc: generate_cpp_no_group_benchmark_code
|
||||
nodist_cpp_no_group_benchmark_SOURCES = \
|
||||
$(cpp_no_group_benchmarks_protoc_outputs_proto2) \
|
||||
$(cpp_no_group_benchmarks_protoc_outputs) \
|
||||
$(cpp_no_group_benchmarks_protoc_outputs_header) \
|
||||
$(cpp_no_group_benchmarks_protoc_outputs_proto2_header)
|
||||
|
||||
cpp_no_group: cpp_no_group_protoc_middleman generate_gogo_data cpp-no-group-benchmark
|
||||
./cpp-no-group-benchmark $(gogo_data)
|
||||
|
||||
gogo_proto_middleman: protoc-gen-gogoproto
|
||||
mkdir -p "tmp/gogo_proto"
|
||||
oldpwd=`pwd` && ( cd $(srcdir) && $$oldpwd/../src/protoc$(EXEEXT) -I$(srcdir) -I$(top_srcdir) --plugin=protoc-gen-gogoproto --gogoproto_out=$$oldpwd/tmp/gogo_proto $(benchmarks_protoc_inputs) $(benchmarks_protoc_inputs_benchmark_wrapper) $(benchmarks_protoc_inputs_proto2) )
|
||||
touch gogo_proto_middleman
|
||||
|
||||
gogo_data = $$(for data in $(all_data); do echo "tmp/gogo_data$${data\#$(srcdir)}"; done | xargs)
|
||||
|
||||
generate_gogo_data: protoc_middleman protoc_middleman2 gogo-data-scrubber
|
||||
mkdir -p `dirname $(gogo_data)`
|
||||
./gogo-data-scrubber $(all_data) $(gogo_data)
|
||||
touch generate_gogo_data
|
||||
|
||||
make_tmp_dir_gogo:
|
||||
mkdir -p tmp/go_no_group/benchmark_code
|
||||
mkdir -p tmp/gogofast/benchmark_code
|
||||
mkdir -p tmp/gogofaster/benchmark_code
|
||||
mkdir -p tmp/gogoslick/benchmark_code
|
||||
touch make_tmp_dir_gogo
|
||||
|
||||
go_no_group_protoc_middleman: make_tmp_dir_gogo $(top_srcdir)/src/protoc$(EXEEXT) gogo_proto_middleman $(well_known_type_protoc_inputs)
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --go_out=$$oldpwd/tmp/go_no_group $(benchmarks_protoc_inputs) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --go_out=$$oldpwd/tmp/go_no_group $(benchmarks_protoc_inputs_benchmark_wrapper) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --go_out=$$oldpwd/tmp/go_no_group $(benchmarks_protoc_inputs_proto2_message1) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --go_out=$$oldpwd/tmp/go_no_group $(benchmarks_protoc_inputs_proto2_message2) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --go_out=$$oldpwd/tmp/go_no_group $(benchmarks_protoc_inputs_proto2_message3) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --go_out=$$oldpwd/tmp/go_no_group $(benchmarks_protoc_inputs_proto2_message4) )
|
||||
touch go_no_group_protoc_middleman
|
||||
|
||||
cpp_no_group_protoc_middleman: make_tmp_dir_gogo $(top_srcdir)/src/protoc$(EXEEXT) gogo_proto_middleman $(well_known_type_protoc_inputs)
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --cpp_out=$$oldpwd/gogo/cpp_no_group $(benchmarks_protoc_inputs) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --cpp_out=$$oldpwd/gogo/cpp_no_group $(benchmarks_protoc_inputs_benchmark_wrapper) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --cpp_out=$$oldpwd/gogo/cpp_no_group $(benchmarks_protoc_inputs_proto2_message1) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --cpp_out=$$oldpwd/gogo/cpp_no_group $(benchmarks_protoc_inputs_proto2_message2) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --cpp_out=$$oldpwd/gogo/cpp_no_group $(benchmarks_protoc_inputs_proto2_message3) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --cpp_out=$$oldpwd/gogo/cpp_no_group $(benchmarks_protoc_inputs_proto2_message4) )
|
||||
touch cpp_no_group_protoc_middleman
|
||||
|
||||
gogofast_protoc_middleman: make_tmp_dir_gogo $(top_srcdir)/src/protoc$(EXEEXT) gogo_proto_middleman $(well_known_type_protoc_inputs)
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogofast_out=$$oldpwd/tmp/gogofast $(benchmarks_protoc_inputs) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogofast_out=$$oldpwd/tmp/gogofast $(benchmarks_protoc_inputs_benchmark_wrapper) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogofast_out=$$oldpwd/tmp/gogofast $(benchmarks_protoc_inputs_proto2_message1) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogofast_out=$$oldpwd/tmp/gogofast $(benchmarks_protoc_inputs_proto2_message2) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogofast_out=$$oldpwd/tmp/gogofast $(benchmarks_protoc_inputs_proto2_message3) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogofast_out=$$oldpwd/tmp/gogofast $(benchmarks_protoc_inputs_proto2_message4) )
|
||||
touch gogofast_protoc_middleman
|
||||
|
||||
gogofaster_protoc_middleman: make_tmp_dir_gogo $(top_srcdir)/src/protoc$(EXEEXT) gogo_proto_middleman $(well_known_type_protoc_inputs)
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogofaster_out=$$oldpwd/tmp/gogofaster $(benchmarks_protoc_inputs) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogofaster_out=$$oldpwd/tmp/gogofaster $(benchmarks_protoc_inputs_benchmark_wrapper) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogofaster_out=$$oldpwd/tmp/gogofaster $(benchmarks_protoc_inputs_proto2_message1) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogofaster_out=$$oldpwd/tmp/gogofaster $(benchmarks_protoc_inputs_proto2_message2) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogofaster_out=$$oldpwd/tmp/gogofaster $(benchmarks_protoc_inputs_proto2_message3) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogofaster_out=$$oldpwd/tmp/gogofaster $(benchmarks_protoc_inputs_proto2_message4) )
|
||||
touch gogofaster_protoc_middleman
|
||||
|
||||
gogoslick_protoc_middleman: make_tmp_dir_gogo $(top_srcdir)/src/protoc$(EXEEXT) gogo_proto_middleman $(well_known_type_protoc_inputs)
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogoslick_out=$$oldpwd/tmp/gogoslick $(benchmarks_protoc_inputs) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogoslick_out=$$oldpwd/tmp/gogoslick $(benchmarks_protoc_inputs_benchmark_wrapper) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogoslick_out=$$oldpwd/tmp/gogoslick $(benchmarks_protoc_inputs_proto2_message1) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogoslick_out=$$oldpwd/tmp/gogoslick $(benchmarks_protoc_inputs_proto2_message2) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogoslick_out=$$oldpwd/tmp/gogoslick $(benchmarks_protoc_inputs_proto2_message3) )
|
||||
oldpwd=`pwd` && ( cd $(srcdir)/tmp/gogo_proto && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$$oldpwd/$(top_srcdir)/src --gogoslick_out=$$oldpwd/tmp/gogoslick $(benchmarks_protoc_inputs_proto2_message4) )
|
||||
touch gogoslick_protoc_middleman
|
||||
|
||||
generate-gogo-benchmark-code:
|
||||
@echo '#! /bin/bash' > generate-gogo-benchmark-code
|
||||
@echo 'cp $(srcdir)/go/go_benchmark_test.go tmp/$$1/benchmark_code/$$1_benchmark1_test.go' >> generate-gogo-benchmark-code
|
||||
@echo 'sed -i -e "s/\.\.\/tmp/../g" tmp/$$1/benchmark_code/$$1_benchmark1_test.go' >> generate-gogo-benchmark-code
|
||||
@echo 'sed -i -e "s/b\.Run(\"\(.*\)\"/b.Run(\"\1\_$$1\"/g" tmp/$$1/benchmark_code/$$1_benchmark1_test.go' >> generate-gogo-benchmark-code
|
||||
@echo 'if [[ $$2 == 1 ]]; then sed -i -e "s/github\.com\/golang/github.com\/gogo/g" tmp/$$1/benchmark_code/$$1_benchmark1_test.go; fi ' >> generate-gogo-benchmark-code
|
||||
@chmod +x generate-gogo-benchmark-code
|
||||
|
||||
generate_all_gogo_benchmark_code: generate-gogo-benchmark-code make_tmp_dir_gogo
|
||||
./generate-gogo-benchmark-code go_no_group 0
|
||||
./generate-gogo-benchmark-code gogofast 1
|
||||
./generate-gogo-benchmark-code gogofaster 1
|
||||
./generate-gogo-benchmark-code gogoslick 1
|
||||
|
||||
gogo-benchmark:
|
||||
@echo "Writing shortcut script gogo-benchmark..."
|
||||
@echo '#! /bin/bash' > gogo-benchmark
|
||||
@echo 'cd tmp/$$1/benchmark_code' >> gogo-benchmark
|
||||
@echo 'shift' >> gogo-benchmark
|
||||
@echo 'all_data=""' >> gogo-benchmark
|
||||
@echo 'for data_file in $$@; do all_data="$$all_data ../../../$$data_file"; done' >> gogo-benchmark
|
||||
@echo 'go test -bench=. -- $$all_data' >> gogo-benchmark
|
||||
@echo 'cd ../..' >> gogo-benchmark
|
||||
@chmod +x gogo-benchmark
|
||||
|
||||
go_no_group: go_no_group_protoc_middleman generate_gogo_data generate_all_gogo_benchmark_code gogo-benchmark
|
||||
./gogo-benchmark go_no_group $(gogo_data)
|
||||
|
||||
gogofast: gogofast_protoc_middleman generate_gogo_data gogo-benchmark generate_all_gogo_benchmark_code
|
||||
./gogo-benchmark gogofast $(gogo_data)
|
||||
|
||||
gogofaster: gogofaster_protoc_middleman generate_gogo_data gogo-benchmark generate_all_gogo_benchmark_code
|
||||
./gogo-benchmark gogofaster $(gogo_data)
|
||||
|
||||
gogoslick: gogoslick_protoc_middleman generate_gogo_data gogo-benchmark generate_all_gogo_benchmark_code
|
||||
./gogo-benchmark gogoslick $(gogo_data)
|
||||
|
||||
|
||||
############# GOGO RULES END ############
|
||||
|
||||
|
||||
############ UTIL RULES BEGIN ############
|
||||
|
||||
bin_PROGRAMS += protoc-gen-gogoproto gogo-data-scrubber protoc-gen-proto2_to_proto3 proto3-data-stripper
|
||||
|
||||
protoc_gen_gogoproto_LDADD = $(top_srcdir)/src/libprotobuf.la $(top_srcdir)/src/libprotoc.la
|
||||
protoc_gen_gogoproto_SOURCES = util/protoc-gen-gogoproto.cc
|
||||
protoc_gen_gogoproto_CPPFLAGS = -I$(top_srcdir)/src -I$(srcdir)/cpp -I$(srcdir)/util
|
||||
|
||||
gogo_data_scrubber_LDADD = $(top_srcdir)/src/libprotobuf.la
|
||||
gogo_data_scrubber_SOURCES = util/gogo_data_scrubber.cc
|
||||
gogo_data_scrubber_CPPFLAGS = -I$(top_srcdir)/src -I$(srcdir)/cpp -I$(srcdir)/util
|
||||
util/gogo_data_scrubber-gogo_data_scrubber.$(OBJEXT): $(benchmarks_protoc_outputs) $(benchmarks_protoc_outputs_proto2) $(benchmarks_protoc_outputs_header) $(benchmarks_protoc_outputs_proto2_header)
|
||||
nodist_gogo_data_scrubber_SOURCES = \
|
||||
$(benchmarks_protoc_outputs) \
|
||||
$(benchmarks_protoc_outputs_proto2) \
|
||||
$(benchmarks_protoc_outputs_proto2_header) \
|
||||
$(benchmarks_protoc_outputs_header)
|
||||
|
||||
protoc_gen_proto2_to_proto3_LDADD = $(top_srcdir)/src/libprotobuf.la $(top_srcdir)/src/libprotoc.la
|
||||
protoc_gen_proto2_to_proto3_SOURCES = util/protoc-gen-proto2_to_proto3.cc
|
||||
protoc_gen_proto2_to_proto3_CPPFLAGS = -I$(top_srcdir)/src -I$(srcdir)/cpp -I$(srcdir)/util
|
||||
|
||||
proto3_data_stripper_LDADD = $(top_srcdir)/src/libprotobuf.la
|
||||
proto3_data_stripper_SOURCES = util/proto3_data_stripper.cc
|
||||
proto3_data_stripper_CPPFLAGS = -I$(top_srcdir)/src -I$(srcdir)/cpp -I$(srcdir)/util
|
||||
util/proto3_data_stripper-proto3_data_stripper.$(OBJEXT): $(benchmarks_protoc_outputs) $(benchmarks_protoc_outputs_proto2) $(benchmarks_protoc_outputs_header) $(benchmarks_protoc_outputs_proto2_header)
|
||||
nodist_proto3_data_stripper_SOURCES = \
|
||||
$(benchmarks_protoc_outputs) \
|
||||
$(benchmarks_protoc_outputs_proto2) \
|
||||
$(benchmarks_protoc_outputs_proto2_header) \
|
||||
$(benchmarks_protoc_outputs_header)
|
||||
|
||||
|
||||
############ UTIL RULES END ############
|
||||
|
||||
############ PROTO3 PREPARATION BEGIN #############
|
||||
|
||||
proto3_proto_middleman: protoc-gen-proto2_to_proto3
|
||||
mkdir -p "tmp/proto3_proto"
|
||||
oldpwd=`pwd` && ( cd $(srcdir) && $$oldpwd/../src/protoc$(EXEEXT) -I$(srcdir) -I$(top_srcdir) --plugin=protoc-gen-proto2_to_proto3 --proto2_to_proto3_out=$$oldpwd/tmp/proto3_proto $(benchmarks_protoc_inputs) $(benchmarks_protoc_inputs_benchmark_wrapper) $(benchmarks_protoc_inputs_proto2) )
|
||||
touch proto3_proto_middleman
|
||||
|
||||
full_srcdir = $$(cd $(srcdir) && pwd)
|
||||
proto3_data = $$(for data in $(all_data); do echo $(full_srcdir)"/tmp/proto3_data$${data\#$(full_srcdir)}"; done | xargs)
|
||||
|
||||
generate_proto3_data: protoc_middleman protoc_middleman2 proto3-data-stripper
|
||||
mkdir -p `dirname $(proto3_data)`
|
||||
./proto3-data-stripper $(all_data) $(proto3_data)
|
||||
touch generate_proto3_data
|
||||
|
||||
############ PROTO3 PREPARATION END #############
|
||||
|
||||
############ PHP RULES BEGIN #################
|
||||
|
||||
proto3_middleman_php: proto3_proto_middleman
|
||||
mkdir -p "tmp/php"
|
||||
oldpwd=`pwd` && ( cd tmp/proto3_proto && $$oldpwd/../src/protoc$(EXEEXT) -I$(srcdir) -I$(top_srcdir) --php_out=$$oldpwd/tmp/php $(benchmarks_protoc_inputs) $(benchmarks_protoc_inputs_benchmark_wrapper) $(benchmarks_protoc_inputs_proto2) )
|
||||
touch proto3_middleman_php
|
||||
|
||||
php-benchmark: proto3_middleman_php generate_proto3_data
|
||||
mkdir -p "tmp/php/Google/Protobuf/Benchmark" && cp php/PhpBenchmark.php "tmp/php/Google/Protobuf/Benchmark"
|
||||
cp php/autoload.php "tmp/php"
|
||||
@echo "Writing shortcut script php-benchmark..."
|
||||
@echo '#! /bin/bash' > php-benchmark
|
||||
@echo 'export PROTOBUF_PHP_SRCDIR="$$(cd $(top_srcdir) && pwd)/php/src"' >> php-benchmark
|
||||
@echo 'cd tmp/php' >> php-benchmark
|
||||
@echo 'export CURRENT_DIR=$$(pwd)' >> php-benchmark
|
||||
@echo 'php -d auto_prepend_file="autoload.php" -d include_path="$$(pwd)" Google/Protobuf/Benchmark/PhpBenchmark.php $$@' >> php-benchmark
|
||||
@echo 'cd ../..' >> php-benchmark
|
||||
@chmod +x php-benchmark
|
||||
|
||||
php: php-benchmark proto3_middleman_php
|
||||
./php-benchmark --behavior_prefix="php" $(proto3_data)
|
||||
|
||||
php_c_extension:
|
||||
cd $(top_srcdir)/php/ext/google/protobuf && phpize && ./configure CFLAGS='-O3' && make -j8
|
||||
|
||||
php-c-benchmark: proto3_middleman_php generate_proto3_data php_c_extension php_c_extension
|
||||
mkdir -p "tmp/php/Google/Protobuf/Benchmark" && cp php/PhpBenchmark.php "tmp/php/Google/Protobuf/Benchmark"
|
||||
cp php/autoload.php "tmp/php"
|
||||
@echo "Writing shortcut script php-c-benchmark..."
|
||||
@echo '#! /bin/bash' > php-c-benchmark
|
||||
@echo 'export PROTOBUF_PHP_SRCDIR="$$(cd $(top_srcdir) && pwd)/php/src"' >> php-c-benchmark
|
||||
@echo 'export PROTOBUF_PHP_EXTDIR="$$PROTOBUF_PHP_SRCDIR/../ext/google/protobuf/modules"' >> php-c-benchmark
|
||||
@echo 'cd tmp/php' >> php-c-benchmark
|
||||
@echo 'export CURRENT_DIR=$$(pwd)' >> php-c-benchmark
|
||||
@echo 'php -d auto_prepend_file="autoload.php" -d include_path="$$(pwd)" -d extension="$$PROTOBUF_PHP_EXTDIR/protobuf.so" Google/Protobuf/Benchmark/PhpBenchmark.php $$@' >> php-c-benchmark
|
||||
@echo 'cd ../..' >> php-c-benchmark
|
||||
@chmod +x php-c-benchmark
|
||||
|
||||
php_c: php-c-benchmark proto3_middleman_php
|
||||
./php-c-benchmark --behavior_prefix="php_c" $(proto3_data)
|
||||
|
||||
|
||||
############ PHP RULES END #################
|
||||
|
||||
############ protobuf.js RULE BEGIN #############
|
||||
|
||||
pbjs_preparation:
|
||||
mkdir -p tmp/protobuf.js
|
||||
cd tmp/protobuf.js && git clone https://github.com/dcodeIO/protobuf.js.git && \
|
||||
cd protobuf.js && npm install && npm run build
|
||||
cd tmp/protobuf.js && npm install benchmark
|
||||
cp protobuf.js/* tmp/protobuf.js
|
||||
cp js/benchmark_suite.js tmp/protobuf.js
|
||||
touch pbjs_preparation
|
||||
|
||||
pbjs_middleman: pbjs_preparation
|
||||
export OLDDIR=$$(pwd) && cd tmp/protobuf.js && node generate_pbjs_files.js --target static-module --include_path=$$OLDDIR -o generated_bundle_code.js $(benchmarks_protoc_inputs) $(benchmarks_protoc_inputs_benchmark_wrapper) $(benchmarks_protoc_inputs_proto2)
|
||||
touch pbjs_middleman
|
||||
|
||||
pbjs-benchmark: pbjs_middleman
|
||||
@echo '#! /bin/bash' > pbjs-benchmark
|
||||
@echo 'cd tmp/protobuf.js' >> pbjs-benchmark
|
||||
@echo 'sed -i "s/protobufjs/.\/protobuf.js/g" generated_bundle_code.js' >> pbjs-benchmark
|
||||
@echo 'env NODE_PATH=".:./node_modules:$$NODE_PATH" node protobufjs_benchmark.js $$@' >> pbjs-benchmark
|
||||
@chmod +x pbjs-benchmark
|
||||
|
||||
pbjs: pbjs-benchmark
|
||||
./pbjs-benchmark $(all_data)
|
||||
|
||||
############ protobuf.js RULE END #############
|
||||
|
||||
############ JS RULE BEGIN #############
|
||||
|
||||
js_preparation:
|
||||
mkdir -p tmp/js
|
||||
oldpwd=$$(pwd) && cd $(top_srcdir)/js && npm install && npm test
|
||||
cd tmp/js && npm install benchmark
|
||||
cp js/* tmp/js
|
||||
touch js_preparation
|
||||
|
||||
js_middleman: js_preparation
|
||||
oldpwd=`pwd` && ( cd $(srcdir) && $$oldpwd/../src/protoc$(EXEEXT) -I. -I$(top_srcdir)/src --js_out=import_style=commonjs,binary:$$oldpwd/tmp/js $(benchmarks_protoc_inputs) $(benchmarks_protoc_inputs_benchmark_wrapper) $(benchmarks_protoc_inputs_proto2))
|
||||
touch js_middleman
|
||||
|
||||
js-benchmark: js_middleman
|
||||
@echo '#! /bin/bash' > js-benchmark
|
||||
@echo 'export TOP_JS_SRCDIR=$$(cd $(top_srcdir)/js && pwd)' >> js-benchmark
|
||||
@echo 'cd tmp/js' >> js-benchmark
|
||||
@echo 'env NODE_PATH="$$TOP_JS_SRCDIR:.:./node_modules:$$NODE_PATH" node --max-old-space-size=4096 js_benchmark.js $$@' >> js-benchmark
|
||||
@chmod +x js-benchmark
|
||||
|
||||
js: js-benchmark
|
||||
./js-benchmark $(all_data)
|
||||
|
||||
############ JS RULE END #############
|
||||
|
||||
EXTRA_DIST = \
|
||||
$(benchmarks_protoc_inputs_benchmark_wrapper) \
|
||||
$(benchmarks_protoc_inputs) \
|
||||
$(benchmarks_protoc_inputs_proto2) \
|
||||
google_size.proto
|
||||
|
||||
MAINTAINERCLEANFILES = \
|
||||
Makefile.in
|
||||
|
||||
CLEANFILES = \
|
||||
$(benchmarks_protoc_outputs) \
|
||||
$(benchmarks_protoc_outputs_header) \
|
||||
$(benchmarks_protoc_outputs_proto2) \
|
||||
$(benchmarks_protoc_outputs_proto2_header) \
|
||||
initialize_submodule \
|
||||
make_tmp_dir \
|
||||
protoc_middleman \
|
||||
protoc_middleman2 \
|
||||
javac_middleman \
|
||||
java-benchmark \
|
||||
python_cpp_proto_library \
|
||||
python-pure-python-benchmark \
|
||||
python-cpp-reflection-benchmark \
|
||||
python-cpp-generated-code-benchmark \
|
||||
go-benchmark \
|
||||
go_protoc_middleman \
|
||||
make_tmp_dir_gogo \
|
||||
gogo_proto_middleman \
|
||||
generate_gogo_data \
|
||||
go_no_group_protoc_middleman \
|
||||
go_no_group \
|
||||
go-no-group-benchmark \
|
||||
$(cpp_no_group_benchmarks_protoc_outputs_header) \
|
||||
$(cpp_no_group_benchmarks_protoc_outputs) \
|
||||
$(cpp_no_group_benchmarks_protoc_outputs_proto2_header) \
|
||||
$(cpp_no_group_benchmarks_protoc_outputs_proto2) \
|
||||
generate_all_gogo_benchmark_code \
|
||||
generate-gogo-benchmark-code \
|
||||
cpp_no_group_protoc_middleman \
|
||||
generate_cpp_no_group_benchmark_code \
|
||||
generate_gogo_benchmark_code \
|
||||
gogofast_protoc_middleman \
|
||||
gogofast \
|
||||
gogofaster_protoc_middleman \
|
||||
gogofaster \
|
||||
gogoslick_protoc_middleman \
|
||||
gogoslick \
|
||||
gogo-benchmark \
|
||||
gogo/cpp_no_group/cpp_benchmark.* \
|
||||
proto3_proto_middleman \
|
||||
generate_proto3_data \
|
||||
php-benchmark \
|
||||
php-c-benchmark \
|
||||
proto3_middleman_php \
|
||||
pbjs_preparation \
|
||||
pbjs_middleman \
|
||||
pbjs-benchmark \
|
||||
js_preparation \
|
||||
js_middleman \
|
||||
js-benchmark
|
||||
|
||||
clean-local:
|
||||
-rm -rf tmp/*
|
||||
|
251
deps/protobuf/benchmarks/README.md
vendored
Normal file
251
deps/protobuf/benchmarks/README.md
vendored
Normal file
@ -0,0 +1,251 @@
|
||||
|
||||
# Protocol Buffers Benchmarks
|
||||
|
||||
This directory contains benchmarking schemas and data sets that you
|
||||
can use to test a variety of performance scenarios against your
|
||||
protobuf language runtime. If you are looking for performance
|
||||
numbers of officially supported languages, see [Protobuf Performance](
|
||||
https://github.com/protocolbuffers/protobuf/blob/master/docs/performance.md).
|
||||
|
||||
## Prerequisite
|
||||
|
||||
First, you need to follow the instruction in the root directory's README to
|
||||
build your language's protobuf, then:
|
||||
|
||||
### CPP
|
||||
You need to install [cmake](https://cmake.org/) before building the benchmark.
|
||||
|
||||
We are using [google/benchmark](https://github.com/google/benchmark) as the
|
||||
benchmark tool for testing cpp. This will be automatically made during build the
|
||||
cpp benchmark.
|
||||
|
||||
The cpp protobuf performance can be improved by linking with
|
||||
[TCMalloc](https://google.github.io/tcmalloc).
|
||||
|
||||
### Java
|
||||
We're using maven to build the java benchmarks, which is the same as to build
|
||||
the Java protobuf. There're no other tools need to install. We're using
|
||||
[google/caliper](https://github.com/google/caliper) as benchmark tool, which
|
||||
can be automatically included by maven.
|
||||
|
||||
### Python
|
||||
We're using python C++ API for testing the generated
|
||||
CPP proto version of python protobuf, which is also a prerequisite for Python
|
||||
protobuf cpp implementation. You need to install the correct version of Python
|
||||
C++ extension package before run generated CPP proto version of Python
|
||||
protobuf's benchmark. e.g. under Ubuntu, you need to
|
||||
|
||||
```
|
||||
$ sudo apt-get install python-dev
|
||||
$ sudo apt-get install python3-dev
|
||||
```
|
||||
And you also need to make sure `pkg-config` is installed.
|
||||
|
||||
### Go
|
||||
Go protobufs are maintained at [github.com/golang/protobuf](
|
||||
http://github.com/golang/protobuf). If not done already, you need to install the
|
||||
toolchain and the Go protoc-gen-go plugin for protoc.
|
||||
|
||||
To install protoc-gen-go, run:
|
||||
|
||||
```
|
||||
$ go get -u github.com/golang/protobuf/protoc-gen-go
|
||||
$ export PATH=$PATH:$(go env GOPATH)/bin
|
||||
```
|
||||
|
||||
The first command installs `protoc-gen-go` into the `bin` directory in your local `GOPATH`.
|
||||
The second command adds the `bin` directory to your `PATH` so that `protoc` can locate the plugin later.
|
||||
|
||||
### PHP
|
||||
PHP benchmark's requirement is the same as PHP protobuf's requirements. The benchmark will automatically
|
||||
include PHP protobuf's src and build the c extension if required.
|
||||
|
||||
### Node.js
|
||||
Node.js benchmark need [node](https://nodejs.org/en/)(higher than V6) and [npm](https://www.npmjs.com/) package manager installed. This benchmark is using the [benchmark](https://www.npmjs.com/package/benchmark) framework to test, which needn't to manually install. And another prerequisite is [protobuf js](https://github.com/protocolbuffers/protobuf/tree/master/js), which needn't to manually install either
|
||||
|
||||
### C#
|
||||
The C# benchmark code is built as part of the main Google.Protobuf
|
||||
solution. It requires the .NET Core SDK, and depends on
|
||||
[BenchmarkDotNet](https://github.com/dotnet/BenchmarkDotNet), which
|
||||
will be downloaded automatically.
|
||||
|
||||
### Big data
|
||||
|
||||
There's some optional big testing data which is not included in the directory
|
||||
initially, you need to run the following command to download the testing data:
|
||||
|
||||
```
|
||||
$ ./download_data.sh
|
||||
```
|
||||
|
||||
After doing this the big data file will automatically generated in the
|
||||
benchmark directory.
|
||||
|
||||
## Run instructions
|
||||
|
||||
To run all the benchmark dataset:
|
||||
|
||||
### Java:
|
||||
|
||||
First build the Java binary in the usual way with Maven:
|
||||
|
||||
```
|
||||
$ cd java
|
||||
$ mvn install
|
||||
```
|
||||
|
||||
Assuming that completes successfully,
|
||||
|
||||
```
|
||||
$ cd ../benchmarks
|
||||
$ make java
|
||||
```
|
||||
|
||||
### CPP:
|
||||
|
||||
```
|
||||
$ make cpp
|
||||
```
|
||||
|
||||
For linking with tcmalloc:
|
||||
|
||||
```
|
||||
$ env LD_PRELOAD={directory to libtcmalloc.so} make cpp
|
||||
```
|
||||
|
||||
### Python:
|
||||
|
||||
We have three versions of python protobuf implementation: pure python, cpp
|
||||
reflection and cpp generated code. To run these version benchmark, you need to:
|
||||
|
||||
#### Pure Python:
|
||||
|
||||
```
|
||||
$ make python-pure-python
|
||||
```
|
||||
|
||||
#### CPP reflection:
|
||||
|
||||
```
|
||||
$ make python-cpp-reflection
|
||||
```
|
||||
|
||||
#### CPP generated code:
|
||||
|
||||
```
|
||||
$ make python-cpp-generated-code
|
||||
```
|
||||
|
||||
### Go
|
||||
```
|
||||
$ make go
|
||||
```
|
||||
|
||||
|
||||
### PHP
|
||||
We have two version of php protobuf implementation: pure php, php with c extension. To run these version benchmark, you need to:
|
||||
#### Pure PHP
|
||||
```
|
||||
$ make php
|
||||
```
|
||||
#### PHP with c extension
|
||||
```
|
||||
$ make php_c
|
||||
```
|
||||
|
||||
### Node.js
|
||||
```
|
||||
$ make js
|
||||
```
|
||||
|
||||
To run a specific dataset or run with specific options:
|
||||
|
||||
### Java:
|
||||
|
||||
```
|
||||
$ make java-benchmark
|
||||
$ ./java-benchmark $(specific generated dataset file name) [$(caliper options)]
|
||||
```
|
||||
|
||||
### CPP:
|
||||
|
||||
```
|
||||
$ make cpp-benchmark
|
||||
$ ./cpp-benchmark $(specific generated dataset file name) [$(benchmark options)]
|
||||
```
|
||||
|
||||
### Python:
|
||||
|
||||
For Python benchmark we have `--json` for outputting the json result
|
||||
|
||||
#### Pure Python:
|
||||
|
||||
```
|
||||
$ make python-pure-python-benchmark
|
||||
$ ./python-pure-python-benchmark [--json] $(specific generated dataset file name)
|
||||
```
|
||||
|
||||
#### CPP reflection:
|
||||
|
||||
```
|
||||
$ make python-cpp-reflection-benchmark
|
||||
$ ./python-cpp-reflection-benchmark [--json] $(specific generated dataset file name)
|
||||
```
|
||||
|
||||
#### CPP generated code:
|
||||
|
||||
```
|
||||
$ make python-cpp-generated-code-benchmark
|
||||
$ ./python-cpp-generated-code-benchmark [--json] $(specific generated dataset file name)
|
||||
```
|
||||
|
||||
### Go:
|
||||
```
|
||||
$ make go-benchmark
|
||||
$ ./go-benchmark $(specific generated dataset file name) [go testing options]
|
||||
```
|
||||
|
||||
### PHP
|
||||
#### Pure PHP
|
||||
```
|
||||
$ make php-benchmark
|
||||
$ ./php-benchmark $(specific generated dataset file name)
|
||||
```
|
||||
#### PHP with c extension
|
||||
```
|
||||
$ make php-c-benchmark
|
||||
$ ./php-c-benchmark $(specific generated dataset file name)
|
||||
```
|
||||
|
||||
### Node.js
|
||||
```
|
||||
$ make js-benchmark
|
||||
$ ./js-benchmark $(specific generated dataset file name)
|
||||
```
|
||||
|
||||
### C#
|
||||
From `csharp/src/Google.Protobuf.Benchmarks`, run:
|
||||
|
||||
```
|
||||
$ dotnet run -c Release
|
||||
```
|
||||
|
||||
We intend to add support for this within the makefile in due course.
|
||||
|
||||
## Benchmark datasets
|
||||
|
||||
Each data set is in the format of benchmarks.proto:
|
||||
|
||||
1. name is the benchmark dataset's name.
|
||||
2. message_name is the benchmark's message type full name (including package and message name)
|
||||
3. payload is the list of raw data.
|
||||
|
||||
The schema for the datasets is described in `benchmarks.proto`.
|
||||
|
||||
Benchmark likely want to run several benchmarks against each data set (parse,
|
||||
serialize, possibly JSON, possibly using different APIs, etc).
|
||||
|
||||
We would like to add more data sets. In general we will favor data sets
|
||||
that make the overall suite diverse without being too large or having
|
||||
too many similar tests. Ideally everyone can run through the entire
|
||||
suite without the test run getting too long.
|
0
deps/protobuf/benchmarks/__init__.py
vendored
Normal file
0
deps/protobuf/benchmarks/__init__.py
vendored
Normal file
63
deps/protobuf/benchmarks/benchmarks.proto
vendored
Normal file
63
deps/protobuf/benchmarks/benchmarks.proto
vendored
Normal file
@ -0,0 +1,63 @@
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
syntax = "proto3";
|
||||
package benchmarks;
|
||||
option java_package = "com.google.protobuf.benchmarks";
|
||||
|
||||
message BenchmarkDataset {
|
||||
// Name of the benchmark dataset. This should be unique across all datasets.
|
||||
// Should only contain word characters: [a-zA-Z0-9_]
|
||||
string name = 1;
|
||||
|
||||
// Fully-qualified name of the protobuf message for this dataset.
|
||||
// It will be one of the messages defined benchmark_messages_proto2.proto
|
||||
// or benchmark_messages_proto3.proto.
|
||||
//
|
||||
// Implementations that do not support reflection can implement this with
|
||||
// an explicit "if/else" chain that lists every known message defined
|
||||
// in those files.
|
||||
string message_name = 2;
|
||||
|
||||
// The payload(s) for this dataset. They should be parsed or serialized
|
||||
// in sequence, in a loop, ie.
|
||||
//
|
||||
// while (!benchmarkDone) { // Benchmark runner decides when to exit.
|
||||
// for (i = 0; i < benchmark.payload.length; i++) {
|
||||
// parse(benchmark.payload[i])
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// This is intended to let datasets include a variety of data to provide
|
||||
// potentially more realistic results than just parsing the same message
|
||||
// over and over. A single message parsed repeatedly could yield unusually
|
||||
// good branch prediction performance.
|
||||
repeated bytes payload = 3;
|
||||
}
|
254
deps/protobuf/benchmarks/cpp/cpp_benchmark.cc
vendored
Normal file
254
deps/protobuf/benchmarks/cpp/cpp_benchmark.cc
vendored
Normal file
@ -0,0 +1,254 @@
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
#include <fstream>
|
||||
#include <iostream>
|
||||
#include "benchmark/benchmark.h"
|
||||
#include "benchmarks.pb.h"
|
||||
#include "datasets/google_message1/proto2/benchmark_message1_proto2.pb.h"
|
||||
#include "datasets/google_message1/proto3/benchmark_message1_proto3.pb.h"
|
||||
#include "datasets/google_message2/benchmark_message2.pb.h"
|
||||
#include "datasets/google_message3/benchmark_message3.pb.h"
|
||||
#include "datasets/google_message4/benchmark_message4.pb.h"
|
||||
|
||||
|
||||
#define PREFIX "dataset."
|
||||
#define SUFFIX ".pb"
|
||||
|
||||
using benchmarks::BenchmarkDataset;
|
||||
using google::protobuf::Arena;
|
||||
using google::protobuf::Descriptor;
|
||||
using google::protobuf::DescriptorPool;
|
||||
using google::protobuf::Message;
|
||||
using google::protobuf::MessageFactory;
|
||||
|
||||
class Fixture : public benchmark::Fixture {
|
||||
public:
|
||||
Fixture(const BenchmarkDataset& dataset, const std::string& suffix) {
|
||||
for (int i = 0; i < dataset.payload_size(); i++) {
|
||||
payloads_.push_back(dataset.payload(i));
|
||||
}
|
||||
|
||||
const Descriptor* d =
|
||||
DescriptorPool::generated_pool()->FindMessageTypeByName(
|
||||
dataset.message_name());
|
||||
|
||||
if (!d) {
|
||||
std::cerr << "Couldn't find message named '" << dataset.message_name()
|
||||
<< "\n";
|
||||
}
|
||||
|
||||
prototype_ = MessageFactory::generated_factory()->GetPrototype(d);
|
||||
SetName((dataset.name() + suffix).c_str());
|
||||
}
|
||||
|
||||
protected:
|
||||
std::vector<std::string> payloads_;
|
||||
const Message* prototype_;
|
||||
};
|
||||
|
||||
class WrappingCounter {
|
||||
public:
|
||||
WrappingCounter(size_t limit) : value_(0), limit_(limit) {}
|
||||
|
||||
size_t Next() {
|
||||
size_t ret = value_;
|
||||
if (++value_ == limit_) {
|
||||
value_ = 0;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
private:
|
||||
size_t value_;
|
||||
size_t limit_;
|
||||
};
|
||||
|
||||
template <class T>
|
||||
class ParseNewFixture : public Fixture {
|
||||
public:
|
||||
ParseNewFixture(const BenchmarkDataset& dataset)
|
||||
: Fixture(dataset, "_parse_new") {}
|
||||
|
||||
virtual void BenchmarkCase(benchmark::State& state) {
|
||||
WrappingCounter i(payloads_.size());
|
||||
size_t total = 0;
|
||||
|
||||
while (state.KeepRunning()) {
|
||||
T m;
|
||||
const std::string& payload = payloads_[i.Next()];
|
||||
total += payload.size();
|
||||
m.ParseFromString(payload);
|
||||
}
|
||||
|
||||
state.SetBytesProcessed(total);
|
||||
}
|
||||
};
|
||||
|
||||
template <class T>
|
||||
class ParseNewArenaFixture : public Fixture {
|
||||
public:
|
||||
ParseNewArenaFixture(const BenchmarkDataset& dataset)
|
||||
: Fixture(dataset, "_parse_newarena") {}
|
||||
|
||||
virtual void BenchmarkCase(benchmark::State& state) {
|
||||
WrappingCounter i(payloads_.size());
|
||||
size_t total = 0;
|
||||
Arena arena;
|
||||
|
||||
while (state.KeepRunning()) {
|
||||
arena.Reset();
|
||||
Message* m = Arena::CreateMessage<T>(&arena);
|
||||
const std::string& payload = payloads_[i.Next()];
|
||||
total += payload.size();
|
||||
m->ParseFromString(payload);
|
||||
}
|
||||
|
||||
state.SetBytesProcessed(total);
|
||||
}
|
||||
};
|
||||
|
||||
template <class T>
|
||||
class ParseReuseFixture : public Fixture {
|
||||
public:
|
||||
ParseReuseFixture(const BenchmarkDataset& dataset)
|
||||
: Fixture(dataset, "_parse_reuse") {}
|
||||
|
||||
virtual void BenchmarkCase(benchmark::State& state) {
|
||||
T m;
|
||||
WrappingCounter i(payloads_.size());
|
||||
size_t total = 0;
|
||||
|
||||
while (state.KeepRunning()) {
|
||||
const std::string& payload = payloads_[i.Next()];
|
||||
total += payload.size();
|
||||
m.ParseFromString(payload);
|
||||
}
|
||||
|
||||
state.SetBytesProcessed(total);
|
||||
}
|
||||
};
|
||||
|
||||
template <class T>
|
||||
class SerializeFixture : public Fixture {
|
||||
public:
|
||||
SerializeFixture(const BenchmarkDataset& dataset)
|
||||
: Fixture(dataset, "_serialize") {
|
||||
for (size_t i = 0; i < payloads_.size(); i++) {
|
||||
message_.push_back(new T);
|
||||
message_.back()->ParseFromString(payloads_[i]);
|
||||
}
|
||||
}
|
||||
|
||||
~SerializeFixture() {
|
||||
for (size_t i = 0; i < message_.size(); i++) {
|
||||
delete message_[i];
|
||||
}
|
||||
}
|
||||
|
||||
virtual void BenchmarkCase(benchmark::State& state) {
|
||||
size_t total = 0;
|
||||
std::string str;
|
||||
WrappingCounter i(payloads_.size());
|
||||
|
||||
while (state.KeepRunning()) {
|
||||
str.clear();
|
||||
message_[i.Next()]->SerializeToString(&str);
|
||||
total += str.size();
|
||||
}
|
||||
|
||||
state.SetBytesProcessed(total);
|
||||
}
|
||||
|
||||
private:
|
||||
std::vector<T*> message_;
|
||||
};
|
||||
|
||||
std::string ReadFile(const std::string& name) {
|
||||
std::ifstream file(name.c_str());
|
||||
GOOGLE_CHECK(file.is_open()) << "Couldn't find file '" << name <<
|
||||
"', please make sure you are running "
|
||||
"this command from the benchmarks/ "
|
||||
"directory.\n";
|
||||
return std::string((std::istreambuf_iterator<char>(file)),
|
||||
std::istreambuf_iterator<char>());
|
||||
}
|
||||
|
||||
template <class T>
|
||||
void RegisterBenchmarksForType(const BenchmarkDataset& dataset) {
|
||||
::benchmark::internal::RegisterBenchmarkInternal(
|
||||
new ParseNewFixture<T>(dataset));
|
||||
::benchmark::internal::RegisterBenchmarkInternal(
|
||||
new ParseReuseFixture<T>(dataset));
|
||||
::benchmark::internal::RegisterBenchmarkInternal(
|
||||
new ParseNewArenaFixture<T>(dataset));
|
||||
::benchmark::internal::RegisterBenchmarkInternal(
|
||||
new SerializeFixture<T>(dataset));
|
||||
}
|
||||
|
||||
void RegisterBenchmarks(const std::string& dataset_bytes) {
|
||||
BenchmarkDataset dataset;
|
||||
GOOGLE_CHECK(dataset.ParseFromString(dataset_bytes));
|
||||
|
||||
if (dataset.message_name() == "benchmarks.proto3.GoogleMessage1") {
|
||||
RegisterBenchmarksForType<benchmarks::proto3::GoogleMessage1>(dataset);
|
||||
} else if (dataset.message_name() == "benchmarks.proto2.GoogleMessage1") {
|
||||
RegisterBenchmarksForType<benchmarks::proto2::GoogleMessage1>(dataset);
|
||||
} else if (dataset.message_name() == "benchmarks.proto2.GoogleMessage2") {
|
||||
RegisterBenchmarksForType<benchmarks::proto2::GoogleMessage2>(dataset);
|
||||
} else if (dataset.message_name() ==
|
||||
"benchmarks.google_message3.GoogleMessage3") {
|
||||
RegisterBenchmarksForType
|
||||
<benchmarks::google_message3::GoogleMessage3>(dataset);
|
||||
} else if (dataset.message_name() ==
|
||||
"benchmarks.google_message4.GoogleMessage4") {
|
||||
RegisterBenchmarksForType
|
||||
<benchmarks::google_message4::GoogleMessage4>(dataset);
|
||||
} else {
|
||||
std::cerr << "Unknown message type: " << dataset.message_name();
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
int main(int argc, char *argv[]) {
|
||||
::benchmark::Initialize(&argc, argv);
|
||||
if (argc == 1) {
|
||||
std::cerr << "Usage: ./cpp-benchmark <input data>" << std::endl;
|
||||
std::cerr << "input data is in the format of \"benchmarks.proto\""
|
||||
<< std::endl;
|
||||
return 1;
|
||||
} else {
|
||||
for (int i = 1; i < argc; i++) {
|
||||
RegisterBenchmarks(ReadFile(argv[i]));
|
||||
}
|
||||
}
|
||||
|
||||
::benchmark::RunSpecifiedBenchmarks();
|
||||
}
|
108
deps/protobuf/benchmarks/datasets/google_message1/proto2/benchmark_message1_proto2.proto
vendored
Normal file
108
deps/protobuf/benchmarks/datasets/google_message1/proto2/benchmark_message1_proto2.proto
vendored
Normal file
@ -0,0 +1,108 @@
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
// Benchmark messages for proto2.
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package benchmarks.proto2;
|
||||
option java_package = "com.google.protobuf.benchmarks";
|
||||
|
||||
// This is the default, but we specify it here explicitly.
|
||||
option optimize_for = SPEED;
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
|
||||
message GoogleMessage1 {
|
||||
required string field1 = 1;
|
||||
optional string field9 = 9;
|
||||
optional string field18 = 18;
|
||||
optional bool field80 = 80 [default = false];
|
||||
optional bool field81 = 81 [default = true];
|
||||
required int32 field2 = 2;
|
||||
required int32 field3 = 3;
|
||||
optional int32 field280 = 280;
|
||||
optional int32 field6 = 6 [default = 0];
|
||||
optional int64 field22 = 22;
|
||||
optional string field4 = 4;
|
||||
repeated fixed64 field5 = 5;
|
||||
optional bool field59 = 59 [default = false];
|
||||
optional string field7 = 7;
|
||||
optional int32 field16 = 16;
|
||||
optional int32 field130 = 130 [default = 0];
|
||||
optional bool field12 = 12 [default = true];
|
||||
optional bool field17 = 17 [default = true];
|
||||
optional bool field13 = 13 [default = true];
|
||||
optional bool field14 = 14 [default = true];
|
||||
optional int32 field104 = 104 [default = 0];
|
||||
optional int32 field100 = 100 [default = 0];
|
||||
optional int32 field101 = 101 [default = 0];
|
||||
optional string field102 = 102;
|
||||
optional string field103 = 103;
|
||||
optional int32 field29 = 29 [default = 0];
|
||||
optional bool field30 = 30 [default = false];
|
||||
optional int32 field60 = 60 [default = -1];
|
||||
optional int32 field271 = 271 [default = -1];
|
||||
optional int32 field272 = 272 [default = -1];
|
||||
optional int32 field150 = 150;
|
||||
optional int32 field23 = 23 [default = 0];
|
||||
optional bool field24 = 24 [default = false];
|
||||
optional int32 field25 = 25 [default = 0];
|
||||
optional GoogleMessage1SubMessage field15 = 15;
|
||||
optional bool field78 = 78;
|
||||
optional int32 field67 = 67 [default = 0];
|
||||
optional int32 field68 = 68;
|
||||
optional int32 field128 = 128 [default = 0];
|
||||
optional string field129 = 129 [default = "xxxxxxxxxxxxxxxxxxxxx"];
|
||||
optional int32 field131 = 131 [default = 0];
|
||||
}
|
||||
|
||||
message GoogleMessage1SubMessage {
|
||||
optional int32 field1 = 1 [default = 0];
|
||||
optional int32 field2 = 2 [default = 0];
|
||||
optional int32 field3 = 3 [default = 0];
|
||||
optional string field15 = 15;
|
||||
optional bool field12 = 12 [default = true];
|
||||
optional int64 field13 = 13;
|
||||
optional int64 field14 = 14;
|
||||
optional int32 field16 = 16;
|
||||
optional int32 field19 = 19 [default = 2];
|
||||
optional bool field20 = 20 [default = true];
|
||||
optional bool field28 = 28 [default = true];
|
||||
optional fixed64 field21 = 21;
|
||||
optional int32 field22 = 22;
|
||||
optional bool field23 = 23 [default = false];
|
||||
optional bool field206 = 206 [default = false];
|
||||
optional fixed32 field203 = 203;
|
||||
optional int32 field204 = 204;
|
||||
optional string field205 = 205;
|
||||
optional uint64 field207 = 207;
|
||||
optional uint64 field300 = 300;
|
||||
}
|
BIN
deps/protobuf/benchmarks/datasets/google_message1/proto2/dataset.google_message1_proto2.pb
vendored
Normal file
BIN
deps/protobuf/benchmarks/datasets/google_message1/proto2/dataset.google_message1_proto2.pb
vendored
Normal file
Binary file not shown.
108
deps/protobuf/benchmarks/datasets/google_message1/proto3/benchmark_message1_proto3.proto
vendored
Normal file
108
deps/protobuf/benchmarks/datasets/google_message1/proto3/benchmark_message1_proto3.proto
vendored
Normal file
@ -0,0 +1,108 @@
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
// Benchmark messages for proto3.
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
package benchmarks.proto3;
|
||||
option java_package = "com.google.protobuf.benchmarks";
|
||||
|
||||
// This is the default, but we specify it here explicitly.
|
||||
option optimize_for = SPEED;
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
|
||||
message GoogleMessage1 {
|
||||
string field1 = 1;
|
||||
string field9 = 9;
|
||||
string field18 = 18;
|
||||
bool field80 = 80;
|
||||
bool field81 = 81;
|
||||
int32 field2 = 2;
|
||||
int32 field3 = 3;
|
||||
int32 field280 = 280;
|
||||
int32 field6 = 6;
|
||||
int64 field22 = 22;
|
||||
string field4 = 4;
|
||||
repeated fixed64 field5 = 5;
|
||||
bool field59 = 59;
|
||||
string field7 = 7;
|
||||
int32 field16 = 16;
|
||||
int32 field130 = 130;
|
||||
bool field12 = 12;
|
||||
bool field17 = 17;
|
||||
bool field13 = 13;
|
||||
bool field14 = 14;
|
||||
int32 field104 = 104;
|
||||
int32 field100 = 100;
|
||||
int32 field101 = 101;
|
||||
string field102 = 102;
|
||||
string field103 = 103;
|
||||
int32 field29 = 29;
|
||||
bool field30 = 30;
|
||||
int32 field60 = 60;
|
||||
int32 field271 = 271;
|
||||
int32 field272 = 272;
|
||||
int32 field150 = 150;
|
||||
int32 field23 = 23;
|
||||
bool field24 = 24;
|
||||
int32 field25 = 25;
|
||||
GoogleMessage1SubMessage field15 = 15;
|
||||
bool field78 = 78;
|
||||
int32 field67 = 67;
|
||||
int32 field68 = 68;
|
||||
int32 field128 = 128;
|
||||
string field129 = 129;
|
||||
int32 field131 = 131;
|
||||
}
|
||||
|
||||
message GoogleMessage1SubMessage {
|
||||
int32 field1 = 1;
|
||||
int32 field2 = 2;
|
||||
int32 field3 = 3;
|
||||
string field15 = 15;
|
||||
bool field12 = 12;
|
||||
int64 field13 = 13;
|
||||
int64 field14 = 14;
|
||||
int32 field16 = 16;
|
||||
int32 field19 = 19;
|
||||
bool field20 = 20;
|
||||
bool field28 = 28;
|
||||
fixed64 field21 = 21;
|
||||
int32 field22 = 22;
|
||||
bool field23 = 23;
|
||||
bool field206 = 206;
|
||||
fixed32 field203 = 203;
|
||||
int32 field204 = 204;
|
||||
string field205 = 205;
|
||||
uint64 field207 = 207;
|
||||
uint64 field300 = 300;
|
||||
}
|
BIN
deps/protobuf/benchmarks/datasets/google_message1/proto3/dataset.google_message1_proto3.pb
vendored
Normal file
BIN
deps/protobuf/benchmarks/datasets/google_message1/proto3/dataset.google_message1_proto3.pb
vendored
Normal file
Binary file not shown.
108
deps/protobuf/benchmarks/datasets/google_message2/benchmark_message2.proto
vendored
Normal file
108
deps/protobuf/benchmarks/datasets/google_message2/benchmark_message2.proto
vendored
Normal file
@ -0,0 +1,108 @@
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
// LINT: ALLOW_GROUPS
|
||||
|
||||
// Benchmark messages for proto2.
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package benchmarks.proto2;
|
||||
option java_package = "com.google.protobuf.benchmarks";
|
||||
|
||||
// This is the default, but we specify it here explicitly.
|
||||
option optimize_for = SPEED;
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
|
||||
message GoogleMessage2 {
|
||||
optional string field1 = 1;
|
||||
optional int64 field3 = 3;
|
||||
optional int64 field4 = 4;
|
||||
optional int64 field30 = 30;
|
||||
optional bool field75 = 75 [default = false];
|
||||
optional string field6 = 6;
|
||||
optional bytes field2 = 2;
|
||||
optional int32 field21 = 21 [default = 0];
|
||||
optional int32 field71 = 71;
|
||||
optional float field25 = 25;
|
||||
optional int32 field109 = 109 [default = 0];
|
||||
optional int32 field210 = 210 [default = 0];
|
||||
optional int32 field211 = 211 [default = 0];
|
||||
optional int32 field212 = 212 [default = 0];
|
||||
optional int32 field213 = 213 [default = 0];
|
||||
optional int32 field216 = 216 [default = 0];
|
||||
optional int32 field217 = 217 [default = 0];
|
||||
optional int32 field218 = 218 [default = 0];
|
||||
optional int32 field220 = 220 [default = 0];
|
||||
optional int32 field221 = 221 [default = 0];
|
||||
optional float field222 = 222 [default = 0.0];
|
||||
optional int32 field63 = 63;
|
||||
|
||||
repeated group Group1 = 10 {
|
||||
required float field11 = 11;
|
||||
optional float field26 = 26;
|
||||
optional string field12 = 12;
|
||||
optional string field13 = 13;
|
||||
repeated string field14 = 14;
|
||||
required uint64 field15 = 15;
|
||||
optional int32 field5 = 5;
|
||||
optional string field27 = 27;
|
||||
optional int32 field28 = 28;
|
||||
optional string field29 = 29;
|
||||
optional string field16 = 16;
|
||||
repeated string field22 = 22;
|
||||
repeated int32 field73 = 73;
|
||||
optional int32 field20 = 20 [default = 0];
|
||||
optional string field24 = 24;
|
||||
optional GoogleMessage2GroupedMessage field31 = 31;
|
||||
}
|
||||
repeated string field128 = 128;
|
||||
optional int64 field131 = 131;
|
||||
repeated string field127 = 127;
|
||||
optional int32 field129 = 129;
|
||||
repeated int64 field130 = 130;
|
||||
optional bool field205 = 205 [default = false];
|
||||
optional bool field206 = 206 [default = false];
|
||||
}
|
||||
|
||||
message GoogleMessage2GroupedMessage {
|
||||
optional float field1 = 1;
|
||||
optional float field2 = 2;
|
||||
optional float field3 = 3 [default = 0.0];
|
||||
optional bool field4 = 4;
|
||||
optional bool field5 = 5;
|
||||
optional bool field6 = 6 [default = true];
|
||||
optional bool field7 = 7 [default = false];
|
||||
optional float field8 = 8;
|
||||
optional bool field9 = 9;
|
||||
optional float field10 = 10;
|
||||
optional int64 field11 = 11;
|
||||
}
|
BIN
deps/protobuf/benchmarks/datasets/google_message2/dataset.google_message2.pb
vendored
Normal file
BIN
deps/protobuf/benchmarks/datasets/google_message2/dataset.google_message2.pb
vendored
Normal file
Binary file not shown.
566
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3.proto
vendored
Normal file
566
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3.proto
vendored
Normal file
@ -0,0 +1,566 @@
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
// LINT: ALLOW_GROUPS
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package benchmarks.google_message3;
|
||||
|
||||
import "datasets/google_message3/benchmark_message3_1.proto";
|
||||
import "datasets/google_message3/benchmark_message3_2.proto";
|
||||
import "datasets/google_message3/benchmark_message3_3.proto";
|
||||
import "datasets/google_message3/benchmark_message3_4.proto";
|
||||
import "datasets/google_message3/benchmark_message3_5.proto";
|
||||
import "datasets/google_message3/benchmark_message3_7.proto";
|
||||
import "datasets/google_message3/benchmark_message3_8.proto";
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option java_package = "com.google.protobuf.benchmarks";
|
||||
|
||||
message GoogleMessage3 {
|
||||
optional .benchmarks.google_message3.Message37487 field37519 = 2;
|
||||
optional .benchmarks.google_message3.Message36876 field37520 = 3;
|
||||
optional .benchmarks.google_message3.Message13062 field37521 = 4;
|
||||
optional .benchmarks.google_message3.Message952 field37522 = 5;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field37523 = 6;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field37524 = 7;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field37525 = 8;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field37526 = 9;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field37527 = 10;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field37528 = 11;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field37529 = 12;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field37530 = 13;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field37531 = 14;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field37532 = 15;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field37533 = 16;
|
||||
}
|
||||
|
||||
message Message1327 {
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field1369 = 1;
|
||||
repeated .benchmarks.google_message3.Message1328 field1370 = 3;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field1371 = 5;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field1372 = 6;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message1327 field1373 = 23104162;
|
||||
}
|
||||
}
|
||||
|
||||
message Message3672 {
|
||||
optional .benchmarks.google_message3.Enum3476 field3727 = 1;
|
||||
optional int32 field3728 = 11;
|
||||
optional int32 field3729 = 2;
|
||||
repeated group Message3673 = 3 {
|
||||
required .benchmarks.google_message3.Enum3476 field3738 = 4;
|
||||
required int32 field3739 = 5;
|
||||
}
|
||||
repeated group Message3674 = 6 {
|
||||
required .benchmarks.google_message3.Enum3476 field3740 = 7;
|
||||
required int32 field3741 = 8;
|
||||
}
|
||||
optional bool field3732 = 9;
|
||||
optional int32 field3733 = 10;
|
||||
optional .benchmarks.google_message3.Enum3476 field3734 = 20;
|
||||
optional int32 field3735 = 21;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field3736 = 50;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message3672 field3737 = 3144435;
|
||||
}
|
||||
}
|
||||
|
||||
message Message3804 {
|
||||
required int64 field3818 = 1;
|
||||
required bool field3819 = 2;
|
||||
repeated .benchmarks.google_message3.Enum3805 field3820 = 4;
|
||||
optional int32 field3821 = 5;
|
||||
optional bool field3822 = 6;
|
||||
optional int64 field3823 = 7;
|
||||
optional .benchmarks.google_message3.Enum3783 field3824 = 8;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message3804 field3825 = 59241828;
|
||||
}
|
||||
}
|
||||
|
||||
message Message6849 {
|
||||
repeated .benchmarks.google_message3.Message6850 field6910 = 1;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message6849 field6911 = 107558455;
|
||||
}
|
||||
}
|
||||
|
||||
message Message6866 {
|
||||
repeated .benchmarks.google_message3.Message6863 field6973 = 1;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message6866 field6974 = 22259060;
|
||||
}
|
||||
}
|
||||
|
||||
message Message6870 {
|
||||
repeated .benchmarks.google_message3.Message6871 field6991 = 1;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message6870 field6992 = 90034652;
|
||||
}
|
||||
}
|
||||
|
||||
message Message7651 {
|
||||
optional string field7685 = 1;
|
||||
optional int64 field7686 = 2;
|
||||
optional int64 field7687 = 3;
|
||||
optional int64 field7688 = 4;
|
||||
optional int32 field7689 = 5;
|
||||
optional int32 field7690 = 6;
|
||||
optional int32 field7691 = 7;
|
||||
optional int32 field7692 = 8;
|
||||
optional int32 field7693 = 9;
|
||||
optional int32 field7694 = 10;
|
||||
optional int32 field7695 = 11;
|
||||
optional int32 field7696 = 12;
|
||||
optional int32 field7697 = 13;
|
||||
optional int32 field7698 = 14;
|
||||
optional int32 field7699 = 15;
|
||||
optional int32 field7700 = 16;
|
||||
optional int32 field7701 = 17;
|
||||
optional int32 field7702 = 18;
|
||||
optional bool field7703 = 19;
|
||||
repeated int32 field7704 = 20;
|
||||
repeated int32 field7705 = 21;
|
||||
repeated string field7706 = 22;
|
||||
repeated string field7707 = 23;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field7708 = 24;
|
||||
optional int32 field7709 = 25;
|
||||
optional int32 field7710 = 26;
|
||||
optional int32 field7711 = 27;
|
||||
optional int32 field7712 = 43;
|
||||
optional int32 field7713 = 28;
|
||||
optional int32 field7714 = 29;
|
||||
repeated .benchmarks.google_message3.Message7547 field7715 = 30;
|
||||
repeated .benchmarks.google_message3.Message7547 field7716 = 31;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field7717 = 32;
|
||||
repeated string field7718 = 33;
|
||||
repeated string field7719 = 34;
|
||||
repeated .benchmarks.google_message3.Message7648 field7720 = 35;
|
||||
optional bool field7721 = 36;
|
||||
optional bool field7722 = 37;
|
||||
optional bool field7723 = 38;
|
||||
optional bool field7724 = 39;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field7725 = 40;
|
||||
optional .benchmarks.google_message3.UnusedEnum field7726 = 41;
|
||||
optional .benchmarks.google_message3.Enum7654 field7727 = 42;
|
||||
optional string field7728 = 44;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field7729 = 45;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message7651 field7730 = 55876009;
|
||||
}
|
||||
}
|
||||
|
||||
message Message7864 {
|
||||
optional string field7866 = 1;
|
||||
optional string field7867 = 2;
|
||||
repeated .benchmarks.google_message3.Message7865 field7868 = 5;
|
||||
repeated .benchmarks.google_message3.Message7865 field7869 = 6;
|
||||
repeated .benchmarks.google_message3.Message7865 field7870 = 7;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field7871 = 8;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message7864 field7872 = 44542730;
|
||||
}
|
||||
}
|
||||
|
||||
message Message7929 {
|
||||
optional int64 field7942 = 1;
|
||||
optional int64 field7943 = 4;
|
||||
optional int64 field7944 = 5;
|
||||
optional int64 field7945 = 12;
|
||||
optional int64 field7946 = 13;
|
||||
optional int64 field7947 = 18;
|
||||
optional int64 field7948 = 6;
|
||||
optional int64 field7949 = 7;
|
||||
repeated .benchmarks.google_message3.Message7919 field7950 = 8;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field7951 = 20;
|
||||
repeated .benchmarks.google_message3.Message7920 field7952 = 14;
|
||||
repeated .benchmarks.google_message3.Message7921 field7953 = 15;
|
||||
repeated .benchmarks.google_message3.Message7928 field7954 = 17;
|
||||
optional int64 field7955 = 19;
|
||||
optional bool field7956 = 2;
|
||||
optional int64 field7957 = 3;
|
||||
optional int64 field7958 = 9;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field7959 = 10;
|
||||
repeated bytes field7960 = 11;
|
||||
optional int64 field7961 = 16;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message7929 field7962 = 53392238;
|
||||
}
|
||||
}
|
||||
|
||||
message Message8508 {
|
||||
repeated .benchmarks.google_message3.Message8511 field8517 = 8;
|
||||
repeated .benchmarks.google_message3.Message8512 field8518 = 9;
|
||||
repeated .benchmarks.google_message3.Message8513 field8519 = 11;
|
||||
optional bool field8520 = 13;
|
||||
optional .benchmarks.google_message3.Message8514 field8521 = 14;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field8522 = 15;
|
||||
repeated .benchmarks.google_message3.Message8515 field8523 = 16;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field8524 = 17;
|
||||
optional int64 field8525 = 1;
|
||||
optional float field8526 = 2;
|
||||
optional int64 field8527 = 3;
|
||||
optional int64 field8528 = 4;
|
||||
optional int32 field8529 = 5;
|
||||
optional bytes field8530 = 6;
|
||||
repeated bytes field8531 = 7;
|
||||
optional bool field8532 = 10;
|
||||
optional bytes field8533 = 12;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message8508 field8534 = 3811804;
|
||||
}
|
||||
}
|
||||
|
||||
message Message9122 {
|
||||
optional float field9132 = 1;
|
||||
optional float field9133 = 2;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message9122 field9134 = 120398939;
|
||||
}
|
||||
}
|
||||
|
||||
message Message10177 {
|
||||
repeated .benchmarks.google_message3.Message10155 field10270 = 1;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message10177 field10271 = 26801105;
|
||||
}
|
||||
}
|
||||
|
||||
message Message10278 {
|
||||
repeated int32 field10286 = 1 [packed = true];
|
||||
repeated int32 field10287 = 2 [packed = true];
|
||||
optional int32 field10288 = 3;
|
||||
extend .benchmarks.google_message3.Message10155 {
|
||||
optional .benchmarks.google_message3.Message10278 field10289 = 29374161;
|
||||
}
|
||||
}
|
||||
|
||||
message Message10323 {
|
||||
repeated .benchmarks.google_message3.Message10320 field10360 = 1;
|
||||
extend .benchmarks.google_message3.Message10155 {
|
||||
optional .benchmarks.google_message3.Message10323 field10361 = 27922524;
|
||||
}
|
||||
}
|
||||
|
||||
message Message10324 {
|
||||
repeated .benchmarks.google_message3.Message10322 field10362 = 1;
|
||||
optional .benchmarks.google_message3.Message10321 field10363 = 2;
|
||||
extend .benchmarks.google_message3.Message10155 {
|
||||
optional .benchmarks.google_message3.Message10324 field10364 = 27832297;
|
||||
}
|
||||
}
|
||||
|
||||
message Message11990 {
|
||||
repeated .benchmarks.google_message3.Message11988 field12030 = 1;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message11990 field12031 = 21265426;
|
||||
}
|
||||
}
|
||||
|
||||
message Message12691 {
|
||||
optional string field12713 = 1;
|
||||
optional int32 field12714 = 2;
|
||||
optional .benchmarks.google_message3.Message12668 field12715 = 3;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message12691 field12716 = 28426536;
|
||||
}
|
||||
}
|
||||
|
||||
message Message12870 {
|
||||
required int32 field12879 = 1;
|
||||
optional int32 field12880 = 7;
|
||||
required int32 field12881 = 2;
|
||||
optional uint64 field12882 = 3;
|
||||
optional string field12883 = 2001;
|
||||
optional fixed64 field12884 = 4;
|
||||
repeated fixed64 field12885 = 14;
|
||||
optional int32 field12886 = 9;
|
||||
optional int64 field12887 = 18;
|
||||
repeated .benchmarks.google_message3.Message12870 field12888 = 8;
|
||||
optional int32 field12889 = 5;
|
||||
optional uint64 field12890 = 6;
|
||||
optional int32 field12891 = 10;
|
||||
optional int32 field12892 = 11;
|
||||
optional double field12893 = 12;
|
||||
optional .benchmarks.google_message3.Message12825 field12894 = 13;
|
||||
optional double field12895 = 15;
|
||||
optional string field12896 = 16;
|
||||
optional .benchmarks.google_message3.Enum12871 field12897 = 17;
|
||||
optional int32 field12898 = 19;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message12870 field12899 = 5447656;
|
||||
}
|
||||
}
|
||||
|
||||
message Message13154 {
|
||||
required float field13164 = 1;
|
||||
required float field13165 = 2;
|
||||
extend .benchmarks.google_message3.Message13145 {
|
||||
optional .benchmarks.google_message3.Message13154 field13166 = 47301086;
|
||||
}
|
||||
}
|
||||
|
||||
message Message16507 {
|
||||
optional bool field16510 = 3;
|
||||
optional bool field16511 = 4;
|
||||
optional bool field16512 = 14;
|
||||
repeated string field16513 = 5;
|
||||
repeated string field16514 = 6;
|
||||
optional string field16515 = 8;
|
||||
repeated int32 field16516 = 9;
|
||||
repeated int32 field16517 = 10;
|
||||
optional int32 field16518 = 7;
|
||||
optional string field16519 = 15;
|
||||
repeated string field16520 = 11;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field16521 = 27;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field16522 = 22;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field16523 = 28;
|
||||
optional string field16524 = 18;
|
||||
optional int32 field16525 = 19;
|
||||
optional int32 field16526 = 20;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field16527 = 23;
|
||||
optional bool field16528 = 24;
|
||||
repeated string field16529 = 25;
|
||||
optional double field16530 = 26;
|
||||
optional .benchmarks.google_message3.Message16478 field16531 = 30;
|
||||
optional bool field16532 = 31;
|
||||
optional string field16533 = 32;
|
||||
optional bool field16534 = 33;
|
||||
optional bool field16535 = 35;
|
||||
optional bool field16536 = 36;
|
||||
optional bool field16537 = 37;
|
||||
optional bool field16538 = 38;
|
||||
optional bool field16539 = 39;
|
||||
optional bool field16540 = 40;
|
||||
repeated string field16541 = 41;
|
||||
extensions 21 to 21;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message16507 field16542 = 5569941;
|
||||
}
|
||||
}
|
||||
|
||||
message Message16564 {
|
||||
repeated .benchmarks.google_message3.Message16552 field16568 = 1;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message16564 field16569 = 25830030;
|
||||
}
|
||||
}
|
||||
|
||||
message Message16661 {
|
||||
repeated .benchmarks.google_message3.Message16660 field16671 = 1;
|
||||
repeated uint64 field16672 = 2;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message16661 field16673 = 31274398;
|
||||
}
|
||||
}
|
||||
|
||||
message Message16746 {
|
||||
repeated .benchmarks.google_message3.Message16727 field16806 = 1;
|
||||
optional bool field16807 = 2;
|
||||
optional bool field16808 = 3;
|
||||
repeated .benchmarks.google_message3.Message16725 field16809 = 4;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message16746 field16810 = 28406765;
|
||||
}
|
||||
}
|
||||
|
||||
message Message17786 {
|
||||
repeated group Message17787 = 1 {
|
||||
required int32 field18177 = 2;
|
||||
required int32 field18178 = 3;
|
||||
optional .benchmarks.google_message3.Message17783 field18179 = 4;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18180 = 5;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18181 = 6;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field18182 = 8;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18183 = 9;
|
||||
optional .benchmarks.google_message3.Message17726 field18184 = 10;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18185 = 11;
|
||||
optional .benchmarks.google_message3.Message16945 field18186 = 102;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18187 = 12;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18188 = 13;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18189 = 7;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18190 = 100;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18191 = 101;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18192 = 14;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18193 = 19;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18194 = 22;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18195 = 24;
|
||||
optional .benchmarks.google_message3.Enum16925 field18196 = 21;
|
||||
optional bool field18197 = 18;
|
||||
repeated .benchmarks.google_message3.UnusedEnum field18198 = 23;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18199 = 15;
|
||||
optional string field18200 = 16;
|
||||
optional string field18201 = 17;
|
||||
optional bool field18202 = 99;
|
||||
}
|
||||
repeated .benchmarks.google_message3.Message17782 field18175 = 20;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message17786 field18176 = 11823055;
|
||||
}
|
||||
}
|
||||
|
||||
message Message22857 {
|
||||
repeated .benchmarks.google_message3.Message22853 field22874 = 1;
|
||||
extend .benchmarks.google_message3.Message10155 {
|
||||
optional .benchmarks.google_message3.Message22857 field22875 = 67799715;
|
||||
}
|
||||
}
|
||||
|
||||
message Message24404 {
|
||||
repeated group Message24405 = 1 {
|
||||
required int32 field24686 = 2;
|
||||
required int32 field24687 = 3;
|
||||
optional .benchmarks.google_message3.Message24317 field24688 = 4;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24689 = 5;
|
||||
optional .benchmarks.google_message3.Message24376 field24690 = 6;
|
||||
optional .benchmarks.google_message3.Message24345 field24691 = 7;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24692 = 8;
|
||||
optional .benchmarks.google_message3.Message24379 field24693 = 9;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24694 = 10;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24695 = 11;
|
||||
optional .benchmarks.google_message3.Message24391 field24696 = 12;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24697 = 13;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24698 = 14;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24699 = 22;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24700 = 23;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24701 = 25;
|
||||
optional .benchmarks.google_message3.Enum16925 field24702 = 18;
|
||||
optional float field24703 = 20;
|
||||
optional bool field24704 = 19;
|
||||
repeated .benchmarks.google_message3.Enum16891 field24705 = 24;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24706 = 15;
|
||||
optional string field24707 = 16;
|
||||
optional string field24708 = 17;
|
||||
optional float field24709 = 21;
|
||||
optional bool field24710 = 26;
|
||||
optional .benchmarks.google_message3.UnusedEnum field24711 = 27;
|
||||
optional bool field24712 = 28;
|
||||
optional .benchmarks.google_message3.UnusedEnum field24713 = 29;
|
||||
optional bool field24714 = 31;
|
||||
optional bool field24715 = 99;
|
||||
optional int64 field24716 = 32;
|
||||
}
|
||||
optional .benchmarks.google_message3.Message24403 field24684 = 30;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message24404 field24685 = 9129287;
|
||||
}
|
||||
}
|
||||
|
||||
message Message27300 {
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field27302 = 1;
|
||||
optional string field27303 = 2;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message27300 field27304 = 24956467;
|
||||
}
|
||||
}
|
||||
|
||||
message Message27453 {
|
||||
optional string field27459 = 15;
|
||||
repeated string field27460 = 1;
|
||||
repeated float field27461 = 6;
|
||||
repeated int32 field27462 = 27;
|
||||
repeated int32 field27463 = 28;
|
||||
repeated .benchmarks.google_message3.Message27454 field27464 = 24;
|
||||
repeated string field27465 = 2;
|
||||
repeated float field27466 = 7;
|
||||
repeated string field27467 = 22;
|
||||
repeated string field27468 = 23;
|
||||
optional string field27469 = 26;
|
||||
repeated .benchmarks.google_message3.Message27357 field27470 = 8;
|
||||
optional .benchmarks.google_message3.Message27360 field27471 = 16;
|
||||
optional string field27472 = 25;
|
||||
optional string field27473 = 11;
|
||||
optional bool field27474 = 13;
|
||||
optional bool field27475 = 14;
|
||||
optional bool field27476 = 17;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field27477 = 12;
|
||||
optional bool field27478 = 34268945;
|
||||
optional bool field27479 = 20;
|
||||
optional string field27480 = 21;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field27481 = 10;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message27453 field27482 = 8086204;
|
||||
}
|
||||
}
|
||||
|
||||
extend .benchmarks.google_message3.Message16945 {
|
||||
optional string field17026 = 472;
|
||||
repeated string field17027 = 818;
|
||||
optional .benchmarks.google_message3.Message0 field17031 = 215;
|
||||
repeated .benchmarks.google_message3.Message0 field17032 = 292;
|
||||
repeated .benchmarks.google_message3.Message0 field17038 = 234;
|
||||
repeated .benchmarks.google_message3.Message0 field17039 = 235;
|
||||
optional .benchmarks.google_message3.Message0 field17042 = 246;
|
||||
optional string field17043 = 224;
|
||||
optional string field17044 = 225;
|
||||
repeated string field17048 = 63;
|
||||
repeated string field17049 = 64;
|
||||
repeated .benchmarks.google_message3.Message0 field17052 = 233;
|
||||
repeated .benchmarks.google_message3.Message0 field17053 = 66;
|
||||
repeated string field17056 = 275;
|
||||
optional string field17057 = 226;
|
||||
repeated .benchmarks.google_message3.Message0 field17060 = 27;
|
||||
repeated string field17073 = 75;
|
||||
repeated .benchmarks.google_message3.Message0 field17076 = 77;
|
||||
repeated string field17078 = 296;
|
||||
repeated .benchmarks.google_message3.Message0 field17082 = 160;
|
||||
repeated .benchmarks.google_message3.Message0 field17091 = 585;
|
||||
repeated .benchmarks.google_message3.Message0 field17098 = 987;
|
||||
repeated .benchmarks.google_message3.Message0 field17101 = 157;
|
||||
repeated string field17102 = 158;
|
||||
repeated string field17107 = 166;
|
||||
repeated string field17133 = 567;
|
||||
repeated string field17134 = 572;
|
||||
repeated string field17160 = 49;
|
||||
repeated string field17168 = 32;
|
||||
repeated string field17170 = 34;
|
||||
repeated .benchmarks.google_message3.Message0 field17172 = 509;
|
||||
repeated string field17174 = 39;
|
||||
repeated .benchmarks.google_message3.Message0 field17175 = 40;
|
||||
repeated .benchmarks.google_message3.Message0 field17178 = 511;
|
||||
repeated .benchmarks.google_message3.Message0 field17185 = 50;
|
||||
repeated int32 field17207 = 1081;
|
||||
repeated .benchmarks.google_message3.Message0 field17238 = 184;
|
||||
repeated .benchmarks.google_message3.Message0 field17289 = 177;
|
||||
repeated .benchmarks.google_message3.Message0 field17290 = 178;
|
||||
repeated .benchmarks.google_message3.Message0 field17296 = 474;
|
||||
repeated string field17298 = 44;
|
||||
repeated .benchmarks.google_message3.Message0 field17301 = 47;
|
||||
optional .benchmarks.google_message3.Message0 field17412 = 21;
|
||||
repeated .benchmarks.google_message3.Message0 field17438 = 132;
|
||||
repeated .benchmarks.google_message3.Message0 field17458 = 512;
|
||||
repeated string field17460 = 560;
|
||||
repeated string field17466 = 552;
|
||||
repeated .benchmarks.google_message3.Message0 field17617 = 1080;
|
||||
repeated int32 field17618 = 1084;
|
||||
}
|
1298
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3_1.proto
vendored
Normal file
1298
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3_1.proto
vendored
Normal file
File diff suppressed because it is too large
Load Diff
528
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3_2.proto
vendored
Normal file
528
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3_2.proto
vendored
Normal file
@ -0,0 +1,528 @@
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
// LINT: ALLOW_GROUPS
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package benchmarks.google_message3;
|
||||
|
||||
import "datasets/google_message3/benchmark_message3_3.proto";
|
||||
import "datasets/google_message3/benchmark_message3_4.proto";
|
||||
import "datasets/google_message3/benchmark_message3_5.proto";
|
||||
import "datasets/google_message3/benchmark_message3_7.proto";
|
||||
import "datasets/google_message3/benchmark_message3_8.proto";
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option java_package = "com.google.protobuf.benchmarks";
|
||||
|
||||
message Message22853 {
|
||||
optional .benchmarks.google_message3.Enum22854 field22869 = 1;
|
||||
repeated uint32 field22870 = 2 [packed = true];
|
||||
repeated float field22871 = 3 [packed = true];
|
||||
repeated float field22872 = 5 [packed = true];
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field22873 = 4;
|
||||
}
|
||||
|
||||
message Message24345 {
|
||||
optional string field24533 = 1;
|
||||
optional .benchmarks.google_message3.UnusedEnum field24534 = 22;
|
||||
optional .benchmarks.google_message3.Message24346 field24535 = 2;
|
||||
optional string field24536 = 3;
|
||||
optional string field24537 = 4;
|
||||
optional .benchmarks.google_message3.UnusedEnum field24538 = 23;
|
||||
optional string field24539 = 5;
|
||||
required string field24540 = 6;
|
||||
optional string field24541 = 7;
|
||||
optional string field24542 = 8;
|
||||
optional .benchmarks.google_message3.Message24316 field24543 = 9;
|
||||
optional .benchmarks.google_message3.Message24376 field24544 = 10;
|
||||
optional string field24545 = 11;
|
||||
optional string field24546 = 19;
|
||||
optional string field24547 = 20;
|
||||
optional string field24548 = 21;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24549 = 12;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24550 = 13;
|
||||
repeated string field24551 = 14;
|
||||
optional string field24552 = 15;
|
||||
optional int32 field24553 = 18;
|
||||
optional .benchmarks.google_message3.Message24379 field24554 = 16;
|
||||
optional string field24555 = 17;
|
||||
repeated .benchmarks.google_message3.Message24356 field24556 = 24;
|
||||
repeated .benchmarks.google_message3.Message24366 field24557 = 25;
|
||||
}
|
||||
|
||||
message Message24403 {
|
||||
optional .benchmarks.google_message3.Message24401 field24681 = 1;
|
||||
optional .benchmarks.google_message3.Message24402 field24682 = 2;
|
||||
}
|
||||
|
||||
message Message24391 {
|
||||
optional string field24631 = 1;
|
||||
optional string field24632 = 2;
|
||||
repeated string field24633 = 3;
|
||||
optional string field24634 = 4;
|
||||
repeated string field24635 = 5;
|
||||
repeated string field24636 = 16;
|
||||
optional string field24637 = 17;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24638 = 25;
|
||||
optional string field24639 = 7;
|
||||
optional string field24640 = 18;
|
||||
optional string field24641 = 19;
|
||||
optional string field24642 = 20;
|
||||
optional int32 field24643 = 24;
|
||||
optional .benchmarks.google_message3.Message24379 field24644 = 8;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field24645 = 9;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24646 = 10;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24647 = 11;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24648 = 12;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field24649 = 13;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24650 = 14;
|
||||
optional string field24651 = 21;
|
||||
optional int32 field24652 = 22;
|
||||
optional int32 field24653 = 23;
|
||||
repeated string field24654 = 15;
|
||||
repeated string field24655 = 6;
|
||||
}
|
||||
|
||||
message Message27454 {}
|
||||
|
||||
message Message27357 {
|
||||
optional string field27410 = 1;
|
||||
optional float field27411 = 2;
|
||||
optional string field27412 = 3;
|
||||
optional bool field27413 = 4;
|
||||
optional bool field27414 = 5;
|
||||
}
|
||||
|
||||
message Message27360 {
|
||||
optional .benchmarks.google_message3.Message27358 field27426 = 1;
|
||||
optional .benchmarks.google_message3.Enum27361 field27427 = 2;
|
||||
optional .benchmarks.google_message3.Message27358 field27428 = 3;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field27429 = 4;
|
||||
}
|
||||
|
||||
message Message34387 {
|
||||
optional string field34446 = 1;
|
||||
repeated .benchmarks.google_message3.Message34381 field34447 = 2;
|
||||
optional .benchmarks.google_message3.UnusedEnum field34448 = 3;
|
||||
optional .benchmarks.google_message3.Enum34388 field34449 = 4;
|
||||
optional int64 field34450 = 5;
|
||||
}
|
||||
|
||||
message Message34621 {
|
||||
optional double field34651 = 1;
|
||||
optional double field34652 = 2;
|
||||
optional double field34653 = 3;
|
||||
optional double field34654 = 4;
|
||||
optional double field34655 = 11;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field34656 = 13;
|
||||
optional .benchmarks.google_message3.Message34619 field34657 = 14;
|
||||
optional string field34658 = 5;
|
||||
optional string field34659 = 9;
|
||||
optional double field34660 = 12;
|
||||
optional bytes field34661 = 19;
|
||||
optional string field34662 = 15;
|
||||
optional string field34663 = 16;
|
||||
optional string field34664 = 17;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field34665 = 18;
|
||||
optional .benchmarks.google_message3.Message34621 field34666 = 20;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field34667 = 100;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field34668 = 101;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message34621 field34669 = 17562023;
|
||||
}
|
||||
}
|
||||
|
||||
message Message35476 {
|
||||
optional string field35484 = 1;
|
||||
optional string field35485 = 2;
|
||||
optional string field35486 = 3;
|
||||
optional .benchmarks.google_message3.Enum35477 field35487 = 4;
|
||||
optional float field35488 = 5;
|
||||
optional float field35489 = 6;
|
||||
optional float field35490 = 7;
|
||||
optional float field35491 = 8;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field35492 = 9;
|
||||
optional int32 field35493 = 10;
|
||||
optional int32 field35494 = 11;
|
||||
optional int32 field35495 = 12;
|
||||
optional string field35496 = 13;
|
||||
optional string field35497 = 14;
|
||||
}
|
||||
|
||||
message Message949 {
|
||||
optional string field955 = 1;
|
||||
optional int64 field956 = 2;
|
||||
optional int64 field957 = 3;
|
||||
optional .benchmarks.google_message3.Message730 field958 = 4;
|
||||
repeated string field959 = 5;
|
||||
optional string field960 = 6;
|
||||
optional bool field961 = 7;
|
||||
}
|
||||
|
||||
message Message36869 {
|
||||
optional int32 field36970 = 1;
|
||||
optional int32 field36971 = 2;
|
||||
}
|
||||
|
||||
message Message33968 {
|
||||
repeated group Message33969 = 1 {}
|
||||
repeated .benchmarks.google_message3.Message33958 field33989 = 3;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field33990 = 106;
|
||||
optional bool field33991 = 108;
|
||||
optional .benchmarks.google_message3.UnusedEnum field33992 = 107;
|
||||
}
|
||||
|
||||
message Message6644 {
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field6701 = 8;
|
||||
optional string field6702 = 1;
|
||||
optional double field6703 = 2;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field6704 = 9;
|
||||
optional bytes field6705 = 3;
|
||||
optional bytes field6706 = 19;
|
||||
optional .benchmarks.google_message3.Message6637 field6707 = 4;
|
||||
repeated .benchmarks.google_message3.Message6126 field6708 = 18;
|
||||
optional bool field6709 = 6;
|
||||
optional .benchmarks.google_message3.Message6643 field6710 = 10;
|
||||
optional string field6711 = 12;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field6712 = 14;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field6713 = 15;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field6714 = 16;
|
||||
optional int32 field6715 = 17;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field6716 = 20;
|
||||
}
|
||||
|
||||
message Message18831 {
|
||||
repeated group Message18832 = 1 {
|
||||
optional int32 field18836 = 2;
|
||||
optional string field18837 = 5;
|
||||
optional float field18838 = 3;
|
||||
optional float field18839 = 9;
|
||||
optional int32 field18840 = 11;
|
||||
repeated uint64 field18841 = 4;
|
||||
repeated group Message18833 = 6 {
|
||||
required uint64 field18843 = 7;
|
||||
optional string field18844 = 8;
|
||||
optional float field18845 = 10;
|
||||
optional int32 field18846 = 12;
|
||||
optional bool field18847 = 13;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
message Message13090 {
|
||||
optional .benchmarks.google_message3.Message13083 field13141 = 1;
|
||||
optional .benchmarks.google_message3.Message13088 field13142 = 2;
|
||||
}
|
||||
|
||||
message Message11874 {
|
||||
optional .benchmarks.google_message3.Message10391 field11888 = 3;
|
||||
optional string field11889 = 4;
|
||||
optional .benchmarks.google_message3.Message11873 field11890 = 6;
|
||||
optional bool field11891 = 7;
|
||||
extensions 1 to 1;
|
||||
extensions 2 to 2;
|
||||
extensions 5 to 5;
|
||||
}
|
||||
|
||||
message Message4144 {
|
||||
repeated group Message4145 = 1 {
|
||||
required .benchmarks.google_message3.Enum4146 field4165 = 2;
|
||||
required int32 field4166 = 3;
|
||||
optional .benchmarks.google_message3.Enum4160 field4167 = 9;
|
||||
optional bytes field4168 = 4;
|
||||
optional .benchmarks.google_message3.Enum4152 field4169 = 5;
|
||||
optional string field4170 = 6;
|
||||
}
|
||||
}
|
||||
|
||||
message Message35573 {
|
||||
optional fixed64 field35695 = 16;
|
||||
optional string field35696 = 1000;
|
||||
optional string field35697 = 1004;
|
||||
optional int32 field35698 = 1003;
|
||||
repeated group Message35574 = 1012 {}
|
||||
optional int64 field35700 = 1011;
|
||||
optional int64 field35701 = 1005;
|
||||
optional int64 field35702 = 1006;
|
||||
optional int64 field35703 = 1007;
|
||||
optional int64 field35704 = 1008;
|
||||
repeated group Message35575 = 1 {
|
||||
optional int64 field35709 = 2;
|
||||
optional string field35710 = 3;
|
||||
optional string field35711 = 19;
|
||||
optional int32 field35712 = 20;
|
||||
optional int32 field35713 = 21;
|
||||
optional int32 field35714 = 22;
|
||||
optional bool field35715 = 23;
|
||||
optional int32 field35716 = 47;
|
||||
optional int32 field35717 = 48;
|
||||
optional bool field35718 = 24;
|
||||
optional fixed64 field35719 = 25;
|
||||
optional bytes field35720 = 52;
|
||||
optional int32 field35721 = 18;
|
||||
optional fixed32 field35722 = 43;
|
||||
optional bool field35723 = 26;
|
||||
optional int32 field35724 = 27;
|
||||
optional int32 field35725 = 17;
|
||||
optional bool field35726 = 45;
|
||||
repeated int32 field35727 = 33;
|
||||
repeated int32 field35728 = 58;
|
||||
optional float field35729 = 34;
|
||||
optional float field35730 = 1009;
|
||||
optional int32 field35731 = 28;
|
||||
repeated fixed64 field35732 = 1001;
|
||||
repeated fixed64 field35733 = 1002;
|
||||
optional int32 field35734 = 44;
|
||||
optional int32 field35735 = 50;
|
||||
optional int32 field35736 = 36;
|
||||
optional int32 field35737 = 40;
|
||||
optional bool field35738 = 1016;
|
||||
optional bool field35739 = 1010;
|
||||
optional int32 field35740 = 37;
|
||||
optional int32 field35741 = 38;
|
||||
optional string field35742 = 46;
|
||||
optional uint32 field35743 = 60;
|
||||
repeated bytes field35744 = 56;
|
||||
optional .benchmarks.google_message3.Message0 field35745 = 57;
|
||||
required group Message35576 = 4 {
|
||||
optional fixed64 field35747 = 5;
|
||||
optional int32 field35748 = 6;
|
||||
optional int32 field35749 = 49;
|
||||
optional int32 field35750 = 7;
|
||||
optional uint32 field35751 = 59;
|
||||
optional int32 field35752 = 14;
|
||||
optional int32 field35753 = 15;
|
||||
optional int32 field35754 = 35;
|
||||
optional bytes field35755 = 53;
|
||||
optional int32 field35756 = 8;
|
||||
optional string field35757 = 9;
|
||||
optional fixed64 field35758 = 10;
|
||||
optional int32 field35759 = 11;
|
||||
optional int32 field35760 = 12;
|
||||
optional int32 field35761 = 41;
|
||||
optional int32 field35762 = 30;
|
||||
optional int32 field35763 = 31;
|
||||
optional int32 field35764 = 13;
|
||||
optional bytes field35765 = 39;
|
||||
optional string field35766 = 29;
|
||||
optional int32 field35767 = 42;
|
||||
repeated int32 field35768 = 32;
|
||||
repeated int32 field35769 = 51;
|
||||
optional int64 field35770 = 54;
|
||||
optional .benchmarks.google_message3.Message0 field35771 = 55;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
message Message36858 {
|
||||
repeated int32 field36956 = 1;
|
||||
repeated string field36957 = 2;
|
||||
repeated string field36958 = 12;
|
||||
optional int32 field36959 = 3;
|
||||
optional int32 field36960 = 4;
|
||||
optional int32 field36961 = 14;
|
||||
optional string field36962 = 11;
|
||||
optional bool field36963 = 5;
|
||||
optional bool field36964 = 13;
|
||||
optional int64 field36965 = 6;
|
||||
optional .benchmarks.google_message3.Message35506 field36966 = 7;
|
||||
repeated group Message36859 = 8 {
|
||||
required .benchmarks.google_message3.Enum36860 field36968 = 9;
|
||||
optional float field36969 = 10;
|
||||
}
|
||||
}
|
||||
|
||||
message Message13174 {
|
||||
required int32 field13237 = 6;
|
||||
optional int32 field13238 = 3;
|
||||
required int32 field13239 = 4;
|
||||
optional int32 field13240 = 8;
|
||||
optional double field13241 = 5;
|
||||
optional double field13242 = 7;
|
||||
optional int32 field13243 = 17;
|
||||
optional int32 field13244 = 19;
|
||||
optional double field13245 = 20;
|
||||
optional int32 field13246 = 9;
|
||||
optional double field13247 = 10;
|
||||
optional int32 field13248 = 11;
|
||||
optional .benchmarks.google_message3.Message13151 field13249 = 21;
|
||||
optional int32 field13250 = 1;
|
||||
optional double field13251 = 2;
|
||||
optional double field13252 = 15;
|
||||
optional double field13253 = 16;
|
||||
optional double field13254 = 12;
|
||||
optional double field13255 = 13;
|
||||
optional double field13256 = 14;
|
||||
optional int32 field13257 = 18;
|
||||
}
|
||||
|
||||
message Message18283 {
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18478 = 1;
|
||||
optional int32 field18479 = 4;
|
||||
optional int32 field18480 = 106;
|
||||
optional int32 field18481 = 107;
|
||||
optional int32 field18482 = 108;
|
||||
optional int32 field18483 = 109;
|
||||
optional int32 field18484 = 105;
|
||||
optional int32 field18485 = 113;
|
||||
optional int32 field18486 = 114;
|
||||
optional int32 field18487 = 124;
|
||||
optional int32 field18488 = 125;
|
||||
optional int32 field18489 = 128;
|
||||
optional int32 field18490 = 135;
|
||||
optional bool field18491 = 166;
|
||||
optional bool field18492 = 136;
|
||||
optional int32 field18493 = 140;
|
||||
optional int32 field18494 = 171;
|
||||
optional int32 field18495 = 148;
|
||||
optional int32 field18496 = 145;
|
||||
optional float field18497 = 117;
|
||||
optional int32 field18498 = 146;
|
||||
optional string field18499 = 3;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18500 = 5;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18501 = 6;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18502 = 9;
|
||||
optional .benchmarks.google_message3.Message18253 field18503 = 155;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18504 = 184;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18505 = 163;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18506 = 16;
|
||||
repeated int32 field18507 = 20;
|
||||
repeated int32 field18508 = 7;
|
||||
repeated string field18509 = 194;
|
||||
optional bytes field18510 = 30;
|
||||
optional int32 field18511 = 31;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18512 = 178;
|
||||
optional string field18513 = 8;
|
||||
optional float field18514 = 2;
|
||||
optional float field18515 = 100;
|
||||
optional float field18516 = 101;
|
||||
optional float field18517 = 102;
|
||||
optional int32 field18518 = 103;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field18519 = 104;
|
||||
optional int32 field18520 = 110;
|
||||
optional int32 field18521 = 112;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18522 = 111;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18523 = 115;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18524 = 119;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18525 = 127;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18526 = 185;
|
||||
optional int32 field18527 = 120;
|
||||
optional int32 field18528 = 132;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18529 = 126;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18530 = 129;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18531 = 131;
|
||||
optional fixed64 field18532 = 150;
|
||||
optional int32 field18533 = 133;
|
||||
optional int32 field18534 = 134;
|
||||
optional int32 field18535 = 139;
|
||||
optional fixed64 field18536 = 137;
|
||||
optional fixed64 field18537 = 138;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18538 = 141;
|
||||
optional int32 field18539 = 142;
|
||||
optional int32 field18540 = 181;
|
||||
optional .benchmarks.google_message3.Message16816 field18541 = 143;
|
||||
optional .benchmarks.google_message3.Message16685 field18542 = 154;
|
||||
optional int32 field18543 = 144;
|
||||
optional int64 field18544 = 147;
|
||||
optional int64 field18545 = 149;
|
||||
optional int32 field18546 = 151;
|
||||
optional int32 field18547 = 152;
|
||||
optional int32 field18548 = 153;
|
||||
optional float field18549 = 161;
|
||||
optional .benchmarks.google_message3.Message0 field18550 = 123;
|
||||
repeated int64 field18551 = 156;
|
||||
optional int32 field18552 = 157;
|
||||
repeated fixed64 field18553 = 188;
|
||||
optional int32 field18554 = 158;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18555 = 159;
|
||||
optional bool field18556 = 160;
|
||||
optional uint64 field18557 = 162;
|
||||
optional int32 field18558 = 164;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18559 = 10;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18560 = 167;
|
||||
optional int32 field18561 = 168;
|
||||
repeated fixed64 field18562 = 169;
|
||||
repeated string field18563 = 170;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18564 = 172;
|
||||
optional int64 field18565 = 173;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18566 = 174;
|
||||
optional int64 field18567 = 175;
|
||||
optional uint32 field18568 = 189;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18569 = 176;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18570 = 177;
|
||||
optional uint32 field18571 = 179;
|
||||
optional uint32 field18572 = 180;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18573 = 182;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18574 = 183;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18575 = 121;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18576 = 186;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18577 = 187;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18578 = 190;
|
||||
optional int32 field18579 = 191;
|
||||
optional float field18580 = 192;
|
||||
optional bool field18581 = 193;
|
||||
extensions 116 to 116;
|
||||
extensions 118 to 118;
|
||||
extensions 130 to 130;
|
||||
extensions 165 to 165;
|
||||
}
|
||||
|
||||
message Message13169 {
|
||||
repeated .benchmarks.google_message3.Message13168 field13223 = 1;
|
||||
required .benchmarks.google_message3.Message13167 field13224 = 2;
|
||||
optional string field13225 = 3;
|
||||
}
|
||||
|
||||
message Message19255 {
|
||||
optional string field19257 = 1;
|
||||
}
|
||||
|
||||
message Message35542 {
|
||||
optional bool field35543 = 1;
|
||||
optional bool field35544 = 2;
|
||||
optional bool field35545 = 3;
|
||||
}
|
||||
|
||||
message Message3901 {
|
||||
optional int32 field3990 = 1;
|
||||
optional int32 field3991 = 2;
|
||||
optional int32 field3992 = 3;
|
||||
optional int32 field3993 = 4;
|
||||
optional int32 field3994 = 7;
|
||||
optional int32 field3995 = 8;
|
||||
optional int32 field3996 = 9;
|
||||
optional int32 field3997 = 10;
|
||||
optional int32 field3998 = 11;
|
||||
optional int32 field3999 = 12;
|
||||
optional .benchmarks.google_message3.UnusedEnum field4000 = 6;
|
||||
optional int32 field4001 = 5;
|
||||
}
|
496
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3_3.proto
vendored
Normal file
496
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3_3.proto
vendored
Normal file
@ -0,0 +1,496 @@
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
// LINT: ALLOW_GROUPS
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package benchmarks.google_message3;
|
||||
|
||||
import "datasets/google_message3/benchmark_message3_4.proto";
|
||||
import "datasets/google_message3/benchmark_message3_5.proto";
|
||||
import "datasets/google_message3/benchmark_message3_7.proto";
|
||||
import "datasets/google_message3/benchmark_message3_8.proto";
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option java_package = "com.google.protobuf.benchmarks";
|
||||
|
||||
message Message35546 {
|
||||
optional int64 field35556 = 1;
|
||||
optional int32 field35557 = 2;
|
||||
optional bool field35558 = 3;
|
||||
optional int64 field35559 = 13;
|
||||
optional group Message35547 = 4 {
|
||||
required int32 field35569 = 5;
|
||||
required int32 field35570 = 6;
|
||||
}
|
||||
optional group Message35548 = 10 {
|
||||
required int64 field35571 = 11;
|
||||
required int64 field35572 = 12;
|
||||
}
|
||||
optional bool field35562 = 14;
|
||||
optional bool field35563 = 15;
|
||||
optional int32 field35564 = 16;
|
||||
optional bool field35565 = 17;
|
||||
optional bool field35566 = 18;
|
||||
optional string field35567 = 100;
|
||||
}
|
||||
|
||||
message Message2356 {
|
||||
optional .benchmarks.google_message3.Message1374 field2368 = 121;
|
||||
optional uint64 field2369 = 1;
|
||||
optional int32 field2370 = 2;
|
||||
optional int32 field2371 = 17;
|
||||
required string field2372 = 3;
|
||||
optional int32 field2373 = 7;
|
||||
optional bytes field2374 = 8;
|
||||
optional string field2375 = 4;
|
||||
optional string field2376 = 101;
|
||||
optional int32 field2377 = 102;
|
||||
optional int32 field2378 = 103;
|
||||
optional int32 field2379 = 104;
|
||||
optional int32 field2380 = 113;
|
||||
optional int32 field2381 = 114;
|
||||
optional int32 field2382 = 115;
|
||||
optional int32 field2383 = 117;
|
||||
optional int32 field2384 = 118;
|
||||
optional int32 field2385 = 119;
|
||||
optional int32 field2386 = 105;
|
||||
optional bytes field2387 = 5;
|
||||
optional group Message2357 = 6 {
|
||||
optional int64 field2399 = 9;
|
||||
optional int32 field2400 = 10;
|
||||
optional int32 field2401 = 11;
|
||||
optional int32 field2402 = 12;
|
||||
optional int32 field2403 = 13;
|
||||
optional int32 field2404 = 116;
|
||||
optional int32 field2405 = 106;
|
||||
required bytes field2406 = 14;
|
||||
optional int32 field2407 = 45;
|
||||
optional int32 field2408 = 112;
|
||||
optional bool field2409 = 122;
|
||||
optional bytes field2410 = 124;
|
||||
}
|
||||
optional string field2389 = 120;
|
||||
optional group Message2358 = 107 {}
|
||||
repeated group Message2359 = 40 {
|
||||
optional string field2413 = 41;
|
||||
optional string field2414 = 42;
|
||||
optional string field2415 = 43;
|
||||
optional string field2416 = 44;
|
||||
optional int32 field2417 = 46;
|
||||
optional string field2418 = 47;
|
||||
optional float field2419 = 110;
|
||||
optional float field2420 = 111;
|
||||
}
|
||||
optional int32 field2392 = 50;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field2393 = 60;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field2394 = 70;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field2395 = 80;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field2396 = 90;
|
||||
optional string field2397 = 100;
|
||||
optional string field2398 = 123;
|
||||
}
|
||||
|
||||
message Message7029 {
|
||||
required int32 field7183 = 1;
|
||||
optional int32 field7184 = 2;
|
||||
optional int32 field7185 = 3;
|
||||
optional int32 field7186 = 4;
|
||||
optional int32 field7187 = 5;
|
||||
optional int32 field7188 = 6;
|
||||
optional int32 field7189 = 17;
|
||||
optional int32 field7190 = 18;
|
||||
optional int32 field7191 = 49;
|
||||
optional int32 field7192 = 28;
|
||||
optional int32 field7193 = 33;
|
||||
optional int32 field7194 = 25;
|
||||
optional int32 field7195 = 26;
|
||||
optional int32 field7196 = 40;
|
||||
optional int32 field7197 = 41;
|
||||
optional int32 field7198 = 42;
|
||||
optional int32 field7199 = 43;
|
||||
optional int32 field7200 = 19;
|
||||
optional int32 field7201 = 7;
|
||||
optional int32 field7202 = 8;
|
||||
optional int32 field7203 = 9;
|
||||
optional int32 field7204 = 10;
|
||||
optional int32 field7205 = 11;
|
||||
optional int32 field7206 = 12;
|
||||
repeated group Message7030 = 13 {
|
||||
optional string field7226 = 14;
|
||||
optional string field7227 = 15;
|
||||
optional int64 field7228 = 16;
|
||||
}
|
||||
repeated group Message7031 = 21 {
|
||||
optional string field7229 = 22;
|
||||
optional int32 field7230 = 23;
|
||||
optional int32 field7231 = 24;
|
||||
optional int32 field7232 = 30;
|
||||
optional int32 field7233 = 31;
|
||||
optional int32 field7234 = 35;
|
||||
}
|
||||
optional int32 field7209 = 20;
|
||||
optional float field7210 = 27;
|
||||
optional int32 field7211 = 29;
|
||||
optional int32 field7212 = 32;
|
||||
optional string field7213 = 48;
|
||||
optional bool field7214 = 34;
|
||||
optional int32 field7215 = 36;
|
||||
optional float field7216 = 37;
|
||||
optional bool field7217 = 38;
|
||||
optional bool field7218 = 39;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field7219 = 44;
|
||||
optional int32 field7220 = 45;
|
||||
optional int32 field7221 = 46;
|
||||
optional int32 field7222 = 47;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field7223 = 50;
|
||||
optional int32 field7224 = 51;
|
||||
}
|
||||
|
||||
message Message35538 {
|
||||
required int64 field35539 = 1;
|
||||
}
|
||||
|
||||
message Message18921 {
|
||||
optional string field18946 = 1;
|
||||
optional fixed64 field18947 = 2;
|
||||
optional int32 field18948 = 3;
|
||||
optional double field18949 = 4;
|
||||
optional bool field18950 = 17;
|
||||
optional bool field18951 = 23;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18952 = 24;
|
||||
repeated group Message18922 = 5 {
|
||||
optional uint64 field18959 = 6;
|
||||
optional string field18960 = 13;
|
||||
optional bool field18961 = 21;
|
||||
optional bool field18962 = 33;
|
||||
optional int32 field18963 = 7;
|
||||
optional int32 field18964 = 8;
|
||||
optional string field18965 = 9;
|
||||
optional .benchmarks.google_message3.Message18856 field18966 = 10;
|
||||
optional uint64 field18967 = 34;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18968 = 11;
|
||||
optional uint64 field18969 = 35;
|
||||
optional float field18970 = 12;
|
||||
repeated string field18971 = 14;
|
||||
optional bool field18972 = 15;
|
||||
optional bool field18973 = 16;
|
||||
optional float field18974 = 22;
|
||||
optional int32 field18975 = 18;
|
||||
optional int32 field18976 = 19;
|
||||
optional int32 field18977 = 20;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field18978 = 25;
|
||||
optional .benchmarks.google_message3.UnusedEnum field18979 = 26;
|
||||
repeated string field18980 = 27;
|
||||
optional float field18981 = 28;
|
||||
}
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field18954 = 29;
|
||||
repeated .benchmarks.google_message3.Message18943 field18955 = 30;
|
||||
repeated .benchmarks.google_message3.Message18944 field18956 = 31;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field18957 = 32;
|
||||
}
|
||||
|
||||
message Message35540 {
|
||||
optional bool field35541 = 1;
|
||||
}
|
||||
|
||||
message Message3886 {
|
||||
repeated group Message3887 = 1 {
|
||||
required string field3932 = 2;
|
||||
optional string field3933 = 9;
|
||||
optional .benchmarks.google_message3.Message3850 field3934 = 3;
|
||||
optional bytes field3935 = 8;
|
||||
}
|
||||
}
|
||||
|
||||
message Message6743 {
|
||||
optional .benchmarks.google_message3.Message6721 field6759 = 1;
|
||||
optional .benchmarks.google_message3.Message6723 field6760 = 2;
|
||||
optional .benchmarks.google_message3.Message6723 field6761 = 8;
|
||||
optional .benchmarks.google_message3.Message6725 field6762 = 3;
|
||||
optional .benchmarks.google_message3.Message6726 field6763 = 4;
|
||||
optional .benchmarks.google_message3.Message6733 field6764 = 5;
|
||||
optional .benchmarks.google_message3.Message6734 field6765 = 6;
|
||||
optional .benchmarks.google_message3.Message6742 field6766 = 7;
|
||||
}
|
||||
|
||||
message Message6773 {
|
||||
optional .benchmarks.google_message3.Enum6769 field6794 = 1;
|
||||
optional int32 field6795 = 9;
|
||||
optional .benchmarks.google_message3.UnusedEnum field6796 = 10;
|
||||
optional int32 field6797 = 11;
|
||||
optional int32 field6798 = 2;
|
||||
optional .benchmarks.google_message3.Enum6774 field6799 = 3;
|
||||
optional double field6800 = 5;
|
||||
optional double field6801 = 7;
|
||||
optional double field6802 = 8;
|
||||
optional .benchmarks.google_message3.Enum6782 field6803 = 6;
|
||||
}
|
||||
|
||||
message Message8224 {
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8255 = 1;
|
||||
optional .benchmarks.google_message3.Message8184 field8256 = 2;
|
||||
optional .benchmarks.google_message3.Message7966 field8257 = 3;
|
||||
optional string field8258 = 4;
|
||||
optional string field8259 = 5;
|
||||
optional bool field8260 = 6;
|
||||
optional int64 field8261 = 7;
|
||||
optional string field8262 = 8;
|
||||
optional int64 field8263 = 9;
|
||||
optional double field8264 = 10;
|
||||
optional int64 field8265 = 11;
|
||||
repeated string field8266 = 12;
|
||||
optional int64 field8267 = 13;
|
||||
optional int32 field8268 = 14;
|
||||
optional int32 field8269 = 15;
|
||||
optional int64 field8270 = 16;
|
||||
optional double field8271 = 17;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8272 = 18;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8273 = 19;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field8274 = 20;
|
||||
optional bool field8275 = 21;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8276 = 22;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8277 = 23;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field8278 = 24;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8279 = 25;
|
||||
optional bool field8280 = 26;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field8281 = 27;
|
||||
}
|
||||
|
||||
message Message8392 {
|
||||
optional string field8395 = 1;
|
||||
optional string field8396 = 2;
|
||||
optional .benchmarks.google_message3.Message7966 field8397 = 3;
|
||||
optional string field8398 = 4;
|
||||
optional string field8399 = 5;
|
||||
optional string field8400 = 6;
|
||||
optional string field8401 = 7;
|
||||
optional string field8402 = 8;
|
||||
optional string field8403 = 9;
|
||||
}
|
||||
|
||||
message Message8130 {
|
||||
optional string field8156 = 1;
|
||||
optional string field8157 = 2;
|
||||
optional string field8158 = 4;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8159 = 6;
|
||||
repeated string field8160 = 7;
|
||||
optional int64 field8161 = 8;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8162 = 9;
|
||||
optional string field8163 = 10;
|
||||
optional string field8164 = 11;
|
||||
optional string field8165 = 12;
|
||||
optional string field8166 = 13;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8167 = 14;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8168 = 15;
|
||||
optional string field8169 = 16;
|
||||
optional .benchmarks.google_message3.UnusedEnum field8170 = 17;
|
||||
optional .benchmarks.google_message3.UnusedEnum field8171 = 18;
|
||||
optional bool field8172 = 19;
|
||||
optional bool field8173 = 20;
|
||||
optional double field8174 = 21;
|
||||
optional int32 field8175 = 22;
|
||||
optional int32 field8176 = 23;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8177 = 24;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field8178 = 25;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field8179 = 26;
|
||||
}
|
||||
|
||||
message Message8478 {
|
||||
optional string field8489 = 7;
|
||||
optional .benchmarks.google_message3.Message7966 field8490 = 1;
|
||||
optional .benchmarks.google_message3.Message8476 field8491 = 2;
|
||||
optional int64 field8492 = 3;
|
||||
optional .benchmarks.google_message3.Message8476 field8493 = 4;
|
||||
repeated .benchmarks.google_message3.Message8477 field8494 = 5;
|
||||
optional .benchmarks.google_message3.Message8454 field8495 = 6;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8496 = 8;
|
||||
}
|
||||
|
||||
message Message8479 {
|
||||
optional .benchmarks.google_message3.Message8475 field8497 = 1;
|
||||
optional .benchmarks.google_message3.Message7966 field8498 = 2;
|
||||
optional .benchmarks.google_message3.Message8476 field8499 = 3;
|
||||
optional .benchmarks.google_message3.Message8476 field8500 = 4;
|
||||
optional string field8501 = 6;
|
||||
optional string field8502 = 7;
|
||||
optional .benchmarks.google_message3.Message7966 field8503 = 8;
|
||||
optional .benchmarks.google_message3.Message8455 field8504 = 5;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8505 = 9;
|
||||
}
|
||||
|
||||
message Message10319 {
|
||||
optional .benchmarks.google_message3.Enum10325 field10340 = 1;
|
||||
optional int32 field10341 = 4;
|
||||
optional int32 field10342 = 5;
|
||||
optional bytes field10343 = 3;
|
||||
optional string field10344 = 2;
|
||||
optional string field10345 = 6;
|
||||
optional string field10346 = 7;
|
||||
}
|
||||
|
||||
message Message4016 {
|
||||
required int32 field4017 = 1;
|
||||
required int32 field4018 = 2;
|
||||
required int32 field4019 = 3;
|
||||
required int32 field4020 = 4;
|
||||
}
|
||||
|
||||
message Message12669 {
|
||||
optional .benchmarks.google_message3.Message12559 field12681 = 1;
|
||||
optional float field12682 = 2;
|
||||
optional bool field12683 = 3;
|
||||
optional .benchmarks.google_message3.Enum12670 field12684 = 4;
|
||||
}
|
||||
|
||||
message Message12819 {
|
||||
optional double field12834 = 1;
|
||||
optional double field12835 = 2;
|
||||
optional double field12836 = 3;
|
||||
optional double field12837 = 4;
|
||||
optional double field12838 = 5;
|
||||
optional double field12839 = 6;
|
||||
}
|
||||
|
||||
message Message12820 {
|
||||
optional int32 field12840 = 1;
|
||||
optional int32 field12841 = 2;
|
||||
optional int32 field12842 = 3;
|
||||
optional int32 field12843 = 8;
|
||||
optional int32 field12844 = 4;
|
||||
optional int32 field12845 = 5;
|
||||
optional int32 field12846 = 6;
|
||||
optional int32 field12847 = 7;
|
||||
}
|
||||
|
||||
message Message12821 {
|
||||
optional int32 field12848 = 1;
|
||||
optional int32 field12849 = 2;
|
||||
optional int32 field12850 = 3;
|
||||
optional int32 field12851 = 4;
|
||||
optional int32 field12852 = 5;
|
||||
}
|
||||
|
||||
message Message12818 {
|
||||
optional uint64 field12829 = 1;
|
||||
optional int32 field12830 = 2;
|
||||
optional int32 field12831 = 3;
|
||||
optional int32 field12832 = 5;
|
||||
repeated .benchmarks.google_message3.Message12817 field12833 = 4;
|
||||
}
|
||||
|
||||
message Message16479 {
|
||||
optional .benchmarks.google_message3.Message16480 field16484 = 1;
|
||||
optional int32 field16485 = 5;
|
||||
optional float field16486 = 2;
|
||||
optional uint32 field16487 = 4;
|
||||
optional bool field16488 = 3;
|
||||
optional uint32 field16489 = 6;
|
||||
}
|
||||
|
||||
message Message16722 {
|
||||
optional string field16752 = 1;
|
||||
optional string field16753 = 2;
|
||||
optional string field16754 = 3;
|
||||
optional int32 field16755 = 5;
|
||||
optional string field16756 = 4;
|
||||
}
|
||||
|
||||
message Message16724 {
|
||||
optional int64 field16761 = 1;
|
||||
optional float field16762 = 2;
|
||||
optional int64 field16763 = 3;
|
||||
optional int64 field16764 = 4;
|
||||
optional bool field16765 = 5;
|
||||
repeated string field16766 = 6;
|
||||
repeated string field16767 = 7;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field16768 = 8;
|
||||
optional bool field16769 = 9;
|
||||
optional uint32 field16770 = 10;
|
||||
optional .benchmarks.google_message3.Enum16728 field16771 = 11;
|
||||
repeated int32 field16772 = 12;
|
||||
optional bool field16773 = 13;
|
||||
}
|
||||
|
||||
message Message17728 {}
|
||||
|
||||
message Message24356 {
|
||||
optional string field24559 = 1;
|
||||
optional string field24560 = 2;
|
||||
optional int32 field24561 = 14;
|
||||
optional string field24562 = 3;
|
||||
optional string field24563 = 4;
|
||||
optional string field24564 = 5;
|
||||
optional .benchmarks.google_message3.UnusedEnum field24565 = 13;
|
||||
optional string field24566 = 6;
|
||||
optional .benchmarks.google_message3.Enum24361 field24567 = 12;
|
||||
optional string field24568 = 7;
|
||||
optional string field24569 = 8;
|
||||
optional string field24570 = 9;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field24571 = 10;
|
||||
repeated string field24572 = 11;
|
||||
repeated string field24573 = 15;
|
||||
}
|
||||
|
||||
message Message24376 {
|
||||
optional string field24589 = 1;
|
||||
optional string field24590 = 2;
|
||||
optional string field24591 = 3;
|
||||
required .benchmarks.google_message3.Message24377 field24592 = 4;
|
||||
optional .benchmarks.google_message3.Message24317 field24593 = 5;
|
||||
optional string field24594 = 6;
|
||||
optional .benchmarks.google_message3.Message24378 field24595 = 7;
|
||||
repeated string field24596 = 8;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field24597 = 14;
|
||||
repeated string field24598 = 9;
|
||||
repeated string field24599 = 10;
|
||||
repeated string field24600 = 11;
|
||||
optional string field24601 = 12;
|
||||
repeated string field24602 = 13;
|
||||
}
|
||||
|
||||
message Message24366 {
|
||||
optional string field24574 = 1;
|
||||
optional string field24575 = 2;
|
||||
optional string field24576 = 3;
|
||||
optional int32 field24577 = 10;
|
||||
optional string field24578 = 13;
|
||||
optional string field24579 = 4;
|
||||
optional string field24580 = 5;
|
||||
optional .benchmarks.google_message3.UnusedEnum field24581 = 9;
|
||||
optional string field24582 = 14;
|
||||
optional .benchmarks.google_message3.UnusedEnum field24583 = 15;
|
||||
optional string field24584 = 6;
|
||||
optional string field24585 = 12;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field24586 = 7;
|
||||
repeated string field24587 = 8;
|
||||
repeated string field24588 = 11;
|
||||
}
|
514
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3_4.proto
vendored
Normal file
514
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3_4.proto
vendored
Normal file
@ -0,0 +1,514 @@
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
// LINT: ALLOW_GROUPS
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package benchmarks.google_message3;
|
||||
|
||||
import "datasets/google_message3/benchmark_message3_5.proto";
|
||||
import "datasets/google_message3/benchmark_message3_6.proto";
|
||||
import "datasets/google_message3/benchmark_message3_7.proto";
|
||||
import "datasets/google_message3/benchmark_message3_8.proto";
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option java_package = "com.google.protobuf.benchmarks";
|
||||
|
||||
message Message24346 {}
|
||||
|
||||
message Message24401 {
|
||||
optional .benchmarks.google_message3.Message24400 field24679 = 1;
|
||||
}
|
||||
|
||||
message Message24402 {
|
||||
optional .benchmarks.google_message3.Message24400 field24680 = 1;
|
||||
}
|
||||
|
||||
message Message24379 {
|
||||
optional string field24603 = 1;
|
||||
optional string field24604 = 2;
|
||||
optional string field24605 = 3;
|
||||
required .benchmarks.google_message3.Message24380 field24606 = 4;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24607 = 5;
|
||||
optional string field24608 = 6;
|
||||
optional .benchmarks.google_message3.Message24381 field24609 = 7;
|
||||
repeated string field24610 = 8;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field24611 = 17;
|
||||
repeated string field24612 = 9;
|
||||
repeated string field24613 = 10;
|
||||
repeated string field24614 = 11;
|
||||
optional string field24615 = 14;
|
||||
optional string field24616 = 12;
|
||||
optional string field24617 = 16;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field24618 = 13;
|
||||
repeated string field24619 = 15;
|
||||
repeated string field24620 = 18;
|
||||
}
|
||||
|
||||
message Message27358 {
|
||||
optional int32 field27415 = 1;
|
||||
optional int32 field27416 = 2;
|
||||
}
|
||||
|
||||
message Message34381 {
|
||||
optional string field34398 = 1;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field34399 = 2;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field34400 = 3;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field34401 = 4;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field34402 = 5;
|
||||
optional bool field34403 = 6;
|
||||
optional bool field34404 = 7;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field34405 = 8;
|
||||
optional bool field34406 = 9;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field34407 = 10;
|
||||
}
|
||||
|
||||
message Message34619 {
|
||||
optional double field34641 = 1;
|
||||
optional double field34642 = 2;
|
||||
optional double field34643 = 3;
|
||||
optional double field34644 = 4;
|
||||
optional double field34645 = 11;
|
||||
optional double field34646 = 5;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field34647 = 100;
|
||||
}
|
||||
|
||||
message Message730 {
|
||||
optional string field897 = 19;
|
||||
repeated string field898 = 27;
|
||||
repeated string field899 = 28;
|
||||
repeated string field900 = 21;
|
||||
optional string field901 = 30;
|
||||
repeated uint32 field902 = 20;
|
||||
repeated uint32 field903 = 32;
|
||||
repeated string field904 = 16;
|
||||
repeated .benchmarks.google_message3.Message697 field905 = 6;
|
||||
repeated .benchmarks.google_message3.Message704 field906 = 7;
|
||||
repeated string field907 = 18;
|
||||
repeated .benchmarks.google_message3.Message703 field908 = 8;
|
||||
repeated string field909 = 9;
|
||||
optional .benchmarks.google_message3.Message716 field910 = 10;
|
||||
optional .benchmarks.google_message3.Message718 field911 = 11;
|
||||
optional bool field912 = 14;
|
||||
repeated .benchmarks.google_message3.Message715 field913 = 4;
|
||||
repeated string field914 = 17;
|
||||
repeated string field915 = 23;
|
||||
repeated .benchmarks.google_message3.Message719 field916 = 24;
|
||||
repeated .benchmarks.google_message3.Message728 field917 = 26;
|
||||
repeated .benchmarks.google_message3.Message702 field918 = 35;
|
||||
optional string field919 = 36;
|
||||
repeated string field920 = 37;
|
||||
optional int64 field921 = 38;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field922 = 39;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field923 = 1;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field924 = 2;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field925 = 3;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field926 = 5;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field927 = 13;
|
||||
repeated string field928 = 22;
|
||||
optional bytes field929 = 31;
|
||||
extensions 25 to 25;
|
||||
extensions 29 to 29;
|
||||
extensions 34 to 34;
|
||||
extensions 15 to 15;
|
||||
}
|
||||
|
||||
message Message33958 {
|
||||
optional string field33977 = 1;
|
||||
optional string field33978 = 9;
|
||||
repeated group Message33959 = 2 {
|
||||
required string field33982 = 3;
|
||||
optional string field33983 = 4;
|
||||
optional string field33984 = 5;
|
||||
optional fixed64 field33985 = 8;
|
||||
optional bool field33986 = 10;
|
||||
optional .benchmarks.google_message3.Message0 field33987 = 6;
|
||||
}
|
||||
optional .benchmarks.google_message3.Enum33960 field33980 = 7;
|
||||
extend .benchmarks.google_message3.Message0 {
|
||||
optional .benchmarks.google_message3.Message33958 field33981 = 10747482;
|
||||
}
|
||||
}
|
||||
|
||||
message Message6637 {
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field6670 = 2;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field6671 = 1;
|
||||
optional int32 field6672 = 3;
|
||||
repeated string field6673 = 4;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field6674 = 5;
|
||||
}
|
||||
|
||||
message Message6643 {
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field6683 = 3;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field6684 = 4;
|
||||
optional double field6685 = 5;
|
||||
optional double field6686 = 6;
|
||||
optional int32 field6687 = 1;
|
||||
optional int32 field6688 = 2;
|
||||
optional double field6689 = 9;
|
||||
optional bytes field6690 = 10;
|
||||
optional int32 field6691 = 11;
|
||||
optional bool field6692 = 12;
|
||||
optional bool field6693 = 13;
|
||||
optional .benchmarks.google_message3.Message6578 field6694 = 15;
|
||||
optional .benchmarks.google_message3.UnusedEnum field6695 = 16;
|
||||
optional int64 field6696 = 17;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field6697 = 22;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field6698 = 19;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field6699 = 20;
|
||||
optional int32 field6700 = 21;
|
||||
}
|
||||
|
||||
message Message6126 {
|
||||
required string field6152 = 1;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field6153 = 9;
|
||||
optional int32 field6154 = 14;
|
||||
optional bytes field6155 = 10;
|
||||
optional .benchmarks.google_message3.Message6024 field6156 = 12;
|
||||
optional int32 field6157 = 4;
|
||||
optional string field6158 = 5;
|
||||
optional int32 field6159 = 6;
|
||||
repeated int32 field6160 = 2;
|
||||
repeated int32 field6161 = 3;
|
||||
repeated .benchmarks.google_message3.Message6052 field6162 = 7;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field6163 = 11;
|
||||
optional .benchmarks.google_message3.Enum6065 field6164 = 15;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field6165 = 8;
|
||||
optional bool field6166 = 13;
|
||||
optional bool field6167 = 16;
|
||||
optional bool field6168 = 18;
|
||||
repeated .benchmarks.google_message3.Message6054 field6169 = 17;
|
||||
optional int32 field6170 = 19;
|
||||
}
|
||||
|
||||
message Message13083 {
|
||||
optional float field13096 = 1;
|
||||
repeated group Message13084 = 2 {
|
||||
required float field13107 = 3;
|
||||
required int32 field13108 = 4;
|
||||
optional float field13109 = 5;
|
||||
repeated .benchmarks.google_message3.Enum13092 field13110 = 6;
|
||||
}
|
||||
optional float field13098 = 44;
|
||||
optional float field13099 = 45;
|
||||
optional uint64 field13100 = 46;
|
||||
optional float field13101 = 47;
|
||||
optional group Message13085 = 16 {}
|
||||
repeated group Message13086 = 23 {}
|
||||
repeated group Message13087 = 29 {}
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field13105 = 43;
|
||||
}
|
||||
|
||||
message Message13088 {
|
||||
repeated group Message13089 = 1 {
|
||||
required string field13139 = 2;
|
||||
optional float field13140 = 3;
|
||||
}
|
||||
optional int64 field13136 = 4;
|
||||
optional bool field13137 = 5;
|
||||
}
|
||||
|
||||
message Message10391 {
|
||||
optional .benchmarks.google_message3.Enum10392 field10411 = 1;
|
||||
optional .benchmarks.google_message3.UnusedEnum field10412 = 2;
|
||||
optional int64 field10413 = 3;
|
||||
optional string field10414 = 4;
|
||||
optional string field10415 = 5;
|
||||
optional bytes field10416 = 6;
|
||||
optional bool field10417 = 8;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field10418 = 9;
|
||||
optional bool field10419 = 10;
|
||||
}
|
||||
|
||||
message Message11873 {
|
||||
optional string field11876 = 1;
|
||||
optional string field11877 = 4;
|
||||
optional .benchmarks.google_message3.Message10573 field11878 = 5;
|
||||
optional .benchmarks.google_message3.Message10582 field11879 = 6;
|
||||
optional .benchmarks.google_message3.Message10824 field11880 = 7;
|
||||
optional .benchmarks.google_message3.Message10773 field11881 = 12;
|
||||
optional .benchmarks.google_message3.Message11866 field11882 = 8;
|
||||
optional .benchmarks.google_message3.Message10818 field11883 = 13;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field11884 = 16;
|
||||
optional .benchmarks.google_message3.Message10155 field11885 = 11;
|
||||
optional .benchmarks.google_message3.Message10469 field11886 = 14;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field11887 = 15;
|
||||
extensions 9 to 9;
|
||||
extensions 10 to 10;
|
||||
}
|
||||
|
||||
message Message35506 {
|
||||
optional int32 field35524 = 1;
|
||||
optional string field35525 = 2;
|
||||
optional .benchmarks.google_message3.Enum35507 field35526 = 3;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field35527 = 4;
|
||||
}
|
||||
|
||||
message Message13151 {
|
||||
repeated .benchmarks.google_message3.Message13145 field13158 = 1;
|
||||
}
|
||||
|
||||
message Message18253 {
|
||||
repeated group Message18254 = 1 {
|
||||
required fixed64 field18362 = 2;
|
||||
required double field18363 = 3;
|
||||
}
|
||||
}
|
||||
|
||||
message Message16685 {
|
||||
repeated .benchmarks.google_message3.Message16686 field16694 = 2;
|
||||
}
|
||||
|
||||
message Message16816 {
|
||||
optional float field16826 = 1;
|
||||
optional .benchmarks.google_message3.Enum16819 field16827 = 2;
|
||||
optional float field16828 = 3;
|
||||
repeated group Message16817 = 4 {}
|
||||
optional bool field16830 = 7;
|
||||
optional bool field16831 = 8;
|
||||
repeated group Message16818 = 12 {}
|
||||
optional string field16833 = 10;
|
||||
optional bool field16834 = 13;
|
||||
optional bool field16835 = 14;
|
||||
}
|
||||
|
||||
message Message13168 {
|
||||
required int32 field13212 = 1;
|
||||
optional fixed64 field13213 = 7;
|
||||
optional bool field13214 = 8;
|
||||
optional fixed64 field13215 = 10;
|
||||
optional bool field13216 = 11;
|
||||
optional .benchmarks.google_message3.Message12796 field13217 = 9;
|
||||
required double field13218 = 2;
|
||||
required bool field13219 = 3;
|
||||
optional int32 field13220 = 4;
|
||||
required bool field13221 = 5;
|
||||
optional int32 field13222 = 6;
|
||||
}
|
||||
|
||||
message Message13167 {
|
||||
required int32 field13199 = 1;
|
||||
optional int32 field13200 = 2;
|
||||
optional int32 field13201 = 3;
|
||||
optional bool field13202 = 8;
|
||||
optional fixed64 field13203 = 12;
|
||||
optional bool field13204 = 13;
|
||||
optional .benchmarks.google_message3.Message12796 field13205 = 11;
|
||||
optional fixed64 field13206 = 9;
|
||||
optional bool field13207 = 10;
|
||||
repeated int32 field13208 = 4;
|
||||
optional int32 field13209 = 5;
|
||||
optional int32 field13210 = 6;
|
||||
optional int32 field13211 = 7;
|
||||
}
|
||||
|
||||
message Message1374 {
|
||||
required string field1375 = 1;
|
||||
optional string field1376 = 2;
|
||||
}
|
||||
|
||||
message Message18943 {}
|
||||
|
||||
message Message18944 {}
|
||||
|
||||
message Message18856 {
|
||||
optional string field18857 = 1;
|
||||
optional string field18858 = 2;
|
||||
optional bool field18859 = 31;
|
||||
optional string field18860 = 26;
|
||||
optional string field18861 = 3;
|
||||
optional string field18862 = 4;
|
||||
optional string field18863 = 5;
|
||||
optional string field18864 = 17;
|
||||
optional string field18865 = 6;
|
||||
optional string field18866 = 7;
|
||||
optional string field18867 = 8;
|
||||
optional string field18868 = 9;
|
||||
optional string field18869 = 10;
|
||||
optional string field18870 = 11;
|
||||
optional string field18871 = 21;
|
||||
optional string field18872 = 18;
|
||||
optional string field18873 = 19;
|
||||
optional string field18874 = 20;
|
||||
optional string field18875 = 22;
|
||||
optional string field18876 = 23;
|
||||
optional string field18877 = 24;
|
||||
optional string field18878 = 25;
|
||||
optional string field18879 = 12;
|
||||
optional string field18880 = 13;
|
||||
optional string field18881 = 29;
|
||||
optional string field18882 = 30;
|
||||
optional string field18883 = 15;
|
||||
optional string field18884 = 16;
|
||||
repeated string field18885 = 14;
|
||||
optional string field18886 = 27;
|
||||
optional string field18887 = 28;
|
||||
}
|
||||
|
||||
message Message3850 {
|
||||
optional .benchmarks.google_message3.Enum3851 field3924 = 2;
|
||||
optional bool field3925 = 12;
|
||||
optional int32 field3926 = 4;
|
||||
optional bool field3927 = 10;
|
||||
optional bool field3928 = 13;
|
||||
optional bool field3929 = 14;
|
||||
}
|
||||
|
||||
message Message6721 {
|
||||
optional .benchmarks.google_message3.Message6722 field6744 = 1;
|
||||
optional bool field6745 = 2;
|
||||
optional bool field6746 = 3;
|
||||
optional bool field6747 = 4;
|
||||
}
|
||||
|
||||
message Message6742 {
|
||||
optional bool field6758 = 1;
|
||||
}
|
||||
|
||||
message Message6726 {
|
||||
optional int64 field6752 = 1;
|
||||
repeated .benchmarks.google_message3.Message6727 field6753 = 2;
|
||||
}
|
||||
|
||||
message Message6733 {
|
||||
optional int64 field6754 = 1;
|
||||
optional int64 field6755 = 2;
|
||||
optional bool field6756 = 3;
|
||||
}
|
||||
|
||||
message Message6723 {
|
||||
optional int64 field6748 = 1;
|
||||
repeated .benchmarks.google_message3.Message6724 field6749 = 2;
|
||||
}
|
||||
|
||||
message Message6725 {
|
||||
optional int32 field6750 = 1;
|
||||
optional int32 field6751 = 2;
|
||||
}
|
||||
|
||||
message Message6734 {
|
||||
repeated .benchmarks.google_message3.Message6735 field6757 = 1;
|
||||
}
|
||||
|
||||
message Message8184 {
|
||||
optional .benchmarks.google_message3.Message7966 field8228 = 1;
|
||||
optional bool field8229 = 2;
|
||||
repeated .benchmarks.google_message3.Message8183 field8230 = 3;
|
||||
}
|
||||
|
||||
message Message8477 {
|
||||
optional .benchmarks.google_message3.Message7966 field8486 = 1;
|
||||
optional int64 field8487 = 2;
|
||||
optional string field8488 = 3;
|
||||
}
|
||||
|
||||
message Message8454 {
|
||||
optional .benchmarks.google_message3.Message8449 field8465 = 1;
|
||||
optional int64 field8466 = 3;
|
||||
optional int32 field8467 = 4;
|
||||
optional bool field8468 = 5;
|
||||
extend .benchmarks.google_message3.Message8301 {
|
||||
optional .benchmarks.google_message3.Message8454 field8469 = 66;
|
||||
}
|
||||
}
|
||||
|
||||
message Message8476 {
|
||||
optional string field8483 = 1;
|
||||
optional string field8484 = 2;
|
||||
optional string field8485 = 3;
|
||||
}
|
||||
|
||||
message Message8455 {
|
||||
optional .benchmarks.google_message3.Message8449 field8470 = 1;
|
||||
repeated .benchmarks.google_message3.Message8456 field8471 = 2;
|
||||
optional .benchmarks.google_message3.Message8457 field8472 = 5;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8473 = 6;
|
||||
extend .benchmarks.google_message3.Message8302 {
|
||||
optional .benchmarks.google_message3.Message8455 field8474 = 66;
|
||||
}
|
||||
}
|
||||
|
||||
message Message8475 {
|
||||
optional string field8481 = 1;
|
||||
optional int64 field8482 = 2;
|
||||
}
|
||||
|
||||
message Message12559 {}
|
||||
|
||||
message Message12817 {
|
||||
optional int32 field12826 = 1;
|
||||
optional int32 field12827 = 2;
|
||||
optional int32 field12828 = 3;
|
||||
}
|
||||
|
||||
message Message16480 {
|
||||
optional .benchmarks.google_message3.Message13358 field16490 = 1;
|
||||
optional .benchmarks.google_message3.Enum16042 field16491 = 2;
|
||||
optional .benchmarks.google_message3.Message13912 field16492 = 3;
|
||||
optional string field16493 = 4;
|
||||
optional string field16494 = 5;
|
||||
optional string field16495 = 6;
|
||||
optional string field16496 = 7;
|
||||
optional .benchmarks.google_message3.Message13358 field16497 = 8;
|
||||
optional fixed32 field16498 = 9;
|
||||
}
|
||||
|
||||
message Message24317 {
|
||||
optional string field24446 = 1;
|
||||
optional .benchmarks.google_message3.Message24312 field24447 = 2;
|
||||
repeated .benchmarks.google_message3.Message24315 field24448 = 3;
|
||||
repeated .benchmarks.google_message3.Message24313 field24449 = 4;
|
||||
repeated .benchmarks.google_message3.Message24316 field24450 = 5;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field24451 = 6;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field24452 = 7;
|
||||
repeated string field24453 = 8;
|
||||
repeated string field24454 = 9;
|
||||
repeated string field24455 = 10;
|
||||
repeated string field24456 = 28;
|
||||
optional string field24457 = 11;
|
||||
optional string field24458 = 12;
|
||||
optional string field24459 = 13;
|
||||
optional string field24460 = 14;
|
||||
repeated string field24461 = 15;
|
||||
optional string field24462 = 16;
|
||||
repeated string field24463 = 17;
|
||||
repeated string field24464 = 18;
|
||||
repeated string field24465 = 19;
|
||||
repeated string field24466 = 20;
|
||||
repeated string field24467 = 21;
|
||||
repeated string field24468 = 22;
|
||||
repeated string field24469 = 23;
|
||||
repeated string field24470 = 24;
|
||||
optional string field24471 = 25;
|
||||
optional string field24472 = 26;
|
||||
repeated string field24473 = 27;
|
||||
optional bool field24474 = 40;
|
||||
}
|
496
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3_5.proto
vendored
Normal file
496
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3_5.proto
vendored
Normal file
@ -0,0 +1,496 @@
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
// LINT: ALLOW_GROUPS
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package benchmarks.google_message3;
|
||||
|
||||
import "datasets/google_message3/benchmark_message3_6.proto";
|
||||
import "datasets/google_message3/benchmark_message3_7.proto";
|
||||
import "datasets/google_message3/benchmark_message3_8.proto";
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option java_package = "com.google.protobuf.benchmarks";
|
||||
|
||||
message Message24377 {}
|
||||
|
||||
message Message24378 {}
|
||||
|
||||
message Message24400 {
|
||||
optional int32 field24674 = 1;
|
||||
optional int32 field24675 = 2;
|
||||
optional int32 field24676 = 3;
|
||||
optional int32 field24677 = 4;
|
||||
optional int32 field24678 = 5;
|
||||
}
|
||||
|
||||
message Message24380 {}
|
||||
|
||||
message Message24381 {}
|
||||
|
||||
message Message719 {
|
||||
repeated string field881 = 1;
|
||||
repeated string field882 = 2;
|
||||
repeated string field883 = 3;
|
||||
optional .benchmarks.google_message3.Enum720 field884 = 4;
|
||||
}
|
||||
|
||||
message Message728 {
|
||||
required string field887 = 1;
|
||||
repeated string field888 = 2;
|
||||
repeated .benchmarks.google_message3.Message703 field889 = 3;
|
||||
repeated .benchmarks.google_message3.Message715 field890 = 4;
|
||||
repeated string field891 = 5;
|
||||
repeated string field892 = 6;
|
||||
optional .benchmarks.google_message3.Message718 field893 = 7;
|
||||
optional .benchmarks.google_message3.Message716 field894 = 8;
|
||||
repeated string field895 = 9;
|
||||
extensions 10 to 10;
|
||||
extensions 11 to 11;
|
||||
extensions 12 to 12;
|
||||
}
|
||||
|
||||
message Message704 {
|
||||
optional string field800 = 1;
|
||||
optional string field801 = 7;
|
||||
optional string field802 = 2;
|
||||
optional string field803 = 3;
|
||||
optional string field804 = 4;
|
||||
optional string field805 = 5;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field806 = 6;
|
||||
}
|
||||
|
||||
message Message697 {
|
||||
optional string field743 = 7;
|
||||
repeated string field744 = 1;
|
||||
repeated string field745 = 2;
|
||||
repeated string field746 = 33;
|
||||
repeated string field747 = 29;
|
||||
repeated string field748 = 30;
|
||||
repeated string field749 = 31;
|
||||
repeated string field750 = 32;
|
||||
repeated string field751 = 13;
|
||||
repeated string field752 = 6;
|
||||
repeated string field753 = 3;
|
||||
repeated string field754 = 14;
|
||||
repeated string field755 = 15;
|
||||
repeated string field756 = 16;
|
||||
repeated string field757 = 4;
|
||||
repeated string field758 = 34;
|
||||
repeated string field759 = 35;
|
||||
repeated string field760 = 5;
|
||||
repeated string field761 = 17;
|
||||
repeated string field762 = 18;
|
||||
repeated string field763 = 19;
|
||||
optional bool field764 = 36;
|
||||
repeated string field765 = 8;
|
||||
repeated string field766 = 9;
|
||||
optional string field767 = 27;
|
||||
optional bool field768 = 25;
|
||||
optional .benchmarks.google_message3.Message700 field769 = 10;
|
||||
optional bool field770 = 11;
|
||||
optional bool field771 = 24;
|
||||
repeated string field772 = 12;
|
||||
repeated string field773 = 20;
|
||||
repeated string field774 = 21;
|
||||
repeated string field775 = 22;
|
||||
repeated .benchmarks.google_message3.Message699 field776 = 23;
|
||||
repeated .benchmarks.google_message3.Message698 field777 = 37;
|
||||
optional int64 field778 = 38;
|
||||
extensions 28 to 28;
|
||||
extensions 26 to 26;
|
||||
}
|
||||
|
||||
message Message0 {
|
||||
option message_set_wire_format = true;
|
||||
|
||||
extensions 4 to 2147483646;
|
||||
}
|
||||
|
||||
message Message6578 {
|
||||
optional .benchmarks.google_message3.Enum6579 field6632 = 1;
|
||||
optional .benchmarks.google_message3.Enum6588 field6633 = 2;
|
||||
}
|
||||
|
||||
message Message6024 {
|
||||
optional .benchmarks.google_message3.Enum6025 field6048 = 1;
|
||||
optional string field6049 = 2;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field6050 = 3;
|
||||
}
|
||||
|
||||
message Message6052 {
|
||||
required string field6084 = 1;
|
||||
required bytes field6085 = 2;
|
||||
}
|
||||
|
||||
message Message6054 {
|
||||
required string field6089 = 1;
|
||||
optional string field6090 = 2;
|
||||
}
|
||||
|
||||
message Message10573 {
|
||||
repeated .benchmarks.google_message3.Message10576 field10580 = 1;
|
||||
optional string field10581 = 2;
|
||||
extensions 10000 to 536870911;
|
||||
}
|
||||
|
||||
message Message10824 {
|
||||
required string field10825 = 1;
|
||||
optional int32 field10826 = 2;
|
||||
}
|
||||
|
||||
message Message10582 {
|
||||
required bool field10583 = 1;
|
||||
required double field10584 = 2;
|
||||
optional bool field10585 = 3;
|
||||
optional double field10586 = 4;
|
||||
optional double field10587 = 5;
|
||||
optional bool field10588 = 6;
|
||||
}
|
||||
|
||||
message Message10155 {
|
||||
required int32 field10195 = 1;
|
||||
required int32 field10196 = 2;
|
||||
optional .benchmarks.google_message3.Enum10157 field10197 = 59;
|
||||
optional int32 field10198 = 18;
|
||||
optional int32 field10199 = 19;
|
||||
optional int32 field10200 = 21;
|
||||
repeated group Message10156 = 50 {
|
||||
optional .benchmarks.google_message3.Enum8862 field10266 = 51;
|
||||
optional int32 field10267 = 52;
|
||||
optional int32 field10268 = 53;
|
||||
optional int32 field10269 = 54;
|
||||
}
|
||||
optional int32 field10202 = 3;
|
||||
optional int32 field10203 = 4;
|
||||
optional int32 field10204 = 5;
|
||||
optional bool field10205 = 84;
|
||||
optional bool field10206 = 33;
|
||||
optional int32 field10207 = 75;
|
||||
optional float field10208 = 26;
|
||||
optional int32 field10209 = 27;
|
||||
optional int32 field10210 = 49;
|
||||
optional int32 field10211 = 10;
|
||||
optional float field10212 = 78;
|
||||
optional .benchmarks.google_message3.Message9151 field10213 = 91;
|
||||
optional int32 field10214 = 11;
|
||||
optional int32 field10215 = 12;
|
||||
optional float field10216 = 41;
|
||||
optional .benchmarks.google_message3.Message10154 field10217 = 61;
|
||||
optional int32 field10218 = 23;
|
||||
optional bytes field10219 = 24;
|
||||
optional int32 field10220 = 65;
|
||||
repeated bytes field10221 = 66;
|
||||
optional int32 field10222 = 70;
|
||||
optional bytes field10223 = 71;
|
||||
repeated fixed64 field10224 = 73;
|
||||
optional float field10225 = 29;
|
||||
optional int32 field10226 = 30;
|
||||
optional float field10227 = 31;
|
||||
optional int32 field10228 = 32;
|
||||
optional float field10229 = 34;
|
||||
optional int32 field10230 = 35;
|
||||
optional string field10231 = 22;
|
||||
optional fixed64 field10232 = 13;
|
||||
optional fixed64 field10233 = 20;
|
||||
optional bool field10234 = 79;
|
||||
repeated .benchmarks.google_message3.Enum10167 field10235 = 80
|
||||
[packed = true];
|
||||
optional int32 field10236 = 14;
|
||||
optional int32 field10237 = 15;
|
||||
optional int32 field10238 = 28;
|
||||
repeated string field10239 = 16;
|
||||
optional .benchmarks.google_message3.Message9182 field10240 = 17;
|
||||
optional int32 field10241 = 63;
|
||||
optional float field10242 = 64;
|
||||
optional float field10243 = 37;
|
||||
repeated float field10244 = 43;
|
||||
optional int32 field10245 = 44;
|
||||
optional .benchmarks.google_message3.Message9242 field10246 = 45;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field10247 = 46;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field10248 = 62;
|
||||
optional .benchmarks.google_message3.Message8944 field10249 = 48;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field10250 = 87;
|
||||
optional int32 field10251 = 58;
|
||||
optional int32 field10252 = 92;
|
||||
optional .benchmarks.google_message3.Message9123 field10253 = 93;
|
||||
optional .benchmarks.google_message3.Message9160 field10254 = 60;
|
||||
optional .benchmarks.google_message3.Message8890 field10255 = 67;
|
||||
optional string field10256 = 69;
|
||||
optional int64 field10257 = 74;
|
||||
optional float field10258 = 82;
|
||||
optional float field10259 = 85;
|
||||
optional float field10260 = 86;
|
||||
optional int64 field10261 = 83;
|
||||
optional string field10262 = 77;
|
||||
optional bool field10263 = 88;
|
||||
repeated .benchmarks.google_message3.Message9628 field10264 = 94;
|
||||
extensions 57 to 57;
|
||||
extensions 1000 to 536870911;
|
||||
}
|
||||
|
||||
message Message11866 {
|
||||
required .benchmarks.google_message3.Message11014 field11868 = 1;
|
||||
optional bool field11869 = 2;
|
||||
optional double field11870 = 3;
|
||||
optional double field11871 = 4;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field11872 = 5;
|
||||
}
|
||||
|
||||
message Message10469 {
|
||||
optional string field10473 = 1;
|
||||
optional float field10474 = 2;
|
||||
optional int32 field10475 = 3;
|
||||
optional int32 field10476 = 4;
|
||||
optional int32 field10477 = 5;
|
||||
optional bool field10478 = 6;
|
||||
optional bool field10479 = 7;
|
||||
optional int32 field10480 = 8;
|
||||
optional float field10481 = 9;
|
||||
}
|
||||
|
||||
message Message10818 {
|
||||
optional .benchmarks.google_message3.Message10800 field10819 = 1;
|
||||
optional .benchmarks.google_message3.Message10801 field10820 = 2;
|
||||
}
|
||||
|
||||
message Message10773 {
|
||||
optional bool field10774 = 9;
|
||||
optional bool field10775 = 1;
|
||||
optional bool field10776 = 23;
|
||||
optional bool field10777 = 2;
|
||||
optional bool field10778 = 3;
|
||||
optional int32 field10779 = 4;
|
||||
optional int32 field10780 = 5;
|
||||
optional int32 field10781 = 6;
|
||||
optional int32 field10782 = 7;
|
||||
optional int32 field10783 = 8;
|
||||
optional int32 field10784 = 10;
|
||||
optional .benchmarks.google_message3.Message10749 field10785 = 11;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field10786 = 12;
|
||||
optional bool field10787 = 13;
|
||||
optional bool field10788 = 15;
|
||||
optional bool field10789 = 16;
|
||||
optional int32 field10790 = 17;
|
||||
optional int32 field10791 = 18;
|
||||
optional bool field10792 = 19;
|
||||
optional bool field10793 = 20;
|
||||
optional bool field10794 = 21;
|
||||
optional .benchmarks.google_message3.UnusedEnum field10795 = 14;
|
||||
optional .benchmarks.google_message3.UnusedEnum field10796 = 22;
|
||||
}
|
||||
|
||||
message Message13145 {
|
||||
required .benchmarks.google_message3.Enum13146 field13155 = 1;
|
||||
optional float field13156 = 2;
|
||||
optional float field13157 = 3;
|
||||
extensions 1000 to 536870911;
|
||||
}
|
||||
|
||||
message Message16686 {}
|
||||
|
||||
message Message12796 {
|
||||
repeated fixed64 field12800 = 1;
|
||||
optional uint64 field12801 = 2;
|
||||
}
|
||||
|
||||
message Message6722 {}
|
||||
|
||||
message Message6727 {}
|
||||
|
||||
message Message6724 {}
|
||||
|
||||
message Message6735 {}
|
||||
|
||||
message Message8183 {
|
||||
optional string field8226 = 1;
|
||||
optional string field8227 = 2;
|
||||
}
|
||||
|
||||
message Message8301 {
|
||||
optional string field8328 = 1;
|
||||
optional .benchmarks.google_message3.Message7966 field8329 = 2;
|
||||
optional string field8330 = 3;
|
||||
optional string field8331 = 4;
|
||||
repeated .benchmarks.google_message3.Message8290 field8332 = 5;
|
||||
optional .benchmarks.google_message3.Message7966 field8333 = 6;
|
||||
repeated .benchmarks.google_message3.Message8298 field8334 = 7;
|
||||
optional .benchmarks.google_message3.Message8300 field8335 = 8;
|
||||
optional int64 field8336 = 9;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8337 = 10;
|
||||
optional .benchmarks.google_message3.Message7965 field8338 = 11;
|
||||
extensions 64 to 536870911;
|
||||
}
|
||||
|
||||
message Message8456 {}
|
||||
|
||||
message Message8302 {
|
||||
optional string field8339 = 1;
|
||||
optional .benchmarks.google_message3.Message7966 field8340 = 2;
|
||||
optional string field8341 = 3;
|
||||
optional string field8342 = 4;
|
||||
optional string field8343 = 5;
|
||||
optional string field8344 = 6;
|
||||
optional string field8345 = 7;
|
||||
optional int64 field8346 = 8;
|
||||
optional int64 field8347 = 9;
|
||||
repeated .benchmarks.google_message3.Message8290 field8348 = 10;
|
||||
optional string field8349 = 11;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8350 = 12;
|
||||
optional .benchmarks.google_message3.Message8291 field8351 = 13;
|
||||
optional int64 field8352 = 14;
|
||||
optional .benchmarks.google_message3.Message8296 field8353 = 15;
|
||||
optional string field8354 = 16;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field8355 = 17;
|
||||
repeated int32 field8356 = 18;
|
||||
repeated int32 field8357 = 19;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field8358 = 20;
|
||||
optional .benchmarks.google_message3.Message7965 field8359 = 21;
|
||||
extensions 64 to 536870911;
|
||||
}
|
||||
|
||||
message Message8457 {}
|
||||
|
||||
message Message8449 {
|
||||
optional string field8458 = 1;
|
||||
optional bool field8459 = 2;
|
||||
optional .benchmarks.google_message3.Enum8450 field8460 = 3;
|
||||
repeated string field8461 = 4;
|
||||
optional string field8462 = 5;
|
||||
optional string field8463 = 6;
|
||||
optional .benchmarks.google_message3.Message7966 field8464 = 7;
|
||||
}
|
||||
|
||||
message Message13358 {
|
||||
required fixed64 field13359 = 1;
|
||||
required fixed64 field13360 = 2;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field13361 = 3;
|
||||
}
|
||||
|
||||
message Message13912 {
|
||||
required fixed32 field13913 = 1;
|
||||
required fixed32 field13914 = 2;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field13915 = 500;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field13916 = 15;
|
||||
}
|
||||
|
||||
message Message24316 {
|
||||
repeated string field24443 = 1;
|
||||
repeated string field24444 = 2;
|
||||
repeated string field24445 = 3;
|
||||
}
|
||||
|
||||
message Message24312 {
|
||||
optional string field24421 = 1;
|
||||
optional string field24422 = 2;
|
||||
repeated string field24423 = 3;
|
||||
repeated string field24424 = 4;
|
||||
repeated string field24425 = 5;
|
||||
repeated string field24426 = 6;
|
||||
}
|
||||
|
||||
message Message24313 {
|
||||
optional string field24427 = 1;
|
||||
optional string field24428 = 2;
|
||||
repeated string field24429 = 3;
|
||||
optional string field24430 = 4;
|
||||
optional string field24431 = 5;
|
||||
optional string field24432 = 6;
|
||||
optional string field24433 = 7;
|
||||
repeated string field24434 = 8;
|
||||
optional string field24435 = 9;
|
||||
repeated string field24436 = 10;
|
||||
}
|
||||
|
||||
message Message24315 {
|
||||
required string field24440 = 1;
|
||||
repeated string field24441 = 2;
|
||||
repeated string field24442 = 3;
|
||||
}
|
||||
|
||||
message Message716 {
|
||||
required string field872 = 1;
|
||||
required int32 field873 = 2;
|
||||
optional bool field874 = 3;
|
||||
optional .benchmarks.google_message3.Message717 field875 = 4;
|
||||
}
|
||||
|
||||
message Message718 {
|
||||
repeated string field878 = 1;
|
||||
repeated string field879 = 2;
|
||||
optional string field880 = 3;
|
||||
}
|
||||
|
||||
message Message703 {
|
||||
required string field795 = 1;
|
||||
repeated string field796 = 2;
|
||||
repeated string field797 = 3;
|
||||
optional string field798 = 4;
|
||||
repeated string field799 = 5;
|
||||
}
|
||||
|
||||
message Message715 {
|
||||
required string field859 = 1;
|
||||
optional string field860 = 7;
|
||||
repeated .benchmarks.google_message3.Message707 field861 = 2;
|
||||
repeated .benchmarks.google_message3.Message708 field862 = 3;
|
||||
repeated .benchmarks.google_message3.Message711 field863 = 4;
|
||||
repeated .benchmarks.google_message3.Message712 field864 = 5;
|
||||
repeated .benchmarks.google_message3.Message713 field865 = 6;
|
||||
repeated .benchmarks.google_message3.Message714 field866 = 8;
|
||||
repeated .benchmarks.google_message3.Message710 field867 = 9;
|
||||
repeated .benchmarks.google_message3.Message709 field868 = 10;
|
||||
repeated .benchmarks.google_message3.Message705 field869 = 11;
|
||||
repeated .benchmarks.google_message3.Message702 field870 = 12;
|
||||
repeated .benchmarks.google_message3.Message706 field871 = 13;
|
||||
}
|
||||
|
||||
message Message700 {
|
||||
repeated string field789 = 1;
|
||||
repeated string field790 = 2;
|
||||
}
|
||||
|
||||
message Message699 {
|
||||
required string field787 = 1;
|
||||
repeated string field788 = 2;
|
||||
}
|
||||
|
||||
message Message698 {
|
||||
optional string field779 = 1;
|
||||
optional string field780 = 2;
|
||||
optional string field781 = 3;
|
||||
optional string field782 = 4;
|
||||
optional uint64 field783 = 5;
|
||||
optional uint32 field784 = 6;
|
||||
optional int64 field785 = 7;
|
||||
repeated string field786 = 8;
|
||||
}
|
483
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3_6.proto
vendored
Normal file
483
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3_6.proto
vendored
Normal file
@ -0,0 +1,483 @@
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
// LINT: ALLOW_GROUPS
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package benchmarks.google_message3;
|
||||
|
||||
import "datasets/google_message3/benchmark_message3_7.proto";
|
||||
import "datasets/google_message3/benchmark_message3_8.proto";
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option java_package = "com.google.protobuf.benchmarks";
|
||||
|
||||
message Message10576 {}
|
||||
|
||||
message Message10154 {
|
||||
optional bytes field10192 = 1;
|
||||
optional int32 field10193 = 2;
|
||||
}
|
||||
|
||||
message Message8944 {
|
||||
optional string field9045 = 2;
|
||||
optional string field9046 = 3;
|
||||
optional string field9047 = 23;
|
||||
optional string field9048 = 52;
|
||||
optional int32 field9049 = 53;
|
||||
optional int32 field9050 = 54;
|
||||
optional float field9051 = 55;
|
||||
optional float field9052 = 56;
|
||||
optional string field9053 = 57;
|
||||
optional int64 field9054 = 1;
|
||||
optional bool field9055 = 4;
|
||||
optional int32 field9056 = 5;
|
||||
optional int32 field9057 = 6;
|
||||
optional int32 field9058 = 7;
|
||||
optional float field9059 = 8;
|
||||
optional float field9060 = 11;
|
||||
optional float field9061 = 9;
|
||||
optional float field9062 = 10;
|
||||
optional float field9063 = 13;
|
||||
optional bool field9064 = 14;
|
||||
optional float field9065 = 70;
|
||||
optional int32 field9066 = 71;
|
||||
optional .benchmarks.google_message3.Enum8945 field9067 = 15;
|
||||
optional int32 field9068 = 16;
|
||||
optional int32 field9069 = 17;
|
||||
optional float field9070 = 18;
|
||||
optional float field9071 = 19;
|
||||
optional int32 field9072 = 28;
|
||||
optional int32 field9073 = 29;
|
||||
optional float field9074 = 60;
|
||||
optional float field9075 = 61;
|
||||
optional int32 field9076 = 72;
|
||||
optional int32 field9077 = 73;
|
||||
optional .benchmarks.google_message3.Enum8951 field9078 = 62;
|
||||
optional string field9079 = 20;
|
||||
optional string field9080 = 21;
|
||||
optional string field9081 = 22;
|
||||
optional double field9082 = 31;
|
||||
optional double field9083 = 32;
|
||||
optional double field9084 = 33;
|
||||
optional double field9085 = 36;
|
||||
optional .benchmarks.google_message3.UnusedEnum field9086 = 37;
|
||||
optional double field9087 = 38;
|
||||
optional double field9088 = 39;
|
||||
optional double field9089 = 63;
|
||||
optional double field9090 = 64;
|
||||
optional double field9091 = 65;
|
||||
optional double field9092 = 34;
|
||||
optional .benchmarks.google_message3.UnusedEnum field9093 = 35;
|
||||
optional .benchmarks.google_message3.UnusedEnum field9094 = 66;
|
||||
optional string field9095 = 40;
|
||||
optional string field9096 = 41;
|
||||
optional string field9097 = 42;
|
||||
optional string field9098 = 43;
|
||||
optional string field9099 = 44;
|
||||
optional string field9100 = 45;
|
||||
optional string field9101 = 46;
|
||||
optional string field9102 = 47;
|
||||
optional string field9103 = 48;
|
||||
optional string field9104 = 49;
|
||||
optional .benchmarks.google_message3.Message8939 field9105 = 100;
|
||||
optional int64 field9106 = 101;
|
||||
}
|
||||
|
||||
message Message9182 {
|
||||
optional string field9205 = 1;
|
||||
optional string field9206 = 2;
|
||||
optional float field9207 = 16;
|
||||
optional int32 field9208 = 17;
|
||||
optional int32 field9209 = 27;
|
||||
optional int32 field9210 = 7;
|
||||
optional int32 field9211 = 8;
|
||||
optional float field9212 = 26;
|
||||
optional float field9213 = 22;
|
||||
optional bool field9214 = 28;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field9215 = 21;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field9216 = 25;
|
||||
repeated .benchmarks.google_message3.Message9181 field9217 = 29;
|
||||
optional bool field9218 = 18;
|
||||
optional bool field9219 = 19;
|
||||
optional bool field9220 = 20;
|
||||
optional .benchmarks.google_message3.Message9164 field9221 = 30;
|
||||
optional .benchmarks.google_message3.Message9165 field9222 = 31;
|
||||
optional .benchmarks.google_message3.Message9166 field9223 = 32;
|
||||
optional float field9224 = 33;
|
||||
optional .benchmarks.google_message3.Message9151 field9225 = 34;
|
||||
optional float field9226 = 35;
|
||||
optional float field9227 = 36;
|
||||
optional float field9228 = 37;
|
||||
optional float field9229 = 38;
|
||||
optional float field9230 = 39;
|
||||
extensions 3 to 6;
|
||||
extensions 9 to 15;
|
||||
extensions 23 to 23;
|
||||
extensions 24 to 24;
|
||||
extensions 1000 to 536870911;
|
||||
}
|
||||
|
||||
message Message9160 {
|
||||
optional int32 field9161 = 1;
|
||||
optional bytes field9162 = 2;
|
||||
}
|
||||
|
||||
message Message9242 {
|
||||
repeated .benchmarks.google_message3.Enum9243 field9327 = 1;
|
||||
}
|
||||
|
||||
message Message8890 {
|
||||
repeated .benchmarks.google_message3.Message8888 field8916 = 1;
|
||||
}
|
||||
|
||||
message Message9123 {
|
||||
optional float field9135 = 1;
|
||||
}
|
||||
|
||||
message Message9628 {
|
||||
optional .benchmarks.google_message3.Message9627 field9673 = 1;
|
||||
optional string field9674 = 2;
|
||||
repeated int32 field9675 = 3;
|
||||
optional int32 field9676 = 4;
|
||||
}
|
||||
|
||||
message Message11014 {
|
||||
optional int32 field11780 = 40;
|
||||
optional string field11781 = 46;
|
||||
optional bool field11782 = 47;
|
||||
optional .benchmarks.google_message3.Enum11107 field11783 = 1;
|
||||
optional int32 field11784 = 2;
|
||||
optional double field11785 = 4;
|
||||
optional int32 field11786 = 5;
|
||||
optional int32 field11787 = 6;
|
||||
optional double field11788 = 7;
|
||||
optional double field11789 = 8;
|
||||
optional int64 field11790 = 9;
|
||||
optional bool field11791 = 10;
|
||||
optional int64 field11792 = 28;
|
||||
optional bool field11793 = 37;
|
||||
optional .benchmarks.google_message3.Enum11541 field11794 = 44;
|
||||
optional double field11795 = 49;
|
||||
optional double field11796 = 51;
|
||||
optional int64 field11797 = 54;
|
||||
optional int64 field11798 = 55;
|
||||
optional .benchmarks.google_message3.UnusedEnum field11799 = 57;
|
||||
optional .benchmarks.google_message3.Enum11468 field11800 = 58;
|
||||
optional int32 field11801 = 59;
|
||||
optional .benchmarks.google_message3.UnusedEnum field11802 = 60;
|
||||
optional int32 field11803 = 61;
|
||||
optional int32 field11804 = 62;
|
||||
optional int32 field11805 = 69;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field11806 = 68;
|
||||
repeated .benchmarks.google_message3.Message11018 field11807 = 71;
|
||||
optional bool field11808 = 50;
|
||||
optional bool field11809 = 56;
|
||||
optional bool field11810 = 66;
|
||||
optional bool field11811 = 63;
|
||||
optional bool field11812 = 64;
|
||||
optional bool field11813 = 65;
|
||||
optional bool field11814 = 67;
|
||||
optional .benchmarks.google_message3.Enum11107 field11815 = 15;
|
||||
optional int64 field11816 = 16;
|
||||
optional double field11817 = 17;
|
||||
optional int64 field11818 = 18;
|
||||
optional int32 field11819 = 19;
|
||||
optional int64 field11820 = 20;
|
||||
optional int32 field11821 = 42;
|
||||
optional int64 field11822 = 52;
|
||||
optional int64 field11823 = 53;
|
||||
optional int64 field11824 = 41;
|
||||
optional double field11825 = 48;
|
||||
repeated .benchmarks.google_message3.Message11020 field11826 = 70;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field11827 = 72;
|
||||
optional double field11828 = 25;
|
||||
optional string field11829 = 26;
|
||||
optional int64 field11830 = 27;
|
||||
optional int64 field11831 = 32;
|
||||
optional uint64 field11832 = 33;
|
||||
optional bool field11833 = 29;
|
||||
optional bool field11834 = 34;
|
||||
optional string field11835 = 30;
|
||||
optional int32 field11836 = 3;
|
||||
optional int32 field11837 = 31;
|
||||
optional int32 field11838 = 73;
|
||||
optional int32 field11839 = 35;
|
||||
optional .benchmarks.google_message3.Enum11022 field11840 = 36;
|
||||
optional .benchmarks.google_message3.Message11013 field11841 = 38;
|
||||
optional double field11842 = 39;
|
||||
optional int32 field11843 = 45;
|
||||
optional bool field11844 = 74;
|
||||
}
|
||||
|
||||
message Message10801 {
|
||||
optional .benchmarks.google_message3.Message10800 field10812 = 1;
|
||||
repeated .benchmarks.google_message3.Message10802 field10813 = 2;
|
||||
optional int32 field10814 = 3;
|
||||
}
|
||||
|
||||
message Message10749 {
|
||||
repeated .benchmarks.google_message3.Message10748 field10754 = 1;
|
||||
}
|
||||
|
||||
message Message8298 {
|
||||
optional .benchmarks.google_message3.Message7966 field8321 = 1;
|
||||
optional int64 field8322 = 2;
|
||||
optional string field8323 = 3;
|
||||
}
|
||||
|
||||
message Message8300 {
|
||||
optional string field8326 = 1;
|
||||
optional .benchmarks.google_message3.Message7966 field8327 = 2;
|
||||
}
|
||||
|
||||
message Message8291 {
|
||||
optional string field8306 = 1;
|
||||
optional int32 field8307 = 2;
|
||||
optional string field8308 = 3;
|
||||
optional string field8309 = 4;
|
||||
optional .benchmarks.google_message3.Enum8292 field8310 = 5;
|
||||
}
|
||||
|
||||
message Message8296 {
|
||||
optional .benchmarks.google_message3.Message7966 field8311 = 1;
|
||||
optional string field8312 = 2;
|
||||
optional .benchmarks.google_message3.Message7966 field8313 = 3;
|
||||
optional int32 field8314 = 4;
|
||||
optional int32 field8315 = 5;
|
||||
optional string field8316 = 6;
|
||||
}
|
||||
|
||||
message Message7965 {
|
||||
optional int32 field7967 = 1;
|
||||
optional int32 field7968 = 2;
|
||||
}
|
||||
|
||||
message Message8290 {
|
||||
optional string field8304 = 1;
|
||||
optional string field8305 = 2;
|
||||
}
|
||||
|
||||
message Message717 {
|
||||
repeated string field876 = 1;
|
||||
optional double field877 = 2;
|
||||
}
|
||||
|
||||
message Message713 {
|
||||
required .benchmarks.google_message3.Message708 field852 = 1;
|
||||
repeated string field853 = 2;
|
||||
}
|
||||
|
||||
message Message705 {
|
||||
required string field807 = 1;
|
||||
optional string field808 = 2;
|
||||
optional string field809 = 3;
|
||||
optional bool field810 = 4;
|
||||
optional string field811 = 5;
|
||||
optional string field812 = 6;
|
||||
repeated string field813 = 7;
|
||||
}
|
||||
|
||||
message Message709 {
|
||||
repeated string field829 = 1;
|
||||
repeated string field830 = 2;
|
||||
repeated string field831 = 3;
|
||||
repeated string field832 = 4;
|
||||
repeated string field833 = 5;
|
||||
}
|
||||
|
||||
message Message702 {
|
||||
optional string field793 = 1;
|
||||
optional string field794 = 2;
|
||||
}
|
||||
|
||||
message Message714 {
|
||||
optional string field854 = 1;
|
||||
optional string field855 = 2;
|
||||
optional string field856 = 3;
|
||||
optional string field857 = 4;
|
||||
optional uint32 field858 = 5;
|
||||
}
|
||||
|
||||
message Message710 {
|
||||
repeated string field834 = 1;
|
||||
optional string field835 = 2;
|
||||
optional string field836 = 3;
|
||||
repeated string field837 = 4;
|
||||
repeated string field838 = 5;
|
||||
}
|
||||
|
||||
message Message706 {
|
||||
repeated string field814 = 1;
|
||||
optional string field815 = 2;
|
||||
repeated string field816 = 3;
|
||||
repeated string field817 = 4;
|
||||
}
|
||||
|
||||
message Message707 {
|
||||
required string field818 = 1;
|
||||
required string field819 = 2;
|
||||
required string field820 = 3;
|
||||
optional bool field821 = 4;
|
||||
repeated string field822 = 5;
|
||||
}
|
||||
|
||||
message Message711 {
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field839 = 1;
|
||||
repeated string field840 = 4;
|
||||
repeated string field841 = 2;
|
||||
repeated string field842 = 3;
|
||||
}
|
||||
|
||||
message Message712 {
|
||||
repeated string field843 = 1;
|
||||
required string field844 = 2;
|
||||
optional string field845 = 3;
|
||||
repeated string field846 = 4;
|
||||
repeated string field847 = 5;
|
||||
optional string field848 = 6;
|
||||
repeated string field849 = 7;
|
||||
optional string field850 = 8;
|
||||
optional string field851 = 9;
|
||||
}
|
||||
|
||||
message Message8939 {
|
||||
optional string field9010 = 1;
|
||||
optional string field9011 = 2;
|
||||
optional string field9012 = 3;
|
||||
repeated string field9013 = 4;
|
||||
optional string field9014 = 5;
|
||||
repeated group Message8940 = 11 {}
|
||||
optional int64 field9016 = 21;
|
||||
optional int64 field9017 = 22;
|
||||
optional int64 field9018 = 23;
|
||||
optional group Message8941 = 31 {
|
||||
optional string field9033 = 32;
|
||||
optional string field9034 = 33;
|
||||
optional string field9035 = 34;
|
||||
optional string field9036 = 35;
|
||||
optional string field9037 = 36;
|
||||
optional string field9038 = 37;
|
||||
}
|
||||
optional .benchmarks.google_message3.Message8942 field9020 = 38;
|
||||
repeated .benchmarks.google_message3.UnusedEmptyMessage field9021 = 39;
|
||||
repeated string field9022 = 41;
|
||||
optional string field9023 = 42;
|
||||
optional string field9024 = 43;
|
||||
optional string field9025 = 44;
|
||||
optional string field9026 = 45;
|
||||
optional string field9027 = 46;
|
||||
optional string field9028 = 47;
|
||||
optional .benchmarks.google_message3.UnusedEnum field9029 = 48;
|
||||
optional .benchmarks.google_message3.UnusedEnum field9030 = 49;
|
||||
optional group Message8943 = 51 {
|
||||
optional string field9039 = 1;
|
||||
optional string field9040 = 2;
|
||||
optional string field9041 = 3;
|
||||
optional string field9042 = 4;
|
||||
optional string field9043 = 5;
|
||||
optional string field9044 = 6;
|
||||
}
|
||||
}
|
||||
|
||||
message Message9181 {
|
||||
optional string field9204 = 1;
|
||||
}
|
||||
|
||||
message Message9164 {
|
||||
optional int32 field9168 = 1;
|
||||
optional int32 field9169 = 2;
|
||||
optional int32 field9170 = 3;
|
||||
}
|
||||
|
||||
message Message9165 {
|
||||
optional float field9171 = 1;
|
||||
optional float field9172 = 2;
|
||||
}
|
||||
|
||||
message Message9166 {
|
||||
optional float field9173 = 1;
|
||||
optional int32 field9174 = 2;
|
||||
}
|
||||
|
||||
message Message9151 {
|
||||
optional double field9152 = 1;
|
||||
optional double field9153 = 2;
|
||||
optional float field9154 = 3;
|
||||
optional float field9155 = 4;
|
||||
optional float field9156 = 5;
|
||||
optional float field9157 = 6;
|
||||
optional float field9158 = 7;
|
||||
optional float field9159 = 8;
|
||||
}
|
||||
|
||||
message Message8888 {
|
||||
optional int32 field8908 = 1;
|
||||
optional .benchmarks.google_message3.Enum8900 field8909 = 4;
|
||||
repeated int32 field8910 = 2 [packed = true];
|
||||
optional bytes field8911 = 3;
|
||||
}
|
||||
|
||||
message Message9627 {
|
||||
required int32 field9668 = 1;
|
||||
required int32 field9669 = 2;
|
||||
required int32 field9670 = 3;
|
||||
required int32 field9671 = 4;
|
||||
optional float field9672 = 5;
|
||||
}
|
||||
|
||||
message Message11020 {}
|
||||
|
||||
message Message11013 {
|
||||
optional bytes field11757 = 19;
|
||||
optional bytes field11758 = 1;
|
||||
optional bytes field11759 = 2;
|
||||
optional bytes field11760 = 3;
|
||||
optional bytes field11761 = 4;
|
||||
optional bytes field11762 = 5;
|
||||
optional bytes field11763 = 6;
|
||||
optional bytes field11764 = 7;
|
||||
optional bytes field11765 = 8;
|
||||
optional bytes field11766 = 9;
|
||||
optional bytes field11767 = 10;
|
||||
optional bytes field11768 = 11;
|
||||
optional bytes field11769 = 12;
|
||||
optional bytes field11770 = 13;
|
||||
optional bytes field11771 = 14;
|
||||
optional bytes field11772 = 15;
|
||||
optional bytes field11773 = 16;
|
||||
optional bytes field11774 = 17;
|
||||
optional bytes field11775 = 18;
|
||||
optional bytes field11776 = 20;
|
||||
optional bytes field11777 = 21;
|
||||
optional .benchmarks.google_message3.UnusedEmptyMessage field11778 = 23;
|
||||
repeated .benchmarks.google_message3.Message11011 field11779 = 22;
|
||||
}
|
81
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3_7.proto
vendored
Normal file
81
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3_7.proto
vendored
Normal file
@ -0,0 +1,81 @@
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package benchmarks.google_message3;
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option java_package = "com.google.protobuf.benchmarks";
|
||||
|
||||
message Message11018 {}
|
||||
|
||||
message Message10800 {
|
||||
optional string field10808 = 1;
|
||||
optional int64 field10809 = 2;
|
||||
optional bool field10810 = 3;
|
||||
optional float field10811 = 4;
|
||||
}
|
||||
|
||||
message Message10802 {}
|
||||
|
||||
message Message10748 {
|
||||
optional string field10750 = 1;
|
||||
optional int32 field10751 = 2;
|
||||
optional int32 field10752 = 3;
|
||||
optional int32 field10753 = 4;
|
||||
}
|
||||
|
||||
message Message7966 {
|
||||
optional string field7969 = 1;
|
||||
optional bool field7970 = 2;
|
||||
}
|
||||
|
||||
message Message708 {
|
||||
optional .benchmarks.google_message3.Message741 field823 = 1;
|
||||
repeated string field824 = 6;
|
||||
optional string field825 = 2;
|
||||
optional string field826 = 3;
|
||||
repeated string field827 = 4;
|
||||
repeated string field828 = 5;
|
||||
}
|
||||
|
||||
message Message8942 {}
|
||||
|
||||
message Message11011 {
|
||||
required bytes field11752 = 1;
|
||||
required bytes field11753 = 2;
|
||||
}
|
||||
|
||||
message UnusedEmptyMessage {}
|
||||
|
||||
message Message741 {
|
||||
repeated string field936 = 1;
|
||||
}
|
1925
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3_8.proto
vendored
Normal file
1925
deps/protobuf/benchmarks/datasets/google_message3/benchmark_message3_8.proto
vendored
Normal file
File diff suppressed because it is too large
Load Diff
484
deps/protobuf/benchmarks/datasets/google_message4/benchmark_message4.proto
vendored
Normal file
484
deps/protobuf/benchmarks/datasets/google_message4/benchmark_message4.proto
vendored
Normal file
@ -0,0 +1,484 @@
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
// LINT: ALLOW_GROUPS
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package benchmarks.google_message4;
|
||||
|
||||
import "datasets/google_message4/benchmark_message4_1.proto";
|
||||
import "datasets/google_message4/benchmark_message4_2.proto";
|
||||
import "datasets/google_message4/benchmark_message4_3.proto";
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option java_package = "com.google.protobuf.benchmarks";
|
||||
|
||||
message GoogleMessage4 {
|
||||
optional int32 field37503 = 1;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37504 = 2;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37505 = 3;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37506 = 4;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37507 = 5;
|
||||
optional .benchmarks.google_message4.Message37489 field37508 = 6;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37509 = 7;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37510 = 8;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37511 = 9;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37512 = 10;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37513 = 11;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37514 = 12;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37515 = 13;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37516 = 14;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37517 = 15;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37518 = 16;
|
||||
}
|
||||
|
||||
message Message37489 {
|
||||
optional .benchmarks.google_message4.Message2517 field37534 = 3;
|
||||
optional .benchmarks.google_message4.Message7330 field37535 = 4;
|
||||
optional .benchmarks.google_message4.Message8815 field37536 = 6;
|
||||
optional .benchmarks.google_message4.Message8817 field37537 = 7;
|
||||
optional .benchmarks.google_message4.Message8835 field37538 = 8;
|
||||
optional .benchmarks.google_message4.Message8848 field37539 = 9;
|
||||
optional .benchmarks.google_message4.Message8856 field37540 = 11;
|
||||
optional .benchmarks.google_message4.Message12717 field37541 = 15;
|
||||
optional .benchmarks.google_message4.Message12748 field37542 = 20;
|
||||
optional .benchmarks.google_message4.Message7319 field37543 = 22;
|
||||
optional .benchmarks.google_message4.Message12908 field37544 = 24;
|
||||
optional .benchmarks.google_message4.Message12910 field37545 = 25;
|
||||
optional .benchmarks.google_message4.Message12960 field37546 = 30;
|
||||
optional .benchmarks.google_message4.Message176 field37547 = 33;
|
||||
optional .benchmarks.google_message4.Message13000 field37548 = 34;
|
||||
optional .benchmarks.google_message4.Message13035 field37549 = 35;
|
||||
optional .benchmarks.google_message4.Message37331 field37550 = 36;
|
||||
optional .benchmarks.google_message4.Message37329 field37551 = 37;
|
||||
optional .benchmarks.google_message4.Message37327 field37552 = 38;
|
||||
optional .benchmarks.google_message4.Message37333 field37553 = 39;
|
||||
optional .benchmarks.google_message4.Message37335 field37554 = 40;
|
||||
}
|
||||
|
||||
message Message7319 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field7321 = 1;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field7322 = 7;
|
||||
}
|
||||
|
||||
message Message12717 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field12719 = 1;
|
||||
optional string field12720 = 2;
|
||||
optional uint32 field12721 = 3;
|
||||
optional .benchmarks.google_message4.Message11976 field12722 = 4;
|
||||
repeated .benchmarks.google_message4.Message11948 field12723 = 5;
|
||||
optional .benchmarks.google_message4.Message11947 field12724 = 6;
|
||||
optional .benchmarks.google_message4.Message12687 field12725 = 7;
|
||||
repeated .benchmarks.google_message4.Message11948 field12726 = 8;
|
||||
optional int64 field12727 = 9;
|
||||
}
|
||||
|
||||
message Message37331 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37367 = 4;
|
||||
required .benchmarks.google_message4.Message37326 field37368 = 1;
|
||||
required int64 field37369 = 2;
|
||||
required bytes field37370 = 3;
|
||||
}
|
||||
|
||||
message Message8815 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field8819 = 1;
|
||||
repeated .benchmarks.google_message4.Message8768 field8820 = 2;
|
||||
optional bool field8821 = 3;
|
||||
}
|
||||
|
||||
message Message7330 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field7332 = 1;
|
||||
optional .benchmarks.google_message4.Message3069 field7333 = 2;
|
||||
optional .benchmarks.google_message4.Message7320 field7334 = 3;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field7335 = 4;
|
||||
optional bool field7336 = 5;
|
||||
optional int64 field7337 = 6;
|
||||
}
|
||||
|
||||
message Message12960 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field12962 = 1;
|
||||
optional .benchmarks.google_message4.Message12948 field12963 = 2;
|
||||
}
|
||||
|
||||
message Message176 {
|
||||
required string field408 = 1;
|
||||
optional int32 field409 = 4;
|
||||
optional string field410 = 50;
|
||||
optional int32 field411 = 2;
|
||||
optional uint64 field412 = 47;
|
||||
optional string field413 = 56;
|
||||
optional int32 field414 = 24;
|
||||
optional string field415 = 21;
|
||||
optional bytes field416 = 3;
|
||||
optional string field417 = 57;
|
||||
optional int32 field418 = 51;
|
||||
optional float field419 = 7;
|
||||
optional bool field420 = 5;
|
||||
optional bool field421 = 28;
|
||||
optional int32 field422 = 6;
|
||||
repeated int32 field423 = 40;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field424 = 41;
|
||||
optional bool field425 = 25;
|
||||
optional uint64 field426 = 26;
|
||||
optional int32 field427 = 38;
|
||||
optional bytes field428 = 15;
|
||||
optional bytes field429 = 55;
|
||||
optional bytes field430 = 16;
|
||||
optional bytes field431 = 23;
|
||||
optional bool field432 = 33;
|
||||
optional bytes field433 = 31;
|
||||
optional bytes field434 = 32;
|
||||
optional int32 field435 = 36;
|
||||
optional uint64 field436 = 17;
|
||||
optional int32 field437 = 45;
|
||||
optional uint64 field438 = 18;
|
||||
optional string field439 = 46;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field440 = 64;
|
||||
optional int32 field441 = 39;
|
||||
optional uint64 field442 = 48;
|
||||
optional bytes field443 = 19;
|
||||
optional bytes field444 = 42;
|
||||
optional bytes field445 = 43;
|
||||
optional string field446 = 44;
|
||||
optional string field447 = 49;
|
||||
optional int64 field448 = 20;
|
||||
optional bool field449 = 53;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field450 = 54;
|
||||
repeated .benchmarks.google_message4.UnusedEmptyMessage field451 = 22;
|
||||
optional .benchmarks.google_message4.UnusedEnum field452 = 27;
|
||||
optional int32 field453 = 29;
|
||||
optional int32 field454 = 30;
|
||||
optional .benchmarks.google_message4.UnusedEnum field455 = 37;
|
||||
optional .benchmarks.google_message4.UnusedEnum field456 = 34;
|
||||
optional int32 field457 = 35;
|
||||
repeated group Message178 = 101 {}
|
||||
optional bool field459 = 52;
|
||||
optional uint64 field460 = 58;
|
||||
optional uint64 field461 = 59;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field462 = 60;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field463 = 61;
|
||||
optional .benchmarks.google_message4.UnusedEnum field464 = 62;
|
||||
repeated string field465 = 63;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field466 = 65;
|
||||
}
|
||||
|
||||
message Message8817 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field8825 = 1;
|
||||
repeated .benchmarks.google_message4.Message8768 field8826 = 2;
|
||||
optional string field8827 = 3;
|
||||
}
|
||||
|
||||
message Message8835 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field8837 = 1;
|
||||
repeated string field8838 = 2;
|
||||
optional .benchmarks.google_message4.UnusedEnum field8839 = 3;
|
||||
}
|
||||
|
||||
message Message37333 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37372 = 3;
|
||||
required .benchmarks.google_message4.Message37326 field37373 = 1;
|
||||
optional uint64 field37374 = 2;
|
||||
}
|
||||
|
||||
message Message13000 {
|
||||
optional int64 field13015 = 1;
|
||||
repeated .benchmarks.google_message4.Message12979 field13016 = 2;
|
||||
}
|
||||
|
||||
message Message37335 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37376 = 4;
|
||||
required .benchmarks.google_message4.Message37326 field37377 = 1;
|
||||
required .benchmarks.google_message4.Message37173 field37378 = 2;
|
||||
optional uint64 field37379 = 3;
|
||||
}
|
||||
|
||||
message Message8848 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field8850 = 1;
|
||||
optional string field8851 = 2;
|
||||
optional bytes field8852 = 3;
|
||||
}
|
||||
|
||||
message Message13035 {
|
||||
optional int64 field13058 = 1;
|
||||
repeated int64 field13059 = 2;
|
||||
}
|
||||
|
||||
message Message8856 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field8858 = 1;
|
||||
optional string field8859 = 2;
|
||||
}
|
||||
|
||||
message Message12908 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field12912 = 1;
|
||||
optional string field12913 = 2;
|
||||
optional .benchmarks.google_message4.Message12799 field12914 = 3;
|
||||
optional int64 field12915 = 4;
|
||||
optional .benchmarks.google_message4.Message3804 field12916 = 5;
|
||||
optional .benchmarks.google_message4.Message12870 field12917 = 6;
|
||||
}
|
||||
|
||||
message Message12910 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field12920 = 1;
|
||||
optional .benchmarks.google_message4.Message12818 field12921 = 2;
|
||||
repeated .benchmarks.google_message4.Message12903 field12922 = 3;
|
||||
}
|
||||
|
||||
message Message37327 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37347 = 11;
|
||||
required .benchmarks.google_message4.Message37326 field37348 = 1;
|
||||
optional bool field37349 = 2;
|
||||
optional bool field37350 = 3;
|
||||
optional bool field37351 = 4;
|
||||
optional bool field37352 = 5;
|
||||
optional bool field37353 = 6;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37354 = 7;
|
||||
optional uint64 field37355 = 8;
|
||||
optional bool field37356 = 9;
|
||||
optional bool field37357 = 10;
|
||||
}
|
||||
|
||||
message Message37329 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37359 = 6;
|
||||
required .benchmarks.google_message4.Message37326 field37360 = 1;
|
||||
required int64 field37361 = 2;
|
||||
required int64 field37362 = 3;
|
||||
optional bool field37363 = 4;
|
||||
}
|
||||
|
||||
message Message2517 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field2519 = 1;
|
||||
optional .benchmarks.google_message4.Message2356 field2520 = 2;
|
||||
optional .benchmarks.google_message4.Message0 field2521 = 3;
|
||||
optional .benchmarks.google_message4.Message2463 field2522 = 4;
|
||||
repeated .benchmarks.google_message4.Message971 field2523 = 5;
|
||||
}
|
||||
|
||||
message Message12748 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field12754 = 1;
|
||||
optional string field12755 = 2;
|
||||
optional string field12756 = 3;
|
||||
optional .benchmarks.google_message4.Enum12735 field12757 = 4;
|
||||
}
|
||||
|
||||
message Message12687 {
|
||||
repeated .benchmarks.google_message4.Message12686 field12701 = 1;
|
||||
}
|
||||
|
||||
message Message11948 {
|
||||
optional string field11954 = 1;
|
||||
repeated .benchmarks.google_message4.Message11949 field11955 = 2;
|
||||
optional bool field11956 = 3;
|
||||
}
|
||||
|
||||
message Message11976 {
|
||||
repeated .benchmarks.google_message4.Message11975 field12002 = 1;
|
||||
}
|
||||
|
||||
message Message7320 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field7323 = 1;
|
||||
optional .benchmarks.google_message4.Message7287 field7324 = 8;
|
||||
}
|
||||
|
||||
message Message3069 {
|
||||
optional .benchmarks.google_message4.Message3061 field3374 = 1;
|
||||
optional bytes field3375 = 2;
|
||||
repeated group Message3070 = 3 {
|
||||
required .benchmarks.google_message4.Enum3071 field3378 = 4;
|
||||
required bytes field3379 = 5;
|
||||
}
|
||||
extensions 10000 to 536870911;
|
||||
}
|
||||
|
||||
message Message12948 {
|
||||
repeated .benchmarks.google_message4.Message12949 field12958 = 1;
|
||||
}
|
||||
|
||||
message Message8768 {
|
||||
optional string field8782 = 1;
|
||||
optional .benchmarks.google_message4.Message8572 field8783 = 2;
|
||||
optional bool field8784 = 3;
|
||||
repeated .benchmarks.google_message4.Message8774 field8785 = 4;
|
||||
optional int64 field8786 = 5;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field8787 = 6;
|
||||
optional string field8788 = 7;
|
||||
}
|
||||
|
||||
message Message12979 {
|
||||
required bytes field12981 = 1;
|
||||
repeated string field12982 = 2;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field12983 = 3;
|
||||
optional int64 field12984 = 4;
|
||||
optional string field12985 = 5;
|
||||
optional int32 field12986 = 6;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field12987 = 7;
|
||||
}
|
||||
|
||||
message Message37173 {
|
||||
optional string field37252 = 1;
|
||||
optional int64 field37253 = 2;
|
||||
optional .benchmarks.google_message4.UnusedEnum field37254 = 4;
|
||||
optional bool field37255 = 5;
|
||||
optional bool field37256 = 6;
|
||||
optional bool field37257 = 7;
|
||||
optional string field37258 = 8;
|
||||
optional string field37259 = 9;
|
||||
optional uint32 field37260 = 10;
|
||||
optional fixed32 field37261 = 11;
|
||||
optional string field37262 = 12;
|
||||
optional string field37263 = 13;
|
||||
optional string field37264 = 14;
|
||||
optional int32 field37265 = 15;
|
||||
optional int64 field37266 = 16;
|
||||
optional int64 field37267 = 17;
|
||||
optional int32 field37268 = 18;
|
||||
optional int32 field37269 = 19;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37270 = 20;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37271 = 21;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37272 = 22;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37273 = 23;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field37274 = 24;
|
||||
optional string field37275 = 25;
|
||||
optional bool field37276 = 26;
|
||||
}
|
||||
|
||||
message Message12799 {
|
||||
required string field12809 = 1;
|
||||
repeated fixed64 field12810 = 2;
|
||||
repeated .benchmarks.google_message4.Message12776 field12811 = 8;
|
||||
repeated int32 field12812 = 4;
|
||||
repeated .benchmarks.google_message4.Message12798 field12813 = 5;
|
||||
required int32 field12814 = 3;
|
||||
optional int32 field12815 = 6;
|
||||
optional .benchmarks.google_message4.Message12797 field12816 = 7;
|
||||
}
|
||||
|
||||
message Message12870 {
|
||||
required int32 field12879 = 1;
|
||||
optional int32 field12880 = 7;
|
||||
required int32 field12881 = 2;
|
||||
optional uint64 field12882 = 3;
|
||||
optional string field12883 = 2001;
|
||||
optional fixed64 field12884 = 4;
|
||||
repeated fixed64 field12885 = 14;
|
||||
optional int32 field12886 = 9;
|
||||
optional int64 field12887 = 18;
|
||||
repeated .benchmarks.google_message4.Message12870 field12888 = 8;
|
||||
optional int32 field12889 = 5;
|
||||
optional uint64 field12890 = 6;
|
||||
optional int32 field12891 = 10;
|
||||
optional int32 field12892 = 11;
|
||||
optional double field12893 = 12;
|
||||
optional .benchmarks.google_message4.Message12825 field12894 = 13;
|
||||
optional double field12895 = 15;
|
||||
optional string field12896 = 16;
|
||||
optional .benchmarks.google_message4.Enum12871 field12897 = 17;
|
||||
optional int32 field12898 = 19;
|
||||
}
|
||||
|
||||
message Message3804 {
|
||||
required int64 field3818 = 1;
|
||||
required bool field3819 = 2;
|
||||
repeated .benchmarks.google_message4.Enum3805 field3820 = 4;
|
||||
optional int32 field3821 = 5;
|
||||
optional bool field3822 = 6;
|
||||
optional int64 field3823 = 7;
|
||||
optional .benchmarks.google_message4.Enum3783 field3824 = 8;
|
||||
}
|
||||
|
||||
message Message12903 {
|
||||
optional string field12905 = 1;
|
||||
optional .benchmarks.google_message4.Message8587 field12906 = 2;
|
||||
repeated .benchmarks.google_message4.Message8590 field12907 = 3;
|
||||
}
|
||||
|
||||
message Message37326 {
|
||||
required string field37345 = 1;
|
||||
optional string field37346 = 2;
|
||||
}
|
||||
|
||||
message Message2356 {
|
||||
optional .benchmarks.google_message4.Message1374 field2368 = 121;
|
||||
optional uint64 field2369 = 1;
|
||||
optional int32 field2370 = 2;
|
||||
optional int32 field2371 = 17;
|
||||
required string field2372 = 3;
|
||||
optional int32 field2373 = 7;
|
||||
optional bytes field2374 = 8;
|
||||
optional string field2375 = 4;
|
||||
optional string field2376 = 101;
|
||||
optional int32 field2377 = 102;
|
||||
optional int32 field2378 = 103;
|
||||
optional int32 field2379 = 104;
|
||||
optional int32 field2380 = 113;
|
||||
optional int32 field2381 = 114;
|
||||
optional int32 field2382 = 115;
|
||||
optional int32 field2383 = 117;
|
||||
optional int32 field2384 = 118;
|
||||
optional int32 field2385 = 119;
|
||||
optional int32 field2386 = 105;
|
||||
optional bytes field2387 = 5;
|
||||
optional group Message2357 = 6 {
|
||||
optional int64 field2399 = 9;
|
||||
optional int32 field2400 = 10;
|
||||
optional int32 field2401 = 11;
|
||||
optional int32 field2402 = 12;
|
||||
optional int32 field2403 = 13;
|
||||
optional int32 field2404 = 116;
|
||||
optional int32 field2405 = 106;
|
||||
required bytes field2406 = 14;
|
||||
optional int32 field2407 = 45;
|
||||
optional int32 field2408 = 112;
|
||||
optional bool field2409 = 122;
|
||||
optional bytes field2410 = 124;
|
||||
}
|
||||
optional string field2389 = 120;
|
||||
optional group Message2358 = 107 {}
|
||||
repeated group Message2359 = 40 {}
|
||||
optional int32 field2392 = 50;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field2393 = 60;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field2394 = 70;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field2395 = 80;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field2396 = 90;
|
||||
optional string field2397 = 100;
|
||||
optional string field2398 = 123;
|
||||
}
|
||||
|
||||
message Message0 {
|
||||
option message_set_wire_format = true;
|
||||
|
||||
extensions 4 to 2147483646;
|
||||
}
|
||||
|
||||
message Message971 {
|
||||
optional string field972 = 1;
|
||||
optional int32 field973 = 2;
|
||||
optional bool field974 = 3;
|
||||
}
|
500
deps/protobuf/benchmarks/datasets/google_message4/benchmark_message4_1.proto
vendored
Normal file
500
deps/protobuf/benchmarks/datasets/google_message4/benchmark_message4_1.proto
vendored
Normal file
@ -0,0 +1,500 @@
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
// LINT: ALLOW_GROUPS
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package benchmarks.google_message4;
|
||||
|
||||
import "datasets/google_message4/benchmark_message4_2.proto";
|
||||
import "datasets/google_message4/benchmark_message4_3.proto";
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option java_package = "com.google.protobuf.benchmarks";
|
||||
|
||||
message Message2463 {
|
||||
repeated .benchmarks.google_message4.Message2462 field2498 = 1;
|
||||
}
|
||||
|
||||
message Message12686 {
|
||||
optional string field12699 = 1;
|
||||
optional .benchmarks.google_message4.Message12685 field12700 = 2;
|
||||
}
|
||||
|
||||
message Message11949 {}
|
||||
|
||||
message Message11975 {
|
||||
optional string field11992 = 1;
|
||||
optional int32 field11993 = 2;
|
||||
repeated .benchmarks.google_message4.Message10320 field11994 = 3;
|
||||
optional .benchmarks.google_message4.Message11947 field11995 = 4;
|
||||
optional .benchmarks.google_message4.Message11920 field11996 = 5;
|
||||
optional bool field11997 = 6;
|
||||
repeated string field11998 = 7;
|
||||
optional float field11999 = 8;
|
||||
repeated .benchmarks.google_message4.UnusedEnum field12000 = 9;
|
||||
optional int32 field12001 = 11;
|
||||
}
|
||||
|
||||
message Message7287 {
|
||||
optional .benchmarks.google_message4.Message6133 field7311 = 1;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field7312 = 8;
|
||||
optional string field7313 = 3;
|
||||
optional .benchmarks.google_message4.Message6643 field7314 = 4;
|
||||
optional .benchmarks.google_message4.Enum7288 field7315 = 5;
|
||||
optional bytes field7316 = 6;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field7317 = 7;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field7318 = 9;
|
||||
}
|
||||
|
||||
message Message3061 {
|
||||
optional string field3286 = 2;
|
||||
optional int32 field3287 = 77;
|
||||
optional string field3288 = 49;
|
||||
required .benchmarks.google_message4.Message3046 field3289 = 3;
|
||||
optional .benchmarks.google_message4.Message3046 field3290 = 58;
|
||||
optional group Message3062 = 4 {
|
||||
required int32 field3335 = 5;
|
||||
optional int32 field3336 = 6;
|
||||
optional int32 field3337 = 7;
|
||||
}
|
||||
optional .benchmarks.google_message4.Message3060 field3292 = 104;
|
||||
optional int64 field3293 = 32;
|
||||
optional int32 field3294 = 41;
|
||||
optional group Message3063 = 13 {
|
||||
required int32 field3338 = 14;
|
||||
optional .benchmarks.google_message4.Enum2851 field3339 = 18;
|
||||
optional int64 field3340 = 15;
|
||||
optional int64 field3341 = 23;
|
||||
}
|
||||
optional .benchmarks.google_message4.Enum2834 field3296 = 94;
|
||||
optional bool field3297 = 25;
|
||||
optional bool field3298 = 50;
|
||||
optional string field3299 = 89;
|
||||
optional string field3300 = 91;
|
||||
optional string field3301 = 105;
|
||||
optional .benchmarks.google_message4.Message3050 field3302 = 53;
|
||||
optional fixed64 field3303 = 51;
|
||||
optional fixed64 field3304 = 106;
|
||||
optional int32 field3305 = 60;
|
||||
optional string field3306 = 44;
|
||||
optional bytes field3307 = 81;
|
||||
optional string field3308 = 70;
|
||||
optional bytes field3309 = 45;
|
||||
optional .benchmarks.google_message4.Enum2806 field3310 = 71;
|
||||
optional int32 field3311 = 72;
|
||||
optional bytes field3312 = 78;
|
||||
optional int32 field3313 = 20;
|
||||
repeated group Message3064 = 8 {
|
||||
required .benchmarks.google_message4.Enum2602 field3342 = 9;
|
||||
optional int32 field3343 = 92;
|
||||
optional string field3344 = 10;
|
||||
optional bytes field3345 = 11;
|
||||
optional int32 field3346 = 12;
|
||||
optional .benchmarks.google_message4.Message3060 field3347 = 98;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field3348 = 82;
|
||||
optional .benchmarks.google_message4.Message3050 field3349 = 80;
|
||||
optional fixed64 field3350 = 52;
|
||||
optional int32 field3351 = 33;
|
||||
optional string field3352 = 42;
|
||||
optional string field3353 = 69;
|
||||
optional bytes field3354 = 43;
|
||||
optional .benchmarks.google_message4.Enum2806 field3355 = 73;
|
||||
optional int32 field3356 = 74;
|
||||
optional int32 field3357 = 90;
|
||||
optional bytes field3358 = 79;
|
||||
optional int32 field3359 = 19;
|
||||
optional .benchmarks.google_message4.Enum2834 field3360 = 95;
|
||||
}
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field3315 = 39;
|
||||
optional int32 field3316 = 76;
|
||||
optional group Message3065 = 63 {}
|
||||
optional .benchmarks.google_message4.Enum2806 field3318 = 54;
|
||||
optional int32 field3319 = 46;
|
||||
repeated string field3320 = 24;
|
||||
optional fixed32 field3321 = 38;
|
||||
optional bytes field3322 = 99;
|
||||
optional fixed64 field3323 = 1;
|
||||
optional fixed64 field3324 = 97;
|
||||
repeated .benchmarks.google_message4.Message3040 field3325 = 16;
|
||||
repeated .benchmarks.google_message4.Message3041 field3326 = 61;
|
||||
optional group Message3066 = 21 {
|
||||
optional int32 field3366 = 22;
|
||||
optional int32 field3367 = 55;
|
||||
optional int32 field3368 = 88;
|
||||
optional int32 field3369 = 56;
|
||||
optional int32 field3370 = 75;
|
||||
optional int32 field3371 = 57;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field3372 = 85;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field3373 = 96;
|
||||
}
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field3328 = 47;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field3329 = 48;
|
||||
optional fixed64 field3330 = 40;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field3331 = 86;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field3332 = 59;
|
||||
optional int32 field3333 = 17;
|
||||
}
|
||||
|
||||
message Message12949 {}
|
||||
|
||||
message Message8572 {
|
||||
optional bytes field8647 = 1;
|
||||
optional bytes field8648 = 3;
|
||||
optional .benchmarks.google_message4.Message3886 field8649 = 4;
|
||||
optional .benchmarks.google_message4.Message3919 field8650 = 57;
|
||||
optional bool field8651 = 5;
|
||||
optional int32 field8652 = 6;
|
||||
optional int32 field8653 = 49;
|
||||
optional .benchmarks.google_message4.Message7905 field8654 = 7;
|
||||
optional int32 field8655 = 10;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field8656 = 11;
|
||||
optional bool field8657 = 35;
|
||||
optional bytes field8658 = 12;
|
||||
optional string field8659 = 14;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field8660 = 13;
|
||||
optional bytes field8661 = 15;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field8662 = 17;
|
||||
optional int32 field8663 = 18;
|
||||
optional int32 field8664 = 19;
|
||||
optional bool field8665 = 20;
|
||||
optional .benchmarks.google_message4.Enum3476 field8666 = 31;
|
||||
optional bool field8667 = 36;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field8668 = 39;
|
||||
optional bytes field8669 = 22;
|
||||
optional int32 field8670 = 24;
|
||||
optional .benchmarks.google_message4.Message3052 field8671 = 25;
|
||||
optional bytes field8672 = 26;
|
||||
optional bytes field8673 = 28;
|
||||
optional int32 field8674 = 29;
|
||||
optional bytes field8675 = 30;
|
||||
optional bytes field8676 = 32;
|
||||
optional string field8677 = 33;
|
||||
optional int32 field8678 = 34;
|
||||
optional int32 field8679 = 37;
|
||||
optional double field8680 = 38;
|
||||
optional double field8681 = 42;
|
||||
optional .benchmarks.google_message4.Message3922 field8682 = 40;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field8683 = 43;
|
||||
optional int64 field8684 = 44;
|
||||
optional .benchmarks.google_message4.Message7929 field8685 = 45;
|
||||
optional uint64 field8686 = 46;
|
||||
optional uint32 field8687 = 48;
|
||||
optional .benchmarks.google_message4.Message7843 field8688 = 47;
|
||||
optional .benchmarks.google_message4.Message7864 field8689 = 50;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field8690 = 52;
|
||||
optional bool field8691 = 58;
|
||||
optional bool field8692 = 54;
|
||||
optional string field8693 = 55;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field8694 = 41;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field8695 = 53;
|
||||
optional .benchmarks.google_message4.Message8575 field8696 = 61;
|
||||
}
|
||||
|
||||
message Message8774 {
|
||||
optional string field8810 = 1;
|
||||
optional string field8811 = 2;
|
||||
optional string field8812 = 3;
|
||||
optional string field8813 = 4;
|
||||
optional string field8814 = 5;
|
||||
}
|
||||
|
||||
message Message12776 {
|
||||
optional string field12786 = 1;
|
||||
optional fixed64 field12787 = 11;
|
||||
optional int32 field12788 = 6;
|
||||
optional int32 field12789 = 13;
|
||||
optional int32 field12790 = 14;
|
||||
optional int32 field12791 = 15;
|
||||
optional int32 field12792 = 16;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field12793 = 8;
|
||||
optional .benchmarks.google_message4.Message12774 field12794 = 10;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field12795 = 12;
|
||||
extensions 2 to 2;
|
||||
extensions 3 to 3;
|
||||
extensions 4 to 4;
|
||||
extensions 5 to 5;
|
||||
extensions 7 to 7;
|
||||
extensions 9 to 9;
|
||||
}
|
||||
|
||||
message Message12798 {
|
||||
optional int32 field12805 = 1;
|
||||
optional int32 field12806 = 2;
|
||||
optional .benchmarks.google_message4.Message12774 field12807 = 6;
|
||||
optional bool field12808 = 7;
|
||||
}
|
||||
|
||||
message Message12797 {
|
||||
optional .benchmarks.google_message4.Message12796 field12802 = 1;
|
||||
repeated .benchmarks.google_message4.Message12796 field12803 = 2;
|
||||
optional string field12804 = 3;
|
||||
}
|
||||
|
||||
message Message12825 {
|
||||
repeated .benchmarks.google_message4.Message12818 field12862 = 1;
|
||||
optional int32 field12863 = 2;
|
||||
optional .benchmarks.google_message4.Message12819 field12864 = 3;
|
||||
optional .benchmarks.google_message4.Message12820 field12865 = 4;
|
||||
optional int32 field12866 = 5;
|
||||
repeated .benchmarks.google_message4.Message12821 field12867 = 6;
|
||||
repeated .benchmarks.google_message4.UnusedEmptyMessage field12868 = 7;
|
||||
}
|
||||
|
||||
message Message8590 {}
|
||||
|
||||
message Message8587 {}
|
||||
|
||||
message Message1374 {
|
||||
required string field1375 = 1;
|
||||
optional string field1376 = 2;
|
||||
}
|
||||
|
||||
message Message2462 {
|
||||
required bytes field2496 = 1;
|
||||
required double field2497 = 2;
|
||||
}
|
||||
|
||||
message Message12685 {
|
||||
repeated string field12692 = 1;
|
||||
repeated string field12693 = 2;
|
||||
optional int64 field12694 = 3;
|
||||
optional uint32 field12695 = 4;
|
||||
repeated string field12696 = 5;
|
||||
optional string field12697 = 6;
|
||||
optional string field12698 = 7;
|
||||
}
|
||||
|
||||
message Message10320 {
|
||||
optional .benchmarks.google_message4.Enum10335 field10347 = 1;
|
||||
repeated .benchmarks.google_message4.Message10319 field10348 = 2;
|
||||
optional int32 field10349 = 3;
|
||||
optional int32 field10350 = 4;
|
||||
optional int32 field10351 = 5;
|
||||
optional int32 field10352 = 6;
|
||||
optional .benchmarks.google_message4.Enum10337 field10353 = 7;
|
||||
}
|
||||
|
||||
message Message11947 {
|
||||
optional uint32 field11951 = 1;
|
||||
optional bool field11952 = 2;
|
||||
optional int32 field11953 = 3;
|
||||
}
|
||||
|
||||
message Message11920 {
|
||||
optional .benchmarks.google_message4.Enum11901 field11945 = 1;
|
||||
optional .benchmarks.google_message4.UnusedEnum field11946 = 2;
|
||||
}
|
||||
|
||||
message Message6643 {
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field6683 = 3;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field6684 = 4;
|
||||
optional double field6685 = 5;
|
||||
optional double field6686 = 6;
|
||||
optional int32 field6687 = 1;
|
||||
optional int32 field6688 = 2;
|
||||
optional double field6689 = 9;
|
||||
optional bytes field6690 = 10;
|
||||
optional int32 field6691 = 11;
|
||||
optional bool field6692 = 12;
|
||||
optional bool field6693 = 13;
|
||||
optional .benchmarks.google_message4.Message6578 field6694 = 15;
|
||||
optional .benchmarks.google_message4.UnusedEnum field6695 = 16;
|
||||
optional int64 field6696 = 17;
|
||||
repeated .benchmarks.google_message4.UnusedEmptyMessage field6697 = 22;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field6698 = 19;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field6699 = 20;
|
||||
optional int32 field6700 = 21;
|
||||
}
|
||||
|
||||
message Message6133 {
|
||||
optional .benchmarks.google_message4.Message4016 field6173 = 12;
|
||||
optional double field6174 = 16;
|
||||
required string field6175 = 1;
|
||||
required string field6176 = 2;
|
||||
required string field6177 = 3;
|
||||
optional string field6178 = 4;
|
||||
optional string field6179 = 8;
|
||||
repeated .benchmarks.google_message4.Message6109 field6180 = 5;
|
||||
repeated .benchmarks.google_message4.Message5908 field6181 = 13;
|
||||
repeated .benchmarks.google_message4.Message6107 field6182 = 7;
|
||||
repeated .benchmarks.google_message4.Message6126 field6183 = 9;
|
||||
repeated .benchmarks.google_message4.Message6129 field6184 = 15;
|
||||
optional int32 field6185 = 10;
|
||||
optional int32 field6186 = 11;
|
||||
optional .benchmarks.google_message4.Message4016 field6187 = 17;
|
||||
optional double field6188 = 14;
|
||||
optional double field6189 = 18;
|
||||
optional string field6190 = 19;
|
||||
optional string field6191 = 20;
|
||||
repeated .benchmarks.google_message4.Message5881 field6192 = 21;
|
||||
}
|
||||
|
||||
message Message6109 {
|
||||
optional string field6140 = 1;
|
||||
required .benchmarks.google_message4.Enum6111 field6141 = 2;
|
||||
optional int32 field6142 = 9;
|
||||
optional string field6143 = 3;
|
||||
repeated .benchmarks.google_message4.Message6110 field6144 = 4;
|
||||
repeated int32 field6145 = 7;
|
||||
repeated int32 field6146 = 8;
|
||||
optional .benchmarks.google_message4.Message6133 field6147 = 10;
|
||||
repeated int32 field6148 = 11;
|
||||
optional string field6149 = 12;
|
||||
optional string field6150 = 13;
|
||||
optional bool field6151 = 14;
|
||||
extensions 1000 to 536870911;
|
||||
}
|
||||
|
||||
message Message3046 {
|
||||
required .benchmarks.google_message4.Enum2593 field3222 = 1;
|
||||
optional int32 field3223 = 4;
|
||||
}
|
||||
|
||||
message Message3060 {
|
||||
optional int64 field3283 = 1;
|
||||
optional int64 field3284 = 2;
|
||||
optional int64 field3285 = 3;
|
||||
}
|
||||
|
||||
message Message3041 {
|
||||
optional string field3214 = 1;
|
||||
optional int32 field3215 = 2;
|
||||
}
|
||||
|
||||
message Message3040 {
|
||||
required fixed64 field3209 = 1;
|
||||
repeated fixed64 field3210 = 4;
|
||||
optional int32 field3211 = 5;
|
||||
optional fixed64 field3212 = 2;
|
||||
required string field3213 = 3;
|
||||
}
|
||||
|
||||
message Message3050 {
|
||||
optional bytes field3245 = 5;
|
||||
optional int32 field3246 = 2;
|
||||
optional bytes field3247 = 6;
|
||||
optional int32 field3248 = 4;
|
||||
optional fixed32 field3249 = 1;
|
||||
optional fixed32 field3250 = 3;
|
||||
}
|
||||
|
||||
message Message7905 {
|
||||
optional int32 field7911 = 1;
|
||||
optional bool field7912 = 2;
|
||||
optional bytes field7913 = 3;
|
||||
optional int32 field7914 = 4;
|
||||
optional int32 field7915 = 5;
|
||||
optional bytes field7916 = 6;
|
||||
optional int32 field7917 = 7;
|
||||
}
|
||||
|
||||
message Message3886 {
|
||||
repeated group Message3887 = 1 {
|
||||
required string field3932 = 2;
|
||||
optional string field3933 = 9;
|
||||
optional .benchmarks.google_message4.Message3850 field3934 = 3;
|
||||
optional bytes field3935 = 8;
|
||||
}
|
||||
}
|
||||
|
||||
message Message7864 {
|
||||
optional string field7866 = 1;
|
||||
optional string field7867 = 2;
|
||||
repeated .benchmarks.google_message4.Message7865 field7868 = 5;
|
||||
repeated .benchmarks.google_message4.Message7865 field7869 = 6;
|
||||
repeated .benchmarks.google_message4.Message7865 field7870 = 7;
|
||||
repeated .benchmarks.google_message4.UnusedEmptyMessage field7871 = 8;
|
||||
}
|
||||
|
||||
message Message3922 {
|
||||
optional uint64 field4012 = 1;
|
||||
}
|
||||
|
||||
message Message3052 {
|
||||
repeated string field3254 = 1;
|
||||
repeated string field3255 = 2;
|
||||
repeated bytes field3256 = 3;
|
||||
repeated string field3257 = 4;
|
||||
optional bool field3258 = 5;
|
||||
optional int32 field3259 = 6;
|
||||
optional int32 field3260 = 7;
|
||||
optional string field3261 = 8;
|
||||
optional string field3262 = 9;
|
||||
}
|
||||
|
||||
message Message8575 {}
|
||||
|
||||
message Message7843 {
|
||||
optional bool field7844 = 5;
|
||||
optional int32 field7845 = 1;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field7846 = 22;
|
||||
repeated int32 field7847 = 3;
|
||||
repeated string field7848 = 11;
|
||||
optional .benchmarks.google_message4.UnusedEnum field7849 = 15;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field7850 = 6;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field7851 = 14;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field7852 = 10;
|
||||
optional .benchmarks.google_message4.Message7511 field7853 = 13;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field7854 = 16;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field7855 = 17;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field7856 = 19;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field7857 = 18;
|
||||
optional .benchmarks.google_message4.UnusedEnum field7858 = 20;
|
||||
optional int32 field7859 = 2;
|
||||
}
|
||||
|
||||
message Message3919 {
|
||||
repeated .benchmarks.google_message4.Message3920 field4009 = 1;
|
||||
}
|
||||
|
||||
message Message7929 {
|
||||
optional int64 field7942 = 1;
|
||||
optional int64 field7943 = 4;
|
||||
optional int64 field7944 = 5;
|
||||
optional int64 field7945 = 12;
|
||||
optional int64 field7946 = 13;
|
||||
optional int64 field7947 = 18;
|
||||
optional int64 field7948 = 6;
|
||||
optional int64 field7949 = 7;
|
||||
repeated .benchmarks.google_message4.Message7919 field7950 = 8;
|
||||
repeated .benchmarks.google_message4.UnusedEmptyMessage field7951 = 20;
|
||||
repeated .benchmarks.google_message4.Message7920 field7952 = 14;
|
||||
repeated .benchmarks.google_message4.Message7921 field7953 = 15;
|
||||
repeated .benchmarks.google_message4.Message7928 field7954 = 17;
|
||||
optional int64 field7955 = 19;
|
||||
optional bool field7956 = 2;
|
||||
optional int64 field7957 = 3;
|
||||
optional int64 field7958 = 9;
|
||||
repeated .benchmarks.google_message4.UnusedEmptyMessage field7959 = 10;
|
||||
repeated bytes field7960 = 11;
|
||||
optional int64 field7961 = 16;
|
||||
}
|
316
deps/protobuf/benchmarks/datasets/google_message4/benchmark_message4_2.proto
vendored
Normal file
316
deps/protobuf/benchmarks/datasets/google_message4/benchmark_message4_2.proto
vendored
Normal file
@ -0,0 +1,316 @@
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package benchmarks.google_message4;
|
||||
|
||||
import "datasets/google_message4/benchmark_message4_3.proto";
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option java_package = "com.google.protobuf.benchmarks";
|
||||
|
||||
message Message12774 {
|
||||
optional uint32 field12777 = 1;
|
||||
optional uint32 field12778 = 2;
|
||||
optional uint32 field12779 = 3;
|
||||
optional uint32 field12780 = 4;
|
||||
optional uint32 field12781 = 5;
|
||||
optional bool field12782 = 6;
|
||||
}
|
||||
|
||||
message Message12796 {
|
||||
repeated fixed64 field12800 = 1;
|
||||
optional uint64 field12801 = 2;
|
||||
}
|
||||
|
||||
message Message12821 {
|
||||
optional int32 field12848 = 1;
|
||||
optional int32 field12849 = 2;
|
||||
optional int32 field12850 = 3;
|
||||
optional int32 field12851 = 4;
|
||||
optional int32 field12852 = 5;
|
||||
}
|
||||
|
||||
message Message12820 {
|
||||
optional int32 field12840 = 1;
|
||||
optional int32 field12841 = 2;
|
||||
optional int32 field12842 = 3;
|
||||
optional int32 field12843 = 8;
|
||||
optional int32 field12844 = 4;
|
||||
optional int32 field12845 = 5;
|
||||
optional int32 field12846 = 6;
|
||||
optional int32 field12847 = 7;
|
||||
}
|
||||
|
||||
message Message12819 {
|
||||
optional double field12834 = 1;
|
||||
optional double field12835 = 2;
|
||||
optional double field12836 = 3;
|
||||
optional double field12837 = 4;
|
||||
optional double field12838 = 5;
|
||||
optional double field12839 = 6;
|
||||
}
|
||||
|
||||
message Message12818 {
|
||||
optional uint64 field12829 = 1;
|
||||
optional int32 field12830 = 2;
|
||||
optional int32 field12831 = 3;
|
||||
optional int32 field12832 = 5;
|
||||
repeated .benchmarks.google_message4.Message12817 field12833 = 4;
|
||||
}
|
||||
|
||||
message Message10319 {
|
||||
optional .benchmarks.google_message4.Enum10325 field10340 = 1;
|
||||
optional int32 field10341 = 4;
|
||||
optional int32 field10342 = 5;
|
||||
optional bytes field10343 = 3;
|
||||
optional string field10344 = 2;
|
||||
optional string field10345 = 6;
|
||||
optional string field10346 = 7;
|
||||
}
|
||||
|
||||
message Message6578 {
|
||||
optional .benchmarks.google_message4.Enum6579 field6632 = 1;
|
||||
optional .benchmarks.google_message4.Enum6588 field6633 = 2;
|
||||
}
|
||||
|
||||
message Message6126 {
|
||||
required string field6152 = 1;
|
||||
repeated .benchmarks.google_message4.Message6127 field6153 = 9;
|
||||
optional int32 field6154 = 14;
|
||||
optional bytes field6155 = 10;
|
||||
optional .benchmarks.google_message4.Message6024 field6156 = 12;
|
||||
optional int32 field6157 = 4;
|
||||
optional string field6158 = 5;
|
||||
optional int32 field6159 = 6;
|
||||
repeated int32 field6160 = 2;
|
||||
repeated int32 field6161 = 3;
|
||||
repeated .benchmarks.google_message4.Message6052 field6162 = 7;
|
||||
repeated .benchmarks.google_message4.UnusedEmptyMessage field6163 = 11;
|
||||
optional .benchmarks.google_message4.Enum6065 field6164 = 15;
|
||||
repeated .benchmarks.google_message4.Message6127 field6165 = 8;
|
||||
optional bool field6166 = 13;
|
||||
optional bool field6167 = 16;
|
||||
optional bool field6168 = 18;
|
||||
repeated .benchmarks.google_message4.Message6054 field6169 = 17;
|
||||
optional int32 field6170 = 19;
|
||||
}
|
||||
|
||||
message Message5881 {
|
||||
required double field5897 = 1;
|
||||
optional string field5898 = 5;
|
||||
optional .benchmarks.google_message4.Message5861 field5899 = 2;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field5900 = 3;
|
||||
optional .benchmarks.google_message4.Message5867 field5901 = 4;
|
||||
optional .benchmarks.google_message4.Message5880 field5902 = 6;
|
||||
}
|
||||
|
||||
message Message6110 {}
|
||||
|
||||
message Message6107 {
|
||||
optional .benchmarks.google_message4.Message4016 field6134 = 1;
|
||||
optional int32 field6135 = 2;
|
||||
optional string field6136 = 3;
|
||||
repeated int32 field6137 = 4;
|
||||
optional int32 field6138 = 5;
|
||||
repeated .benchmarks.google_message4.Message6108 field6139 = 6;
|
||||
}
|
||||
|
||||
message Message6129 {
|
||||
required .benchmarks.google_message4.Enum6130 field6171 = 1;
|
||||
required string field6172 = 2;
|
||||
}
|
||||
|
||||
message Message5908 {
|
||||
optional string field5971 = 1;
|
||||
optional int32 field5972 = 2;
|
||||
optional int32 field5973 = 3;
|
||||
optional .benchmarks.google_message4.Enum5909 field5974 = 45;
|
||||
optional .benchmarks.google_message4.Enum5912 field5975 = 4;
|
||||
optional fixed32 field5976 = 50;
|
||||
optional fixed32 field5977 = 5;
|
||||
optional fixed32 field5978 = 6;
|
||||
optional string field5979 = 7;
|
||||
optional .benchmarks.google_message4.Enum5915 field5980 = 8;
|
||||
optional .benchmarks.google_message4.Message5903 field5981 = 9;
|
||||
optional .benchmarks.google_message4.Message5903 field5982 = 10;
|
||||
optional .benchmarks.google_message4.Enum5920 field5983 = 11;
|
||||
optional .benchmarks.google_message4.Enum5923 field5984 = 40;
|
||||
optional .benchmarks.google_message4.Message5903 field5985 = 41;
|
||||
optional .benchmarks.google_message4.Message5903 field5986 = 42;
|
||||
optional .benchmarks.google_message4.Enum5928 field5987 = 47;
|
||||
optional bool field5988 = 48;
|
||||
repeated fixed32 field5989 = 49;
|
||||
optional string field5990 = 12;
|
||||
optional .benchmarks.google_message4.Message5903 field5991 = 13;
|
||||
optional .benchmarks.google_message4.Message5903 field5992 = 14;
|
||||
optional .benchmarks.google_message4.Message5903 field5993 = 15;
|
||||
optional .benchmarks.google_message4.Message5903 field5994 = 16;
|
||||
optional .benchmarks.google_message4.Message5903 field5995 = 32;
|
||||
optional .benchmarks.google_message4.Message5903 field5996 = 33;
|
||||
optional .benchmarks.google_message4.Message5903 field5997 = 34;
|
||||
optional .benchmarks.google_message4.Message5903 field5998 = 35;
|
||||
optional .benchmarks.google_message4.Enum5931 field5999 = 17;
|
||||
optional .benchmarks.google_message4.Enum5935 field6000 = 18;
|
||||
optional .benchmarks.google_message4.Enum5939 field6001 = 36;
|
||||
optional .benchmarks.google_message4.Enum5939 field6002 = 37;
|
||||
repeated int32 field6003 = 19;
|
||||
optional uint32 field6004 = 20;
|
||||
optional uint32 field6005 = 21;
|
||||
optional uint32 field6006 = 22;
|
||||
optional uint32 field6007 = 23;
|
||||
optional .benchmarks.google_message4.Enum5946 field6008 = 24;
|
||||
optional .benchmarks.google_message4.Enum5946 field6009 = 25;
|
||||
optional .benchmarks.google_message4.Enum5946 field6010 = 26;
|
||||
optional .benchmarks.google_message4.Enum5946 field6011 = 27;
|
||||
optional fixed32 field6012 = 28;
|
||||
optional fixed32 field6013 = 29;
|
||||
optional fixed32 field6014 = 30;
|
||||
optional fixed32 field6015 = 31;
|
||||
optional int32 field6016 = 38;
|
||||
optional float field6017 = 39;
|
||||
optional .benchmarks.google_message4.Enum5957 field6018 = 43;
|
||||
optional .benchmarks.google_message4.Message5907 field6019 = 44;
|
||||
optional .benchmarks.google_message4.Enum5962 field6020 = 46;
|
||||
}
|
||||
|
||||
message Message3850 {
|
||||
optional .benchmarks.google_message4.Enum3851 field3924 = 2;
|
||||
optional bool field3925 = 12;
|
||||
optional int32 field3926 = 4;
|
||||
optional bool field3927 = 10;
|
||||
optional bool field3928 = 13;
|
||||
optional bool field3929 = 14;
|
||||
}
|
||||
|
||||
message Message7865 {}
|
||||
|
||||
message Message7511 {
|
||||
optional bool field7523 = 1;
|
||||
optional .benchmarks.google_message4.Enum7512 field7524 = 2;
|
||||
optional int32 field7525 = 3;
|
||||
optional int32 field7526 = 4;
|
||||
optional bool field7527 = 5;
|
||||
optional int32 field7528 = 6;
|
||||
optional int32 field7529 = 7;
|
||||
}
|
||||
|
||||
message Message3920 {}
|
||||
|
||||
message Message7928 {
|
||||
optional string field7940 = 1;
|
||||
optional int64 field7941 = 2;
|
||||
}
|
||||
|
||||
message Message7921 {
|
||||
optional int32 field7936 = 1;
|
||||
optional int64 field7937 = 2;
|
||||
optional float field7938 = 3;
|
||||
optional .benchmarks.google_message4.Enum7922 field7939 = 4;
|
||||
}
|
||||
|
||||
message Message7920 {
|
||||
optional int64 field7934 = 1;
|
||||
optional int64 field7935 = 2;
|
||||
}
|
||||
|
||||
message Message7919 {
|
||||
optional fixed64 field7931 = 1;
|
||||
optional int64 field7932 = 2;
|
||||
optional bytes field7933 = 3;
|
||||
}
|
||||
|
||||
message Message12817 {
|
||||
optional int32 field12826 = 1;
|
||||
optional int32 field12827 = 2;
|
||||
optional int32 field12828 = 3;
|
||||
}
|
||||
|
||||
message Message6054 {
|
||||
required string field6089 = 1;
|
||||
optional string field6090 = 2;
|
||||
}
|
||||
|
||||
message Message6127 {}
|
||||
|
||||
message Message6052 {
|
||||
required string field6084 = 1;
|
||||
required bytes field6085 = 2;
|
||||
}
|
||||
|
||||
message Message6024 {
|
||||
optional .benchmarks.google_message4.Enum6025 field6048 = 1;
|
||||
optional string field6049 = 2;
|
||||
optional .benchmarks.google_message4.UnusedEmptyMessage field6050 = 3;
|
||||
}
|
||||
|
||||
message Message5861 {
|
||||
required .benchmarks.google_message4.Enum5862 field5882 = 1;
|
||||
required string field5883 = 2;
|
||||
optional bool field5884 = 3;
|
||||
optional string field5885 = 4;
|
||||
}
|
||||
|
||||
message Message5880 {
|
||||
optional string field5896 = 1;
|
||||
}
|
||||
|
||||
message Message5867 {
|
||||
optional .benchmarks.google_message4.Enum5868 field5890 = 1;
|
||||
optional string field5891 = 2;
|
||||
optional .benchmarks.google_message4.Enum5873 field5892 = 3;
|
||||
optional int32 field5893 = 4;
|
||||
optional .benchmarks.google_message4.UnusedEnum field5894 = 5;
|
||||
optional bool field5895 = 6;
|
||||
}
|
||||
|
||||
message Message4016 {
|
||||
required int32 field4017 = 1;
|
||||
required int32 field4018 = 2;
|
||||
required int32 field4019 = 3;
|
||||
required int32 field4020 = 4;
|
||||
}
|
||||
|
||||
message Message6108 {}
|
||||
|
||||
message Message5907 {
|
||||
optional .benchmarks.google_message4.Message5903 field5967 = 1;
|
||||
optional .benchmarks.google_message4.Message5903 field5968 = 2;
|
||||
optional .benchmarks.google_message4.Message5903 field5969 = 3;
|
||||
optional .benchmarks.google_message4.Message5903 field5970 = 4;
|
||||
}
|
||||
|
||||
message UnusedEmptyMessage {}
|
||||
|
||||
message Message5903 {
|
||||
required int32 field5965 = 1;
|
||||
optional .benchmarks.google_message4.Enum5904 field5966 = 2;
|
||||
}
|
779
deps/protobuf/benchmarks/datasets/google_message4/benchmark_message4_3.proto
vendored
Normal file
779
deps/protobuf/benchmarks/datasets/google_message4/benchmark_message4_3.proto
vendored
Normal file
@ -0,0 +1,779 @@
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are
|
||||
// met:
|
||||
//
|
||||
// * Redistributions of source code must retain the above copyright
|
||||
// notice, this list of conditions and the following disclaimer.
|
||||
// * Redistributions in binary form must reproduce the above
|
||||
// copyright notice, this list of conditions and the following disclaimer
|
||||
// in the documentation and/or other materials provided with the
|
||||
// distribution.
|
||||
// * Neither the name of Google Inc. nor the names of its
|
||||
// contributors may be used to endorse or promote products derived from
|
||||
// this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
syntax = "proto2";
|
||||
|
||||
package benchmarks.google_message4;
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option java_package = "com.google.protobuf.benchmarks";
|
||||
|
||||
enum UnusedEnum {
|
||||
UNUSED_ENUM_VALUE1 = 0;
|
||||
UNUSED_ENUM_VALUE2 = 1;
|
||||
}
|
||||
|
||||
enum Enum2593 {
|
||||
ENUM_VALUE2594 = 0;
|
||||
ENUM_VALUE2595 = 1;
|
||||
ENUM_VALUE2596 = 2;
|
||||
ENUM_VALUE2597 = 3;
|
||||
ENUM_VALUE2598 = 4;
|
||||
ENUM_VALUE2599 = 5;
|
||||
ENUM_VALUE2600 = 6;
|
||||
ENUM_VALUE2601 = 7;
|
||||
}
|
||||
|
||||
enum Enum2834 {
|
||||
ENUM_VALUE2835 = 0;
|
||||
ENUM_VALUE2836 = 1;
|
||||
ENUM_VALUE2837 = 2;
|
||||
}
|
||||
|
||||
enum Enum2806 {
|
||||
ENUM_VALUE2807 = 0;
|
||||
ENUM_VALUE2808 = 1;
|
||||
ENUM_VALUE2809 = 2;
|
||||
ENUM_VALUE2810 = 3;
|
||||
ENUM_VALUE2811 = 4;
|
||||
ENUM_VALUE2812 = 5;
|
||||
ENUM_VALUE2813 = 6;
|
||||
ENUM_VALUE2814 = 7;
|
||||
ENUM_VALUE2815 = 8;
|
||||
ENUM_VALUE2816 = 9;
|
||||
ENUM_VALUE2817 = 10;
|
||||
ENUM_VALUE2818 = 11;
|
||||
ENUM_VALUE2819 = 12;
|
||||
ENUM_VALUE2820 = 13;
|
||||
ENUM_VALUE2821 = 14;
|
||||
}
|
||||
|
||||
enum Enum2851 {
|
||||
option allow_alias = true;
|
||||
|
||||
ENUM_VALUE2852 = 0;
|
||||
ENUM_VALUE2853 = 0;
|
||||
ENUM_VALUE2854 = 1;
|
||||
ENUM_VALUE2855 = 2;
|
||||
ENUM_VALUE2856 = 3;
|
||||
ENUM_VALUE2857 = 4;
|
||||
ENUM_VALUE2858 = 5;
|
||||
ENUM_VALUE2859 = 6;
|
||||
ENUM_VALUE2860 = 7;
|
||||
ENUM_VALUE2861 = 8;
|
||||
ENUM_VALUE2862 = 9;
|
||||
ENUM_VALUE2863 = 10;
|
||||
ENUM_VALUE2864 = 11;
|
||||
ENUM_VALUE2865 = 12;
|
||||
ENUM_VALUE2866 = 13;
|
||||
ENUM_VALUE2867 = 14;
|
||||
ENUM_VALUE2868 = 15;
|
||||
ENUM_VALUE2869 = 16;
|
||||
ENUM_VALUE2870 = 17;
|
||||
ENUM_VALUE2871 = 18;
|
||||
ENUM_VALUE2872 = 19;
|
||||
ENUM_VALUE2873 = 20;
|
||||
ENUM_VALUE2874 = 21;
|
||||
ENUM_VALUE2875 = 22;
|
||||
ENUM_VALUE2876 = 23;
|
||||
ENUM_VALUE2877 = 24;
|
||||
ENUM_VALUE2878 = 25;
|
||||
ENUM_VALUE2879 = 26;
|
||||
ENUM_VALUE2880 = 27;
|
||||
ENUM_VALUE2881 = 28;
|
||||
ENUM_VALUE2882 = 29;
|
||||
ENUM_VALUE2883 = 30;
|
||||
ENUM_VALUE2884 = 31;
|
||||
ENUM_VALUE2885 = 32;
|
||||
ENUM_VALUE2886 = 33;
|
||||
ENUM_VALUE2887 = 34;
|
||||
ENUM_VALUE2888 = 35;
|
||||
ENUM_VALUE2889 = 36;
|
||||
ENUM_VALUE2890 = 37;
|
||||
ENUM_VALUE2891 = 38;
|
||||
ENUM_VALUE2892 = 39;
|
||||
ENUM_VALUE2893 = 40;
|
||||
ENUM_VALUE2894 = 41;
|
||||
ENUM_VALUE2895 = 42;
|
||||
ENUM_VALUE2896 = 43;
|
||||
ENUM_VALUE2897 = 44;
|
||||
ENUM_VALUE2898 = 45;
|
||||
ENUM_VALUE2899 = 46;
|
||||
ENUM_VALUE2900 = 47;
|
||||
ENUM_VALUE2901 = 48;
|
||||
ENUM_VALUE2902 = 49;
|
||||
ENUM_VALUE2903 = 50;
|
||||
ENUM_VALUE2904 = 51;
|
||||
ENUM_VALUE2905 = 52;
|
||||
ENUM_VALUE2906 = 53;
|
||||
ENUM_VALUE2907 = 54;
|
||||
ENUM_VALUE2908 = 55;
|
||||
ENUM_VALUE2909 = 56;
|
||||
ENUM_VALUE2910 = 57;
|
||||
ENUM_VALUE2911 = 58;
|
||||
ENUM_VALUE2912 = 59;
|
||||
ENUM_VALUE2913 = 60;
|
||||
ENUM_VALUE2914 = 61;
|
||||
ENUM_VALUE2915 = 62;
|
||||
ENUM_VALUE2916 = 63;
|
||||
ENUM_VALUE2917 = 64;
|
||||
ENUM_VALUE2918 = 65;
|
||||
ENUM_VALUE2919 = 66;
|
||||
ENUM_VALUE2920 = 67;
|
||||
ENUM_VALUE2921 = 68;
|
||||
ENUM_VALUE2922 = 69;
|
||||
ENUM_VALUE2923 = 70;
|
||||
ENUM_VALUE2924 = 71;
|
||||
ENUM_VALUE2925 = 72;
|
||||
ENUM_VALUE2926 = 73;
|
||||
ENUM_VALUE2927 = 74;
|
||||
ENUM_VALUE2928 = 75;
|
||||
ENUM_VALUE2929 = 76;
|
||||
ENUM_VALUE2930 = 77;
|
||||
ENUM_VALUE2931 = 78;
|
||||
ENUM_VALUE2932 = 79;
|
||||
ENUM_VALUE2933 = 80;
|
||||
ENUM_VALUE2934 = 81;
|
||||
ENUM_VALUE2935 = 82;
|
||||
ENUM_VALUE2936 = 83;
|
||||
ENUM_VALUE2937 = 84;
|
||||
ENUM_VALUE2938 = 85;
|
||||
ENUM_VALUE2939 = 86;
|
||||
ENUM_VALUE2940 = 87;
|
||||
ENUM_VALUE2941 = 88;
|
||||
ENUM_VALUE2942 = 89;
|
||||
ENUM_VALUE2943 = 90;
|
||||
ENUM_VALUE2944 = 91;
|
||||
ENUM_VALUE2945 = 92;
|
||||
ENUM_VALUE2946 = 93;
|
||||
ENUM_VALUE2947 = 94;
|
||||
ENUM_VALUE2948 = 95;
|
||||
ENUM_VALUE2949 = 96;
|
||||
ENUM_VALUE2950 = 97;
|
||||
ENUM_VALUE2951 = 98;
|
||||
ENUM_VALUE2952 = 99;
|
||||
ENUM_VALUE2953 = 100;
|
||||
ENUM_VALUE2954 = 101;
|
||||
ENUM_VALUE2955 = 102;
|
||||
ENUM_VALUE2956 = 103;
|
||||
ENUM_VALUE2957 = 104;
|
||||
ENUM_VALUE2958 = 105;
|
||||
ENUM_VALUE2959 = 106;
|
||||
ENUM_VALUE2960 = 107;
|
||||
ENUM_VALUE2961 = 108;
|
||||
ENUM_VALUE2962 = 109;
|
||||
ENUM_VALUE2963 = 110;
|
||||
ENUM_VALUE2964 = 111;
|
||||
ENUM_VALUE2965 = 112;
|
||||
ENUM_VALUE2966 = 113;
|
||||
ENUM_VALUE2967 = 114;
|
||||
ENUM_VALUE2968 = 115;
|
||||
ENUM_VALUE2969 = 116;
|
||||
ENUM_VALUE2970 = 117;
|
||||
ENUM_VALUE2971 = 118;
|
||||
ENUM_VALUE2972 = 119;
|
||||
}
|
||||
|
||||
enum Enum2602 {
|
||||
ENUM_VALUE2603 = 0;
|
||||
ENUM_VALUE2604 = 1;
|
||||
ENUM_VALUE2605 = 2;
|
||||
ENUM_VALUE2606 = 3;
|
||||
ENUM_VALUE2607 = 4;
|
||||
ENUM_VALUE2608 = 5;
|
||||
ENUM_VALUE2609 = 6;
|
||||
ENUM_VALUE2610 = 7;
|
||||
ENUM_VALUE2611 = 8;
|
||||
ENUM_VALUE2612 = 9;
|
||||
ENUM_VALUE2613 = 10;
|
||||
ENUM_VALUE2614 = 11;
|
||||
}
|
||||
|
||||
enum Enum3071 {
|
||||
ENUM_VALUE3072 = 1;
|
||||
ENUM_VALUE3073 = 2;
|
||||
ENUM_VALUE3074 = 3;
|
||||
ENUM_VALUE3075 = 4;
|
||||
ENUM_VALUE3076 = 5;
|
||||
ENUM_VALUE3077 = 6;
|
||||
ENUM_VALUE3078 = 7;
|
||||
ENUM_VALUE3079 = 8;
|
||||
ENUM_VALUE3080 = 9;
|
||||
ENUM_VALUE3081 = 10;
|
||||
ENUM_VALUE3082 = 11;
|
||||
ENUM_VALUE3083 = 12;
|
||||
ENUM_VALUE3084 = 13;
|
||||
ENUM_VALUE3085 = 14;
|
||||
ENUM_VALUE3086 = 15;
|
||||
ENUM_VALUE3087 = 16;
|
||||
ENUM_VALUE3088 = 17;
|
||||
ENUM_VALUE3089 = 18;
|
||||
ENUM_VALUE3090 = 19;
|
||||
ENUM_VALUE3091 = 20;
|
||||
ENUM_VALUE3092 = 21;
|
||||
ENUM_VALUE3093 = 22;
|
||||
ENUM_VALUE3094 = 23;
|
||||
ENUM_VALUE3095 = 24;
|
||||
ENUM_VALUE3096 = 25;
|
||||
ENUM_VALUE3097 = 26;
|
||||
ENUM_VALUE3098 = 27;
|
||||
ENUM_VALUE3099 = 28;
|
||||
}
|
||||
|
||||
enum Enum3805 {
|
||||
ENUM_VALUE3806 = 0;
|
||||
ENUM_VALUE3807 = 1;
|
||||
ENUM_VALUE3808 = 2;
|
||||
ENUM_VALUE3809 = 3;
|
||||
ENUM_VALUE3810 = 4;
|
||||
ENUM_VALUE3811 = 5;
|
||||
ENUM_VALUE3812 = 6;
|
||||
ENUM_VALUE3813 = 7;
|
||||
ENUM_VALUE3814 = 8;
|
||||
ENUM_VALUE3815 = 9;
|
||||
ENUM_VALUE3816 = 11;
|
||||
ENUM_VALUE3817 = 10;
|
||||
}
|
||||
|
||||
enum Enum3783 {
|
||||
ENUM_VALUE3784 = 0;
|
||||
ENUM_VALUE3785 = 1;
|
||||
ENUM_VALUE3786 = 2;
|
||||
ENUM_VALUE3787 = 3;
|
||||
ENUM_VALUE3788 = 4;
|
||||
ENUM_VALUE3789 = 5;
|
||||
ENUM_VALUE3790 = 6;
|
||||
ENUM_VALUE3791 = 7;
|
||||
ENUM_VALUE3792 = 8;
|
||||
ENUM_VALUE3793 = 9;
|
||||
ENUM_VALUE3794 = 10;
|
||||
ENUM_VALUE3795 = 11;
|
||||
ENUM_VALUE3796 = 12;
|
||||
ENUM_VALUE3797 = 13;
|
||||
ENUM_VALUE3798 = 14;
|
||||
ENUM_VALUE3799 = 15;
|
||||
ENUM_VALUE3800 = 16;
|
||||
ENUM_VALUE3801 = 20;
|
||||
ENUM_VALUE3802 = 21;
|
||||
ENUM_VALUE3803 = 50;
|
||||
}
|
||||
|
||||
enum Enum3851 {
|
||||
ENUM_VALUE3852 = 0;
|
||||
ENUM_VALUE3853 = 1;
|
||||
ENUM_VALUE3854 = 2;
|
||||
ENUM_VALUE3855 = 3;
|
||||
ENUM_VALUE3856 = 4;
|
||||
ENUM_VALUE3857 = 5;
|
||||
ENUM_VALUE3858 = 6;
|
||||
ENUM_VALUE3859 = 7;
|
||||
ENUM_VALUE3860 = 8;
|
||||
ENUM_VALUE3861 = 9;
|
||||
ENUM_VALUE3862 = 10;
|
||||
ENUM_VALUE3863 = 11;
|
||||
ENUM_VALUE3864 = 12;
|
||||
ENUM_VALUE3865 = 13;
|
||||
ENUM_VALUE3866 = 14;
|
||||
ENUM_VALUE3867 = 15;
|
||||
ENUM_VALUE3868 = 16;
|
||||
ENUM_VALUE3869 = 17;
|
||||
}
|
||||
|
||||
enum Enum5862 {
|
||||
ENUM_VALUE5863 = 1;
|
||||
ENUM_VALUE5864 = 2;
|
||||
ENUM_VALUE5865 = 3;
|
||||
}
|
||||
|
||||
enum Enum5868 {
|
||||
ENUM_VALUE5869 = 0;
|
||||
ENUM_VALUE5870 = 1;
|
||||
ENUM_VALUE5871 = 2;
|
||||
ENUM_VALUE5872 = 3;
|
||||
}
|
||||
|
||||
enum Enum5873 {
|
||||
ENUM_VALUE5874 = 0;
|
||||
ENUM_VALUE5875 = 1;
|
||||
ENUM_VALUE5876 = 2;
|
||||
}
|
||||
|
||||
enum Enum5904 {
|
||||
ENUM_VALUE5905 = 0;
|
||||
ENUM_VALUE5906 = 1;
|
||||
}
|
||||
|
||||
enum Enum5909 {
|
||||
ENUM_VALUE5910 = 0;
|
||||
ENUM_VALUE5911 = 1;
|
||||
}
|
||||
|
||||
enum Enum5912 {
|
||||
ENUM_VALUE5913 = 0;
|
||||
ENUM_VALUE5914 = 1;
|
||||
}
|
||||
|
||||
enum Enum5915 {
|
||||
ENUM_VALUE5916 = 0;
|
||||
ENUM_VALUE5917 = 1;
|
||||
ENUM_VALUE5918 = 2;
|
||||
ENUM_VALUE5919 = 3;
|
||||
}
|
||||
|
||||
enum Enum5920 {
|
||||
ENUM_VALUE5921 = 0;
|
||||
ENUM_VALUE5922 = 1;
|
||||
}
|
||||
|
||||
enum Enum5923 {
|
||||
ENUM_VALUE5924 = 0;
|
||||
ENUM_VALUE5925 = 1;
|
||||
ENUM_VALUE5926 = 2;
|
||||
ENUM_VALUE5927 = 3;
|
||||
}
|
||||
|
||||
enum Enum5928 {
|
||||
ENUM_VALUE5929 = 0;
|
||||
ENUM_VALUE5930 = 1;
|
||||
}
|
||||
|
||||
enum Enum5931 {
|
||||
ENUM_VALUE5932 = 0;
|
||||
ENUM_VALUE5933 = 1;
|
||||
ENUM_VALUE5934 = 2;
|
||||
}
|
||||
|
||||
enum Enum5935 {
|
||||
ENUM_VALUE5936 = 0;
|
||||
ENUM_VALUE5937 = 1;
|
||||
ENUM_VALUE5938 = 2;
|
||||
}
|
||||
|
||||
enum Enum5939 {
|
||||
ENUM_VALUE5940 = 0;
|
||||
ENUM_VALUE5941 = 1;
|
||||
ENUM_VALUE5942 = 2;
|
||||
ENUM_VALUE5943 = 3;
|
||||
ENUM_VALUE5944 = 4;
|
||||
ENUM_VALUE5945 = 5;
|
||||
}
|
||||
|
||||
enum Enum5946 {
|
||||
ENUM_VALUE5947 = 0;
|
||||
ENUM_VALUE5948 = 1;
|
||||
ENUM_VALUE5949 = 2;
|
||||
ENUM_VALUE5950 = 3;
|
||||
ENUM_VALUE5951 = 4;
|
||||
ENUM_VALUE5952 = 5;
|
||||
ENUM_VALUE5953 = 6;
|
||||
ENUM_VALUE5954 = 7;
|
||||
ENUM_VALUE5955 = 8;
|
||||
ENUM_VALUE5956 = 9;
|
||||
}
|
||||
|
||||
enum Enum5957 {
|
||||
ENUM_VALUE5958 = 0;
|
||||
ENUM_VALUE5959 = 1;
|
||||
ENUM_VALUE5960 = 2;
|
||||
ENUM_VALUE5961 = 3;
|
||||
}
|
||||
|
||||
enum Enum5962 {
|
||||
ENUM_VALUE5963 = 0;
|
||||
ENUM_VALUE5964 = 1;
|
||||
}
|
||||
|
||||
enum Enum6025 {
|
||||
ENUM_VALUE6026 = 0;
|
||||
ENUM_VALUE6027 = 1;
|
||||
ENUM_VALUE6028 = 2;
|
||||
ENUM_VALUE6029 = 3;
|
||||
ENUM_VALUE6030 = 4;
|
||||
ENUM_VALUE6031 = 5;
|
||||
ENUM_VALUE6032 = 6;
|
||||
ENUM_VALUE6033 = 7;
|
||||
ENUM_VALUE6034 = 8;
|
||||
ENUM_VALUE6035 = 9;
|
||||
ENUM_VALUE6036 = 10;
|
||||
ENUM_VALUE6037 = 11;
|
||||
ENUM_VALUE6038 = 12;
|
||||
ENUM_VALUE6039 = 13;
|
||||
ENUM_VALUE6040 = 14;
|
||||
ENUM_VALUE6041 = 15;
|
||||
ENUM_VALUE6042 = 16;
|
||||
ENUM_VALUE6043 = 17;
|
||||
ENUM_VALUE6044 = 18;
|
||||
ENUM_VALUE6045 = 19;
|
||||
ENUM_VALUE6046 = 20;
|
||||
ENUM_VALUE6047 = 21;
|
||||
}
|
||||
|
||||
enum Enum6111 {
|
||||
ENUM_VALUE6112 = 1;
|
||||
ENUM_VALUE6113 = 2;
|
||||
ENUM_VALUE6114 = 3;
|
||||
ENUM_VALUE6115 = 4;
|
||||
ENUM_VALUE6116 = 5;
|
||||
ENUM_VALUE6117 = 6;
|
||||
ENUM_VALUE6118 = 7;
|
||||
ENUM_VALUE6119 = 8;
|
||||
ENUM_VALUE6120 = 9;
|
||||
ENUM_VALUE6121 = 10;
|
||||
ENUM_VALUE6122 = 11;
|
||||
ENUM_VALUE6123 = 12;
|
||||
ENUM_VALUE6124 = 13;
|
||||
ENUM_VALUE6125 = 14;
|
||||
}
|
||||
|
||||
enum Enum6065 {
|
||||
ENUM_VALUE6066 = 0;
|
||||
ENUM_VALUE6067 = 1;
|
||||
ENUM_VALUE6068 = 2;
|
||||
ENUM_VALUE6069 = 3;
|
||||
ENUM_VALUE6070 = 4;
|
||||
ENUM_VALUE6071 = 5;
|
||||
ENUM_VALUE6072 = 6;
|
||||
ENUM_VALUE6073 = 7;
|
||||
ENUM_VALUE6074 = 8;
|
||||
ENUM_VALUE6075 = 9;
|
||||
ENUM_VALUE6076 = 10;
|
||||
ENUM_VALUE6077 = 11;
|
||||
ENUM_VALUE6078 = 12;
|
||||
ENUM_VALUE6079 = 13;
|
||||
ENUM_VALUE6080 = 14;
|
||||
}
|
||||
|
||||
enum Enum6130 {
|
||||
ENUM_VALUE6131 = 0;
|
||||
ENUM_VALUE6132 = 1;
|
||||
}
|
||||
|
||||
enum Enum6579 {
|
||||
ENUM_VALUE6580 = 0;
|
||||
ENUM_VALUE6581 = 2;
|
||||
ENUM_VALUE6582 = 3;
|
||||
ENUM_VALUE6583 = 5;
|
||||
ENUM_VALUE6584 = 10;
|
||||
ENUM_VALUE6585 = 15;
|
||||
ENUM_VALUE6586 = 25;
|
||||
ENUM_VALUE6587 = 30;
|
||||
}
|
||||
|
||||
enum Enum6588 {
|
||||
ENUM_VALUE6589 = 0;
|
||||
ENUM_VALUE6590 = 1;
|
||||
ENUM_VALUE6591 = 2;
|
||||
ENUM_VALUE6592 = 3;
|
||||
ENUM_VALUE6593 = 4;
|
||||
ENUM_VALUE6594 = 5;
|
||||
ENUM_VALUE6595 = 6;
|
||||
ENUM_VALUE6596 = 7;
|
||||
ENUM_VALUE6597 = 8;
|
||||
ENUM_VALUE6598 = 9;
|
||||
ENUM_VALUE6599 = 10;
|
||||
ENUM_VALUE6600 = 11;
|
||||
ENUM_VALUE6601 = 12;
|
||||
ENUM_VALUE6602 = 13;
|
||||
ENUM_VALUE6603 = 14;
|
||||
ENUM_VALUE6604 = 15;
|
||||
ENUM_VALUE6605 = 16;
|
||||
ENUM_VALUE6606 = 17;
|
||||
ENUM_VALUE6607 = 19;
|
||||
ENUM_VALUE6608 = 20;
|
||||
ENUM_VALUE6609 = 21;
|
||||
ENUM_VALUE6610 = 22;
|
||||
ENUM_VALUE6611 = 23;
|
||||
ENUM_VALUE6612 = 24;
|
||||
ENUM_VALUE6613 = 25;
|
||||
ENUM_VALUE6614 = 26;
|
||||
ENUM_VALUE6615 = 27;
|
||||
ENUM_VALUE6616 = 28;
|
||||
ENUM_VALUE6617 = 29;
|
||||
ENUM_VALUE6618 = 30;
|
||||
ENUM_VALUE6619 = 31;
|
||||
ENUM_VALUE6620 = 32;
|
||||
ENUM_VALUE6621 = 33;
|
||||
ENUM_VALUE6622 = 34;
|
||||
}
|
||||
|
||||
enum Enum7288 {
|
||||
ENUM_VALUE7289 = 0;
|
||||
ENUM_VALUE7290 = 1;
|
||||
ENUM_VALUE7291 = 2;
|
||||
ENUM_VALUE7292 = 3;
|
||||
}
|
||||
|
||||
enum Enum7512 {
|
||||
ENUM_VALUE7513 = 0;
|
||||
ENUM_VALUE7514 = 1;
|
||||
ENUM_VALUE7515 = 2;
|
||||
ENUM_VALUE7516 = 3;
|
||||
ENUM_VALUE7517 = 4;
|
||||
ENUM_VALUE7518 = 5;
|
||||
ENUM_VALUE7519 = 6;
|
||||
ENUM_VALUE7520 = 7;
|
||||
}
|
||||
|
||||
enum Enum7922 {
|
||||
ENUM_VALUE7923 = 1;
|
||||
ENUM_VALUE7924 = 2;
|
||||
ENUM_VALUE7925 = 3;
|
||||
ENUM_VALUE7926 = 4;
|
||||
ENUM_VALUE7927 = 5;
|
||||
}
|
||||
|
||||
enum Enum3476 {
|
||||
ENUM_VALUE3477 = 0;
|
||||
ENUM_VALUE3478 = 1;
|
||||
ENUM_VALUE3479 = 2;
|
||||
ENUM_VALUE3480 = 3;
|
||||
ENUM_VALUE3481 = 4;
|
||||
ENUM_VALUE3482 = 5;
|
||||
ENUM_VALUE3483 = 6;
|
||||
ENUM_VALUE3484 = 7;
|
||||
ENUM_VALUE3485 = 8;
|
||||
ENUM_VALUE3486 = 9;
|
||||
ENUM_VALUE3487 = 10;
|
||||
ENUM_VALUE3488 = 11;
|
||||
ENUM_VALUE3489 = 12;
|
||||
ENUM_VALUE3490 = 13;
|
||||
ENUM_VALUE3491 = 14;
|
||||
ENUM_VALUE3492 = 15;
|
||||
ENUM_VALUE3493 = 16;
|
||||
ENUM_VALUE3494 = 17;
|
||||
ENUM_VALUE3495 = 18;
|
||||
ENUM_VALUE3496 = 19;
|
||||
ENUM_VALUE3497 = 20;
|
||||
ENUM_VALUE3498 = 21;
|
||||
ENUM_VALUE3499 = 22;
|
||||
ENUM_VALUE3500 = 23;
|
||||
ENUM_VALUE3501 = 24;
|
||||
ENUM_VALUE3502 = 25;
|
||||
ENUM_VALUE3503 = 26;
|
||||
ENUM_VALUE3504 = 27;
|
||||
ENUM_VALUE3505 = 28;
|
||||
ENUM_VALUE3506 = 29;
|
||||
ENUM_VALUE3507 = 30;
|
||||
ENUM_VALUE3508 = 31;
|
||||
ENUM_VALUE3509 = 32;
|
||||
ENUM_VALUE3510 = 33;
|
||||
ENUM_VALUE3511 = 34;
|
||||
ENUM_VALUE3512 = 35;
|
||||
ENUM_VALUE3513 = 36;
|
||||
ENUM_VALUE3514 = 37;
|
||||
ENUM_VALUE3515 = 38;
|
||||
ENUM_VALUE3516 = 39;
|
||||
ENUM_VALUE3517 = 40;
|
||||
ENUM_VALUE3518 = 41;
|
||||
ENUM_VALUE3519 = 42;
|
||||
ENUM_VALUE3520 = 43;
|
||||
ENUM_VALUE3521 = 44;
|
||||
ENUM_VALUE3522 = 45;
|
||||
ENUM_VALUE3523 = 46;
|
||||
ENUM_VALUE3524 = 47;
|
||||
ENUM_VALUE3525 = 48;
|
||||
ENUM_VALUE3526 = 49;
|
||||
ENUM_VALUE3527 = 50;
|
||||
ENUM_VALUE3528 = 51;
|
||||
ENUM_VALUE3529 = 52;
|
||||
ENUM_VALUE3530 = 53;
|
||||
ENUM_VALUE3531 = 54;
|
||||
ENUM_VALUE3532 = 55;
|
||||
ENUM_VALUE3533 = 56;
|
||||
ENUM_VALUE3534 = 57;
|
||||
ENUM_VALUE3535 = 58;
|
||||
ENUM_VALUE3536 = 59;
|
||||
ENUM_VALUE3537 = 60;
|
||||
ENUM_VALUE3538 = 61;
|
||||
ENUM_VALUE3539 = 62;
|
||||
ENUM_VALUE3540 = 63;
|
||||
ENUM_VALUE3541 = 64;
|
||||
ENUM_VALUE3542 = 65;
|
||||
ENUM_VALUE3543 = 66;
|
||||
ENUM_VALUE3544 = 67;
|
||||
ENUM_VALUE3545 = 68;
|
||||
ENUM_VALUE3546 = 69;
|
||||
ENUM_VALUE3547 = 70;
|
||||
ENUM_VALUE3548 = 71;
|
||||
ENUM_VALUE3549 = 72;
|
||||
ENUM_VALUE3550 = 73;
|
||||
ENUM_VALUE3551 = 74;
|
||||
ENUM_VALUE3552 = 75;
|
||||
ENUM_VALUE3553 = 76;
|
||||
ENUM_VALUE3554 = 77;
|
||||
ENUM_VALUE3555 = 78;
|
||||
ENUM_VALUE3556 = 79;
|
||||
ENUM_VALUE3557 = 80;
|
||||
ENUM_VALUE3558 = 81;
|
||||
ENUM_VALUE3559 = 82;
|
||||
ENUM_VALUE3560 = 83;
|
||||
ENUM_VALUE3561 = 84;
|
||||
ENUM_VALUE3562 = 85;
|
||||
ENUM_VALUE3563 = 86;
|
||||
ENUM_VALUE3564 = 87;
|
||||
ENUM_VALUE3565 = 88;
|
||||
ENUM_VALUE3566 = 89;
|
||||
ENUM_VALUE3567 = 90;
|
||||
ENUM_VALUE3568 = 91;
|
||||
ENUM_VALUE3569 = 92;
|
||||
ENUM_VALUE3570 = 93;
|
||||
ENUM_VALUE3571 = 94;
|
||||
ENUM_VALUE3572 = 95;
|
||||
ENUM_VALUE3573 = 96;
|
||||
ENUM_VALUE3574 = 97;
|
||||
ENUM_VALUE3575 = 98;
|
||||
ENUM_VALUE3576 = 99;
|
||||
ENUM_VALUE3577 = 100;
|
||||
ENUM_VALUE3578 = 101;
|
||||
ENUM_VALUE3579 = 102;
|
||||
ENUM_VALUE3580 = 103;
|
||||
ENUM_VALUE3581 = 104;
|
||||
ENUM_VALUE3582 = 105;
|
||||
ENUM_VALUE3583 = 106;
|
||||
ENUM_VALUE3584 = 107;
|
||||
ENUM_VALUE3585 = 108;
|
||||
ENUM_VALUE3586 = 109;
|
||||
ENUM_VALUE3587 = 110;
|
||||
ENUM_VALUE3588 = 111;
|
||||
ENUM_VALUE3589 = 112;
|
||||
ENUM_VALUE3590 = 113;
|
||||
ENUM_VALUE3591 = 114;
|
||||
ENUM_VALUE3592 = 115;
|
||||
ENUM_VALUE3593 = 116;
|
||||
ENUM_VALUE3594 = 117;
|
||||
ENUM_VALUE3595 = 118;
|
||||
ENUM_VALUE3596 = 119;
|
||||
ENUM_VALUE3597 = 120;
|
||||
ENUM_VALUE3598 = 121;
|
||||
ENUM_VALUE3599 = 122;
|
||||
ENUM_VALUE3600 = 123;
|
||||
ENUM_VALUE3601 = 124;
|
||||
ENUM_VALUE3602 = 125;
|
||||
ENUM_VALUE3603 = 126;
|
||||
ENUM_VALUE3604 = 127;
|
||||
ENUM_VALUE3605 = 128;
|
||||
ENUM_VALUE3606 = 129;
|
||||
ENUM_VALUE3607 = 130;
|
||||
ENUM_VALUE3608 = 131;
|
||||
ENUM_VALUE3609 = 132;
|
||||
ENUM_VALUE3610 = 133;
|
||||
ENUM_VALUE3611 = 134;
|
||||
ENUM_VALUE3612 = 135;
|
||||
ENUM_VALUE3613 = 136;
|
||||
ENUM_VALUE3614 = 137;
|
||||
ENUM_VALUE3615 = 138;
|
||||
ENUM_VALUE3616 = 139;
|
||||
ENUM_VALUE3617 = 140;
|
||||
ENUM_VALUE3618 = 141;
|
||||
ENUM_VALUE3619 = 142;
|
||||
ENUM_VALUE3620 = 143;
|
||||
ENUM_VALUE3621 = 144;
|
||||
ENUM_VALUE3622 = 145;
|
||||
ENUM_VALUE3623 = 146;
|
||||
ENUM_VALUE3624 = 147;
|
||||
ENUM_VALUE3625 = 148;
|
||||
ENUM_VALUE3626 = 149;
|
||||
ENUM_VALUE3627 = 150;
|
||||
ENUM_VALUE3628 = 151;
|
||||
ENUM_VALUE3629 = 152;
|
||||
ENUM_VALUE3630 = 153;
|
||||
ENUM_VALUE3631 = 154;
|
||||
ENUM_VALUE3632 = 155;
|
||||
ENUM_VALUE3633 = 156;
|
||||
ENUM_VALUE3634 = 157;
|
||||
ENUM_VALUE3635 = 158;
|
||||
ENUM_VALUE3636 = 159;
|
||||
ENUM_VALUE3637 = 160;
|
||||
ENUM_VALUE3638 = 161;
|
||||
ENUM_VALUE3639 = 162;
|
||||
ENUM_VALUE3640 = 163;
|
||||
ENUM_VALUE3641 = 164;
|
||||
ENUM_VALUE3642 = 165;
|
||||
ENUM_VALUE3643 = 166;
|
||||
ENUM_VALUE3644 = 167;
|
||||
ENUM_VALUE3645 = 168;
|
||||
ENUM_VALUE3646 = 169;
|
||||
ENUM_VALUE3647 = 170;
|
||||
ENUM_VALUE3648 = 171;
|
||||
ENUM_VALUE3649 = 172;
|
||||
ENUM_VALUE3650 = 173;
|
||||
ENUM_VALUE3651 = 174;
|
||||
ENUM_VALUE3652 = 175;
|
||||
ENUM_VALUE3653 = 176;
|
||||
ENUM_VALUE3654 = 177;
|
||||
ENUM_VALUE3655 = 178;
|
||||
ENUM_VALUE3656 = 179;
|
||||
ENUM_VALUE3657 = 180;
|
||||
ENUM_VALUE3658 = 181;
|
||||
ENUM_VALUE3659 = 182;
|
||||
ENUM_VALUE3660 = 183;
|
||||
}
|
||||
|
||||
enum Enum10325 {
|
||||
ENUM_VALUE10326 = 0;
|
||||
ENUM_VALUE10327 = 1;
|
||||
ENUM_VALUE10328 = 2;
|
||||
ENUM_VALUE10329 = 3;
|
||||
ENUM_VALUE10330 = 4;
|
||||
ENUM_VALUE10331 = 5;
|
||||
ENUM_VALUE10332 = 6;
|
||||
ENUM_VALUE10333 = 7;
|
||||
ENUM_VALUE10334 = 8;
|
||||
}
|
||||
|
||||
enum Enum10335 { ENUM_VALUE10336 = 0; }
|
||||
|
||||
enum Enum10337 {
|
||||
ENUM_VALUE10338 = 0;
|
||||
ENUM_VALUE10339 = 1;
|
||||
}
|
||||
|
||||
enum Enum11901 {
|
||||
ENUM_VALUE11902 = 0;
|
||||
ENUM_VALUE11903 = 1;
|
||||
ENUM_VALUE11904 = 2;
|
||||
ENUM_VALUE11905 = 3;
|
||||
}
|
||||
|
||||
enum Enum12735 {
|
||||
ENUM_VALUE12736 = 0;
|
||||
ENUM_VALUE12737 = 1;
|
||||
ENUM_VALUE12738 = 2;
|
||||
ENUM_VALUE12739 = 3;
|
||||
}
|
||||
|
||||
enum Enum12871 {
|
||||
ENUM_VALUE12872 = 1;
|
||||
ENUM_VALUE12873 = 2;
|
||||
ENUM_VALUE12874 = 3;
|
||||
ENUM_VALUE12875 = 4;
|
||||
ENUM_VALUE12876 = 5;
|
||||
ENUM_VALUE12877 = 6;
|
||||
}
|
124
deps/protobuf/benchmarks/go/go_benchmark_test.go
vendored
Normal file
124
deps/protobuf/benchmarks/go/go_benchmark_test.go
vendored
Normal file
@ -0,0 +1,124 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
benchmarkWrapper "../tmp"
|
||||
googleMessage1Proto2 "../tmp/datasets/google_message1/proto2"
|
||||
googleMessage1Proto3 "../tmp/datasets/google_message1/proto3"
|
||||
googleMessage2 "../tmp/datasets/google_message2"
|
||||
googleMessage3 "../tmp/datasets/google_message3"
|
||||
googleMessage4 "../tmp/datasets/google_message4"
|
||||
"flag"
|
||||
"github.com/golang/protobuf/proto"
|
||||
"io/ioutil"
|
||||
"testing"
|
||||
)
|
||||
|
||||
// Data is returned by the Load function.
|
||||
type Dataset struct {
|
||||
name string
|
||||
newMessage func() proto.Message
|
||||
marshaled [][]byte
|
||||
unmarshaled []proto.Message
|
||||
}
|
||||
|
||||
var datasets []Dataset
|
||||
|
||||
// This is used to getDefaultInstance for a message type.
|
||||
func generateNewMessageFunction(dataset benchmarkWrapper.BenchmarkDataset) func() proto.Message {
|
||||
switch dataset.MessageName {
|
||||
case "benchmarks.proto3.GoogleMessage1":
|
||||
return func() proto.Message { return new(googleMessage1Proto3.GoogleMessage1) }
|
||||
case "benchmarks.proto2.GoogleMessage1":
|
||||
return func() proto.Message { return new(googleMessage1Proto2.GoogleMessage1) }
|
||||
case "benchmarks.proto2.GoogleMessage2":
|
||||
return func() proto.Message { return new(googleMessage2.GoogleMessage2) }
|
||||
case "benchmarks.google_message3.GoogleMessage3":
|
||||
return func() proto.Message { return new(googleMessage3.GoogleMessage3) }
|
||||
case "benchmarks.google_message4.GoogleMessage4":
|
||||
return func() proto.Message { return new(googleMessage4.GoogleMessage4) }
|
||||
default:
|
||||
panic("Unknown message type: " + dataset.MessageName)
|
||||
}
|
||||
}
|
||||
|
||||
func init() {
|
||||
flag.Parse()
|
||||
for _, f := range flag.Args() {
|
||||
// Load the benchmark.
|
||||
b, err := ioutil.ReadFile(f)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
// Parse the benchmark.
|
||||
var dm benchmarkWrapper.BenchmarkDataset
|
||||
if err := proto.Unmarshal(b, &dm); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
// Determine the concrete protobuf message type to use.
|
||||
var ds Dataset
|
||||
ds.newMessage = generateNewMessageFunction(dm)
|
||||
|
||||
// Unmarshal each test message.
|
||||
for _, payload := range dm.Payload {
|
||||
ds.marshaled = append(ds.marshaled, payload)
|
||||
m := ds.newMessage()
|
||||
if err := proto.Unmarshal(payload, m); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
ds.unmarshaled = append(ds.unmarshaled, m)
|
||||
}
|
||||
ds.name = f
|
||||
|
||||
datasets = append(datasets, ds)
|
||||
}
|
||||
}
|
||||
|
||||
func Benchmark(b *testing.B) {
|
||||
for _, ds := range datasets {
|
||||
b.Run(ds.name, func(b *testing.B) {
|
||||
b.Run("Unmarshal", func(b *testing.B) {
|
||||
for i := 0; i < b.N; i++ {
|
||||
for j, payload := range ds.marshaled {
|
||||
out := ds.newMessage()
|
||||
if err := proto.Unmarshal(payload, out); err != nil {
|
||||
b.Fatalf("can't unmarshal message %d %v", j, err)
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
b.Run("Marshal", func(b *testing.B) {
|
||||
for i := 0; i < b.N; i++ {
|
||||
for j, m := range ds.unmarshaled {
|
||||
if _, err := proto.Marshal(m); err != nil {
|
||||
b.Fatalf("can't marshal message %d %+v: %v", j, m, err)
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
b.Run("Size", func(b *testing.B) {
|
||||
for i := 0; i < b.N; i++ {
|
||||
for _, m := range ds.unmarshaled {
|
||||
proto.Size(m)
|
||||
}
|
||||
}
|
||||
})
|
||||
b.Run("Clone", func(b *testing.B) {
|
||||
for i := 0; i < b.N; i++ {
|
||||
for _, m := range ds.unmarshaled {
|
||||
proto.Clone(m)
|
||||
}
|
||||
}
|
||||
})
|
||||
b.Run("Merge", func(b *testing.B) {
|
||||
for i := 0; i < b.N; i++ {
|
||||
for _, m := range ds.unmarshaled {
|
||||
out := ds.newMessage()
|
||||
proto.Merge(out, m)
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
138
deps/protobuf/benchmarks/google_size.proto
vendored
Normal file
138
deps/protobuf/benchmarks/google_size.proto
vendored
Normal file
@ -0,0 +1,138 @@
|
||||
syntax = "proto2";
|
||||
|
||||
package benchmarks;
|
||||
|
||||
option java_outer_classname = "GoogleSize";
|
||||
option optimize_for = CODE_SIZE;
|
||||
|
||||
message SizeMessage1 {
|
||||
required string field1 = 1;
|
||||
optional string field9 = 9;
|
||||
optional string field18 = 18;
|
||||
optional bool field80 = 80 [default=false];
|
||||
optional bool field81 = 81 [default=true];
|
||||
required int32 field2 = 2;
|
||||
required int32 field3 = 3;
|
||||
optional int32 field280 = 280;
|
||||
optional int32 field6 = 6 [default=0];
|
||||
optional int64 field22 = 22;
|
||||
optional string field4 = 4;
|
||||
repeated fixed64 field5 = 5;
|
||||
optional bool field59 = 59 [default=false];
|
||||
optional string field7 = 7;
|
||||
optional int32 field16 = 16;
|
||||
optional int32 field130 = 130 [default=0];
|
||||
optional bool field12 = 12 [default=true];
|
||||
optional bool field17 = 17 [default=true];
|
||||
optional bool field13 = 13 [default=true];
|
||||
optional bool field14 = 14 [default=true];
|
||||
optional int32 field104 = 104 [default=0];
|
||||
optional int32 field100 = 100 [default=0];
|
||||
optional int32 field101 = 101 [default=0];
|
||||
optional string field102 = 102;
|
||||
optional string field103 = 103;
|
||||
optional int32 field29 = 29 [default=0];
|
||||
optional bool field30 = 30 [default=false];
|
||||
optional int32 field60 = 60 [default=-1];
|
||||
optional int32 field271 = 271 [default=-1];
|
||||
optional int32 field272 = 272 [default=-1];
|
||||
optional int32 field150 = 150;
|
||||
optional int32 field23 = 23 [default=0];
|
||||
optional bool field24 = 24 [default=false];
|
||||
optional int32 field25 = 25 [default=0];
|
||||
optional SizeMessage1SubMessage field15 = 15;
|
||||
optional bool field78 = 78;
|
||||
optional int32 field67 = 67 [default=0];
|
||||
optional int32 field68 = 68;
|
||||
optional int32 field128 = 128 [default=0];
|
||||
optional string field129 = 129 [default="xxxxxxxxxxxxxxxxxxxxx"];
|
||||
optional int32 field131 = 131 [default=0];
|
||||
}
|
||||
|
||||
message SizeMessage1SubMessage {
|
||||
optional int32 field1 = 1 [default=0];
|
||||
optional int32 field2 = 2 [default=0];
|
||||
optional int32 field3 = 3 [default=0];
|
||||
optional string field15 = 15;
|
||||
optional bool field12 = 12 [default=true];
|
||||
optional int64 field13 = 13;
|
||||
optional int64 field14 = 14;
|
||||
optional int32 field16 = 16;
|
||||
optional int32 field19 = 19 [default=2];
|
||||
optional bool field20 = 20 [default=true];
|
||||
optional bool field28 = 28 [default=true];
|
||||
optional fixed64 field21 = 21;
|
||||
optional int32 field22 = 22;
|
||||
optional bool field23 = 23 [ default=false ];
|
||||
optional bool field206 = 206 [default=false];
|
||||
optional fixed32 field203 = 203;
|
||||
optional int32 field204 = 204;
|
||||
optional string field205 = 205;
|
||||
optional uint64 field207 = 207;
|
||||
optional uint64 field300 = 300;
|
||||
}
|
||||
|
||||
message SizeMessage2 {
|
||||
optional string field1 = 1;
|
||||
optional int64 field3 = 3;
|
||||
optional int64 field4 = 4;
|
||||
optional int64 field30 = 30;
|
||||
optional bool field75 = 75 [default=false];
|
||||
optional string field6 = 6;
|
||||
optional bytes field2 = 2;
|
||||
optional int32 field21 = 21 [default=0];
|
||||
optional int32 field71 = 71;
|
||||
optional float field25 = 25;
|
||||
optional int32 field109 = 109 [default=0];
|
||||
optional int32 field210 = 210 [default=0];
|
||||
optional int32 field211 = 211 [default=0];
|
||||
optional int32 field212 = 212 [default=0];
|
||||
optional int32 field213 = 213 [default=0];
|
||||
optional int32 field216 = 216 [default=0];
|
||||
optional int32 field217 = 217 [default=0];
|
||||
optional int32 field218 = 218 [default=0];
|
||||
optional int32 field220 = 220 [default=0];
|
||||
optional int32 field221 = 221 [default=0];
|
||||
optional float field222 = 222 [default=0.0];
|
||||
optional int32 field63 = 63;
|
||||
|
||||
repeated group Group1 = 10 {
|
||||
required float field11 = 11;
|
||||
optional float field26 = 26;
|
||||
optional string field12 = 12;
|
||||
optional string field13 = 13;
|
||||
repeated string field14 = 14;
|
||||
required uint64 field15 = 15;
|
||||
optional int32 field5 = 5;
|
||||
optional string field27 = 27;
|
||||
optional int32 field28 = 28;
|
||||
optional string field29 = 29;
|
||||
optional string field16 = 16;
|
||||
repeated string field22 = 22;
|
||||
repeated int32 field73 = 73;
|
||||
optional int32 field20 = 20 [default=0];
|
||||
optional string field24 = 24;
|
||||
optional SizeMessage2GroupedMessage field31 = 31;
|
||||
}
|
||||
repeated string field128 = 128;
|
||||
optional int64 field131 = 131;
|
||||
repeated string field127 = 127;
|
||||
optional int32 field129 = 129;
|
||||
repeated int64 field130 = 130;
|
||||
optional bool field205 = 205 [default=false];
|
||||
optional bool field206 = 206 [default=false];
|
||||
}
|
||||
|
||||
message SizeMessage2GroupedMessage {
|
||||
optional float field1 = 1;
|
||||
optional float field2 = 2;
|
||||
optional float field3 = 3 [default=0.0];
|
||||
optional bool field4 = 4;
|
||||
optional bool field5 = 5;
|
||||
optional bool field6 = 6 [default=true];
|
||||
optional bool field7 = 7 [default=false];
|
||||
optional float field8 = 8;
|
||||
optional bool field9 = 9;
|
||||
optional float field10 = 10;
|
||||
optional int64 field11 = 11;
|
||||
}
|
98
deps/protobuf/benchmarks/java/pom.xml
vendored
Normal file
98
deps/protobuf/benchmarks/java/pom.xml
vendored
Normal file
@ -0,0 +1,98 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>protobuf-java-benchmark</artifactId>
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<version>1.0.0</version>
|
||||
<name>Protocol Buffers [Benchmark]</name>
|
||||
<description>The benchmark tools for Protobuf Java.</description>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protobuf-java</artifactId>
|
||||
<version>${protobuf.version}</version>
|
||||
<type>jar</type>
|
||||
<scope>system</scope>
|
||||
<systemPath>${project.basedir}/lib/protobuf-java.jar</systemPath>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.google.caliper</groupId>
|
||||
<artifactId>caliper</artifactId>
|
||||
<version>1.0-beta-3</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<pluginManagement>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-assembly-plugin</artifactId>
|
||||
<version>2.4.1</version>
|
||||
<configuration>
|
||||
<!-- get all project dependencies -->
|
||||
<descriptorRefs>
|
||||
<descriptorRef>jar-with-dependencies</descriptorRef>
|
||||
</descriptorRefs>
|
||||
<!-- MainClass in mainfest make a executable jar -->
|
||||
<archive>
|
||||
<manifest>
|
||||
<mainClass>com.mkyong.core.utils.App</mainClass>
|
||||
</manifest>
|
||||
</archive>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>make-assembly</id>
|
||||
<!-- bind to the packaging phase -->
|
||||
<phase>package</phase>
|
||||
<goals>
|
||||
<goal>single</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<version>3.5.1</version>
|
||||
<configuration>
|
||||
<source>1.8</source>
|
||||
<target>1.8</target>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-jar-plugin</artifactId>
|
||||
<version>2.5</version>
|
||||
<configuration>
|
||||
<archive>
|
||||
<manifest>
|
||||
<addClasspath>true</addClasspath>
|
||||
<mainClass>com.google.protocolbuffers.ProtoBench</mainClass>
|
||||
</manifest>
|
||||
</archive>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-source-plugin</artifactId>
|
||||
<version>2.4</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>attach-sources</id>
|
||||
<goals>
|
||||
<goal>jar-no-fork</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</pluginManagement>
|
||||
</build>
|
||||
</project>
|
||||
|
208
deps/protobuf/benchmarks/java/src/main/java/com/google/protobuf/ProtoCaliperBenchmark.java
vendored
Normal file
208
deps/protobuf/benchmarks/java/src/main/java/com/google/protobuf/ProtoCaliperBenchmark.java
vendored
Normal file
@ -0,0 +1,208 @@
|
||||
package com.google.protobuf;
|
||||
|
||||
import com.google.caliper.BeforeExperiment;
|
||||
import com.google.caliper.Benchmark;
|
||||
import com.google.caliper.Param;
|
||||
import com.google.protobuf.benchmarks.Benchmarks.BenchmarkDataset;
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.io.RandomAccessFile;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Basic benchmarks for Java protobuf parsing.
|
||||
*/
|
||||
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 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 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();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
33
deps/protobuf/benchmarks/js/benchmark_suite.js
vendored
Normal file
33
deps/protobuf/benchmarks/js/benchmark_suite.js
vendored
Normal file
@ -0,0 +1,33 @@
|
||||
var benchmark = require("benchmark");
|
||||
|
||||
function newBenchmark(messageName, filename, language) {
|
||||
var benches = [];
|
||||
return {
|
||||
suite: new benchmark.Suite(messageName + filename + language )
|
||||
.on("add", function(event) {
|
||||
benches.push(event.target);
|
||||
})
|
||||
.on("start", function() {
|
||||
process.stdout.write(
|
||||
"benchmarking message " + messageName
|
||||
+ " of dataset file " + filename
|
||||
+ "'s performance ..." + "\n\n");
|
||||
})
|
||||
.on("cycle", function(event) {
|
||||
process.stdout.write(String(event.target) + "\n");
|
||||
})
|
||||
.on("complete", function() {
|
||||
var getHz = function(bench) {
|
||||
return 1 / (bench.stats.mean + bench.stats.moe);
|
||||
}
|
||||
benches.forEach(function(val, index) {
|
||||
benches[index] = getHz(val);
|
||||
});
|
||||
}),
|
||||
benches: benches
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
newBenchmark: newBenchmark
|
||||
}
|
82
deps/protobuf/benchmarks/js/js_benchmark.js
vendored
Normal file
82
deps/protobuf/benchmarks/js/js_benchmark.js
vendored
Normal file
@ -0,0 +1,82 @@
|
||||
require('./datasets/google_message1/proto2/benchmark_message1_proto2_pb.js');
|
||||
require('./datasets/google_message1/proto3/benchmark_message1_proto3_pb.js');
|
||||
require('./datasets/google_message2/benchmark_message2_pb.js');
|
||||
require('./datasets/google_message3/benchmark_message3_pb.js');
|
||||
require('./datasets/google_message4/benchmark_message4_pb.js');
|
||||
require('./benchmarks_pb.js');
|
||||
|
||||
var fs = require('fs');
|
||||
var benchmarkSuite = require("./benchmark_suite.js");
|
||||
|
||||
|
||||
function getNewPrototype(name) {
|
||||
var message = eval("proto." + name);
|
||||
if (typeof(message) == "undefined") {
|
||||
throw "type " + name + " is undefined";
|
||||
}
|
||||
return message;
|
||||
}
|
||||
|
||||
var results = [];
|
||||
var json_file = "";
|
||||
|
||||
console.log("#####################################################");
|
||||
console.log("Js Benchmark: ");
|
||||
process.argv.forEach(function(filename, index) {
|
||||
if (index < 2) {
|
||||
return;
|
||||
}
|
||||
if (filename.indexOf("--json_output") != -1) {
|
||||
json_file = filename.replace(/^--json_output=/, '');
|
||||
return;
|
||||
}
|
||||
|
||||
var benchmarkDataset =
|
||||
proto.benchmarks.BenchmarkDataset.deserializeBinary(fs.readFileSync(filename));
|
||||
var messageList = [];
|
||||
var totalBytes = 0;
|
||||
benchmarkDataset.getPayloadList().forEach(function(onePayload) {
|
||||
var message = getNewPrototype(benchmarkDataset.getMessageName());
|
||||
messageList.push(message.deserializeBinary(onePayload));
|
||||
totalBytes += onePayload.length;
|
||||
});
|
||||
|
||||
var scenarios = benchmarkSuite.newBenchmark(
|
||||
benchmarkDataset.getMessageName(), filename, "js");
|
||||
scenarios.suite
|
||||
.add("js deserialize", function() {
|
||||
benchmarkDataset.getPayloadList().forEach(function(onePayload) {
|
||||
var protoType = getNewPrototype(benchmarkDataset.getMessageName());
|
||||
protoType.deserializeBinary(onePayload);
|
||||
});
|
||||
})
|
||||
.add("js serialize", function() {
|
||||
var protoType = getNewPrototype(benchmarkDataset.getMessageName());
|
||||
messageList.forEach(function(message) {
|
||||
message.serializeBinary();
|
||||
});
|
||||
})
|
||||
.run({"Async": false});
|
||||
|
||||
results.push({
|
||||
filename: filename,
|
||||
benchmarks: {
|
||||
protobufjs_decoding: scenarios.benches[0] * totalBytes / 1024 / 1024,
|
||||
protobufjs_encoding: scenarios.benches[1] * totalBytes / 1024 / 1024
|
||||
}
|
||||
})
|
||||
|
||||
console.log("Throughput for deserialize: "
|
||||
+ scenarios.benches[0] * totalBytes / 1024 / 1024 + "MB/s" );
|
||||
console.log("Throughput for serialize: "
|
||||
+ scenarios.benches[1] * totalBytes / 1024 / 1024 + "MB/s" );
|
||||
console.log("");
|
||||
});
|
||||
console.log("#####################################################");
|
||||
|
||||
if (json_file != "") {
|
||||
fs.writeFile(json_file, JSON.stringify(results), (err) => {
|
||||
if (err) throw err;
|
||||
});
|
||||
}
|
||||
|
170
deps/protobuf/benchmarks/php/PhpBenchmark.php
vendored
Normal file
170
deps/protobuf/benchmarks/php/PhpBenchmark.php
vendored
Normal file
@ -0,0 +1,170 @@
|
||||
<?php
|
||||
|
||||
namespace Google\Protobuf\Benchmark;
|
||||
ini_set('memory_limit', '4096M');
|
||||
|
||||
const NAME = "PhpBenchmark.php";
|
||||
|
||||
function _require_all($dir, &$prefix) {
|
||||
// require all php files
|
||||
foreach (glob("$dir/*") as $path) {
|
||||
if (preg_match('/\.php$/', $path) &&
|
||||
substr($path, -strlen(NAME)) != NAME) {
|
||||
require_once(substr($path, strlen($prefix) + 1));
|
||||
} elseif (is_dir($path)) {
|
||||
_require_all($path, $prefix);
|
||||
}
|
||||
}
|
||||
}
|
||||
// include all file
|
||||
foreach (explode(PATH_SEPARATOR, get_include_path()) as $one_include_path) {
|
||||
_require_all($one_include_path, $one_include_path);
|
||||
}
|
||||
|
||||
use Benchmarks\BenchmarkDataset;
|
||||
|
||||
class BenchmarkMethod
|
||||
{
|
||||
// $args[0]: dataset
|
||||
// $args[1]: message class
|
||||
static function parse(&$args) {
|
||||
$payloads = $args[0]->getPayload();
|
||||
for ($i = $payloads->count() - 1; $i >= 0; $i--) {
|
||||
(new $args[1]())->mergeFromString($payloads->offsetGet($i));
|
||||
}
|
||||
}
|
||||
|
||||
// $args: array of message
|
||||
static function serialize(&$args) {
|
||||
foreach ($args as &$temp_message) {
|
||||
$temp_message->serializeToString();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class Benchmark
|
||||
{
|
||||
private $benchmark_name;
|
||||
private $args;
|
||||
private $benchmark_time;
|
||||
private $total_bytes;
|
||||
private $coefficient;
|
||||
|
||||
public function __construct($benchmark_name, $args, $total_bytes,
|
||||
$benchmark_time = 5.0) {
|
||||
$this->args = $args;
|
||||
$this->benchmark_name = $benchmark_name;
|
||||
$this->benchmark_time = $benchmark_time;
|
||||
$this->total_bytes = $total_bytes;
|
||||
$this->coefficient = pow (10, 0) / pow(2, 20);
|
||||
}
|
||||
|
||||
public function runBenchmark() {
|
||||
$t = $this->runBenchmarkWithTimes(1);
|
||||
$times = ceil($this->benchmark_time / $t);
|
||||
return $this->total_bytes * $times /
|
||||
($times == 1 ? $t : $this->runBenchmarkWithTimes($times)) *
|
||||
$this->coefficient;
|
||||
}
|
||||
|
||||
private function runBenchmarkWithTimes($times) {
|
||||
$st = microtime(true);
|
||||
for ($i = 0; $i < $times; $i++) {
|
||||
call_user_func_array($this->benchmark_name, array(&$this->args));
|
||||
}
|
||||
$en = microtime(true);
|
||||
return $en - $st;
|
||||
}
|
||||
}
|
||||
|
||||
function getMessageName(&$dataset) {
|
||||
switch ($dataset->getMessageName()) {
|
||||
case "benchmarks.proto3.GoogleMessage1":
|
||||
return "\Benchmarks\Proto3\GoogleMessage1";
|
||||
case "benchmarks.proto2.GoogleMessage1":
|
||||
return "\Benchmarks\Proto2\GoogleMessage1";
|
||||
case "benchmarks.proto2.GoogleMessage2":
|
||||
return "\Benchmarks\Proto2\GoogleMessage2";
|
||||
case "benchmarks.google_message3.GoogleMessage3":
|
||||
return "\Benchmarks\Google_message3\GoogleMessage3";
|
||||
case "benchmarks.google_message4.GoogleMessage4":
|
||||
return "\Benchmarks\Google_message4\GoogleMessage4";
|
||||
default:
|
||||
exit("Message " . $dataset->getMessageName() . " not found !");
|
||||
}
|
||||
}
|
||||
|
||||
function runBenchmark($file, $behavior_prefix) {
|
||||
$datafile = fopen($file, "r") or die("Unable to open file " . $file);
|
||||
$bytes = fread($datafile, filesize($file));
|
||||
$dataset = new BenchmarkDataset(NULL);
|
||||
$dataset->mergeFromString($bytes);
|
||||
$message_name = getMessageName($dataset);
|
||||
$message_list = array();
|
||||
$total_bytes = 0;
|
||||
$payloads = $dataset->getPayload();
|
||||
for ($i = $payloads->count() - 1; $i >= 0; $i--) {
|
||||
$new_message = new $message_name();
|
||||
$new_message->mergeFromString($payloads->offsetGet($i));
|
||||
array_push($message_list, $new_message);
|
||||
$total_bytes += strlen($payloads->offsetGet($i));
|
||||
}
|
||||
|
||||
$parse_benchmark = new Benchmark(
|
||||
"\Google\Protobuf\Benchmark\BenchmarkMethod::parse",
|
||||
array($dataset, $message_name), $total_bytes);
|
||||
$serialize_benchmark = new Benchmark(
|
||||
"\Google\Protobuf\Benchmark\BenchmarkMethod::serialize",
|
||||
$message_list, $total_bytes);
|
||||
|
||||
return array(
|
||||
"filename" => $file,
|
||||
"benchmarks" => array(
|
||||
$behavior_prefix . "_parse" => $parse_benchmark->runBenchmark(),
|
||||
$behavior_prefix . "_serailize" => $serialize_benchmark->runBenchmark()
|
||||
),
|
||||
"message_name" => $dataset->getMessageName()
|
||||
);
|
||||
}
|
||||
|
||||
// main
|
||||
$json_output = false;
|
||||
$results = array();
|
||||
$behavior_prefix = "";
|
||||
|
||||
foreach ($argv as $index => $arg) {
|
||||
if ($index == 0) {
|
||||
continue;
|
||||
}
|
||||
if ($arg == "--json") {
|
||||
$json_output = true;
|
||||
} else if (strpos($arg, "--behavior_prefix") == 0) {
|
||||
$behavior_prefix = str_replace("--behavior_prefix=", "", $arg);
|
||||
}
|
||||
}
|
||||
|
||||
foreach ($argv as $index => $arg) {
|
||||
if ($index == 0) {
|
||||
continue;
|
||||
}
|
||||
if (substr($arg, 0, 2) == "--") {
|
||||
continue;
|
||||
} else {
|
||||
array_push($results, runBenchmark($arg, $behavior_prefix));
|
||||
}
|
||||
}
|
||||
|
||||
if ($json_output) {
|
||||
print json_encode($results);
|
||||
} else {
|
||||
print "PHP protobuf benchmark result:\n\n";
|
||||
foreach ($results as $result) {
|
||||
printf("result for test data file: %s\n", $result["filename"]);
|
||||
foreach ($result["benchmarks"] as $benchmark => $throughput) {
|
||||
printf(" Throughput for benchmark %s: %.2f MB/s\n",
|
||||
$benchmark, $throughput);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
25
deps/protobuf/benchmarks/php/autoload.php
vendored
Normal file
25
deps/protobuf/benchmarks/php/autoload.php
vendored
Normal file
@ -0,0 +1,25 @@
|
||||
<?php
|
||||
|
||||
define("GOOGLE_INTERNAL_NAMESPACE", "Google\\Protobuf\\Internal\\");
|
||||
define("GOOGLE_NAMESPACE", "Google\\Protobuf\\");
|
||||
define("GOOGLE_GPBMETADATA_NAMESPACE", "GPBMetadata\\Google\\Protobuf\\");
|
||||
define("BENCHMARK_NAMESPACE", "Benchmarks");
|
||||
define("BENCHMARK_GPBMETADATA_NAMESPACE", "GPBMetadata\\Benchmarks");
|
||||
|
||||
function protobuf_autoloader_impl($class, $prefix, $include_path) {
|
||||
$length = strlen($prefix);
|
||||
if ((substr($class, 0, $length) === $prefix)) {
|
||||
$path = $include_path . '/' . implode('/', array_map('ucwords', explode('\\', $class))) . '.php';
|
||||
include_once $path;
|
||||
}
|
||||
}
|
||||
|
||||
function protobuf_autoloader($class) {
|
||||
protobuf_autoloader_impl($class, GOOGLE_INTERNAL_NAMESPACE, getenv('PROTOBUF_PHP_SRCDIR'));
|
||||
protobuf_autoloader_impl($class, GOOGLE_NAMESPACE, getenv('PROTOBUF_PHP_SRCDIR'));
|
||||
protobuf_autoloader_impl($class, GOOGLE_GPBMETADATA_NAMESPACE, getenv('PROTOBUF_PHP_SRCDIR'));
|
||||
protobuf_autoloader_impl($class, BENCHMARK_NAMESPACE, getenv('CURRENT_DIR'));
|
||||
protobuf_autoloader_impl($class, BENCHMARK_GPBMETADATA_NAMESPACE, getenv('CURRENT_DIR'));
|
||||
}
|
||||
|
||||
spl_autoload_register('protobuf_autoloader');
|
25
deps/protobuf/benchmarks/protobuf.js/generate_pbjs_files.js
vendored
Normal file
25
deps/protobuf/benchmarks/protobuf.js/generate_pbjs_files.js
vendored
Normal file
@ -0,0 +1,25 @@
|
||||
var pbjs = require("./protobuf.js/cli").pbjs
|
||||
|
||||
var argv = [];
|
||||
var protoFiles = [];
|
||||
var prefix = "";
|
||||
process.argv.forEach(function(val, index) {
|
||||
var arg = val;
|
||||
if (arg.length > 6 && arg.substring(arg.length - 6) == ".proto") {
|
||||
protoFiles.push(arg);
|
||||
} else if (arg.length > 15 && arg.substring(0, 15) == "--include_path=") {
|
||||
prefix = arg.substring(15);
|
||||
} else if (index >= 2) {
|
||||
argv.push(arg);
|
||||
}
|
||||
});
|
||||
protoFiles.forEach(function(val) {
|
||||
argv.push(prefix + "/" + val);
|
||||
});
|
||||
|
||||
pbjs.main(argv, function(err, output){
|
||||
if (err) {
|
||||
console.log(err);
|
||||
}
|
||||
});
|
||||
|
66
deps/protobuf/benchmarks/protobuf.js/protobufjs_benchmark.js
vendored
Normal file
66
deps/protobuf/benchmarks/protobuf.js/protobufjs_benchmark.js
vendored
Normal file
@ -0,0 +1,66 @@
|
||||
var root = require("./generated_bundle_code.js");
|
||||
var fs = require('fs');
|
||||
var benchmark = require("./node_modules/benchmark");
|
||||
var benchmarkSuite = require("./benchmark_suite.js");
|
||||
|
||||
|
||||
function getNewPrototype(name) {
|
||||
var message = eval("root." + name);
|
||||
if (typeof(message) == "undefined") {
|
||||
throw "type " + name + " is undefined";
|
||||
}
|
||||
return message;
|
||||
}
|
||||
|
||||
|
||||
var results = [];
|
||||
|
||||
console.log("#####################################################");
|
||||
console.log("ProtobufJs Benchmark: ");
|
||||
process.argv.forEach(function(filename, index) {
|
||||
if (index < 2) {
|
||||
return;
|
||||
}
|
||||
var benchmarkDataset =
|
||||
root.benchmarks.BenchmarkDataset.decode(fs.readFileSync(filename));
|
||||
var messageList = [];
|
||||
var totalBytes = 0;
|
||||
benchmarkDataset.payload.forEach(function(onePayload) {
|
||||
var message = getNewPrototype(benchmarkDataset.messageName);
|
||||
messageList.push(message.decode(onePayload));
|
||||
totalBytes += onePayload.length;
|
||||
});
|
||||
|
||||
var scenarios = benchmarkSuite.newBenchmark(
|
||||
benchmarkDataset.messageName, filename, "protobufjs");
|
||||
scenarios.suite
|
||||
.add("protobuf.js static decoding", function() {
|
||||
benchmarkDataset.payload.forEach(function(onePayload) {
|
||||
var protoType = getNewPrototype(benchmarkDataset.messageName);
|
||||
protoType.decode(onePayload);
|
||||
});
|
||||
})
|
||||
.add("protobuf.js static encoding", function() {
|
||||
var protoType = getNewPrototype(benchmarkDataset.messageName);
|
||||
messageList.forEach(function(message) {
|
||||
protoType.encode(message).finish();
|
||||
});
|
||||
})
|
||||
.run({"Async": false});
|
||||
|
||||
results.push({
|
||||
filename: filename,
|
||||
benchmarks: {
|
||||
protobufjs_decoding: scenarios.benches[0] * totalBytes,
|
||||
protobufjs_encoding: scenarios.benches[1] * totalBytes
|
||||
}
|
||||
})
|
||||
|
||||
console.log("Throughput for decoding: "
|
||||
+ scenarios.benches[0] * totalBytes / 1024 / 1024 + "MB/s" );
|
||||
console.log("Throughput for encoding: "
|
||||
+ scenarios.benches[1] * totalBytes / 1024 / 1024 + "MB/s" );
|
||||
console.log("");
|
||||
});
|
||||
console.log("#####################################################");
|
||||
|
0
deps/protobuf/benchmarks/python/__init__.py
vendored
Normal file
0
deps/protobuf/benchmarks/python/__init__.py
vendored
Normal file
161
deps/protobuf/benchmarks/python/py_benchmark.py
vendored
Normal file
161
deps/protobuf/benchmarks/python/py_benchmark.py
vendored
Normal file
@ -0,0 +1,161 @@
|
||||
from __future__ import print_function
|
||||
import sys
|
||||
import os
|
||||
import timeit
|
||||
import math
|
||||
import argparse
|
||||
import fnmatch
|
||||
import json
|
||||
|
||||
parser = argparse.ArgumentParser(description="Python protobuf benchmark")
|
||||
parser.add_argument("data_files", metavar="dataFile", nargs="+",
|
||||
help="testing data files.")
|
||||
parser.add_argument("--json", action="store_const", dest="json",
|
||||
const="yes", default="no",
|
||||
help="Whether to output json results")
|
||||
parser.add_argument("--behavior_prefix", dest="behavior_prefix",
|
||||
help="The output json format's behavior's name's prefix",
|
||||
default="")
|
||||
# BEGIN CPP GENERATED MESSAGE
|
||||
parser.add_argument("--cpp_generated", action="store_const",
|
||||
dest="cpp_generated", const="yes", default="no",
|
||||
help="Whether to link generated code library")
|
||||
# END CPP GENERATED MESSAGE
|
||||
args = parser.parse_args()
|
||||
# BEGIN CPP GENERATED MESSAGE
|
||||
# CPP generated code must be linked before importing the generated Python code
|
||||
# for the descriptor can be found in the pool
|
||||
if args.cpp_generated != "no":
|
||||
sys.path.append( os.path.dirname( os.path.dirname( os.path.abspath(__file__) ) ) + "/.libs" )
|
||||
import libbenchmark_messages
|
||||
sys.path.append( os.path.dirname( os.path.dirname( os.path.abspath(__file__) ) ) + "/tmp" )
|
||||
# END CPP GENERATED MESSAGE
|
||||
|
||||
|
||||
import datasets.google_message1.proto2.benchmark_message1_proto2_pb2 as benchmark_message1_proto2_pb2
|
||||
import datasets.google_message1.proto3.benchmark_message1_proto3_pb2 as benchmark_message1_proto3_pb2
|
||||
import datasets.google_message2.benchmark_message2_pb2 as benchmark_message2_pb2
|
||||
import datasets.google_message3.benchmark_message3_pb2 as benchmark_message3_pb2
|
||||
import datasets.google_message4.benchmark_message4_pb2 as benchmark_message4_pb2
|
||||
import benchmarks_pb2 as benchmarks_pb2
|
||||
|
||||
|
||||
def run_one_test(filename):
|
||||
data = open(filename, "rb").read()
|
||||
benchmark_dataset = benchmarks_pb2.BenchmarkDataset()
|
||||
benchmark_dataset.ParseFromString(data)
|
||||
total_bytes = 0
|
||||
for payload in benchmark_dataset.payload:
|
||||
total_bytes += len(payload)
|
||||
benchmark_util = Benchmark(full_iteration=len(benchmark_dataset.payload),
|
||||
module="py_benchmark",
|
||||
setup_method="init",
|
||||
total_bytes=total_bytes)
|
||||
result={}
|
||||
result["filename"] = filename
|
||||
result["message_name"] = benchmark_dataset.message_name
|
||||
result["benchmarks"] = {}
|
||||
benchmark_util.set_test_method("parse_from_benchmark")
|
||||
result["benchmarks"][args.behavior_prefix + "_parse_from_benchmark"] = \
|
||||
benchmark_util.run_benchmark(setup_method_args='"%s"' % (filename))
|
||||
benchmark_util.set_test_method("serialize_to_benchmark")
|
||||
result["benchmarks"][args.behavior_prefix + "_serialize_to_benchmark"] = \
|
||||
benchmark_util.run_benchmark(setup_method_args='"%s"' % (filename))
|
||||
return result
|
||||
|
||||
|
||||
def init(filename):
|
||||
global benchmark_dataset, message_class, message_list, counter, total_bytes
|
||||
message_list=[]
|
||||
counter = 0
|
||||
total_bytes = 0
|
||||
data = open(filename, "rb").read()
|
||||
benchmark_dataset = benchmarks_pb2.BenchmarkDataset()
|
||||
benchmark_dataset.ParseFromString(data)
|
||||
|
||||
if benchmark_dataset.message_name == "benchmarks.proto3.GoogleMessage1":
|
||||
message_class = benchmark_message1_proto3_pb2.GoogleMessage1
|
||||
elif benchmark_dataset.message_name == "benchmarks.proto2.GoogleMessage1":
|
||||
message_class = benchmark_message1_proto2_pb2.GoogleMessage1
|
||||
elif benchmark_dataset.message_name == "benchmarks.proto2.GoogleMessage2":
|
||||
message_class = benchmark_message2_pb2.GoogleMessage2
|
||||
elif benchmark_dataset.message_name == "benchmarks.google_message3.GoogleMessage3":
|
||||
message_class = benchmark_message3_pb2.GoogleMessage3
|
||||
elif benchmark_dataset.message_name == "benchmarks.google_message4.GoogleMessage4":
|
||||
message_class = benchmark_message4_pb2.GoogleMessage4
|
||||
else:
|
||||
raise IOError("Message %s not found!" % (benchmark_dataset.message_name))
|
||||
|
||||
for one_payload in benchmark_dataset.payload:
|
||||
temp = message_class()
|
||||
temp.ParseFromString(one_payload)
|
||||
message_list.append(temp)
|
||||
total_bytes += len(one_payload)
|
||||
|
||||
|
||||
def parse_from_benchmark():
|
||||
global counter, message_class, benchmark_dataset
|
||||
m = message_class().ParseFromString(benchmark_dataset.payload[counter % len(benchmark_dataset.payload)])
|
||||
counter = counter + 1
|
||||
|
||||
|
||||
def serialize_to_benchmark():
|
||||
global counter, message_list, message_class
|
||||
s = message_list[counter % len(benchmark_dataset.payload)].SerializeToString()
|
||||
counter = counter + 1
|
||||
|
||||
|
||||
class Benchmark:
|
||||
def __init__(self, module=None, test_method=None,
|
||||
setup_method=None, total_bytes=None, full_iteration = 1):
|
||||
self.full_iteration = full_iteration
|
||||
self.module = module
|
||||
self.test_method = test_method
|
||||
self.setup_method = setup_method
|
||||
self.total_bytes = total_bytes
|
||||
|
||||
def set_test_method(self, test_method):
|
||||
self.test_method = test_method
|
||||
|
||||
def full_setup_code(self, setup_method_args=''):
|
||||
setup_code = ""
|
||||
setup_code += "from %s import %s\n" % (self.module, self.test_method)
|
||||
setup_code += "from %s import %s\n" % (self.module, self.setup_method)
|
||||
setup_code += "%s(%s)\n" % (self.setup_method, setup_method_args)
|
||||
return setup_code
|
||||
|
||||
def dry_run(self, test_method_args='', setup_method_args=''):
|
||||
return timeit.timeit(stmt="%s(%s)" % (self.test_method, test_method_args),
|
||||
setup=self.full_setup_code(setup_method_args),
|
||||
number=self.full_iteration);
|
||||
|
||||
def run_benchmark(self, test_method_args='', setup_method_args=''):
|
||||
reps = self.full_iteration;
|
||||
t = self.dry_run(test_method_args, setup_method_args);
|
||||
if t < 3 :
|
||||
reps = int(math.ceil(3 / t)) * self.full_iteration
|
||||
if reps != self.full_iteration:
|
||||
t = timeit.timeit(stmt="%s(%s)" % (self.test_method, test_method_args),
|
||||
setup=self.full_setup_code(setup_method_args),
|
||||
number=reps);
|
||||
return self.total_bytes * 1.0 / 2 ** 20 / (1.0 * t / reps * self.full_iteration)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
results = []
|
||||
for file in args.data_files:
|
||||
results.append(run_one_test(file))
|
||||
|
||||
if args.json != "no":
|
||||
print(json.dumps(results))
|
||||
else:
|
||||
for result in results:
|
||||
print("Message %s of dataset file %s" % \
|
||||
(result["message_name"], result["filename"]))
|
||||
print("Average throughput for parse_from_benchmark: %.2f MB/s" % \
|
||||
(result["benchmarks"][ \
|
||||
args.behavior_prefix + "_parse_from_benchmark"]))
|
||||
print("Average throughput for serialize_to_benchmark: %.2f MB/s" % \
|
||||
(result["benchmarks"][ \
|
||||
args.behavior_prefix + "_serialize_to_benchmark"]))
|
||||
print("")
|
31
deps/protobuf/benchmarks/python/python_benchmark_messages.cc
vendored
Normal file
31
deps/protobuf/benchmarks/python/python_benchmark_messages.cc
vendored
Normal file
@ -0,0 +1,31 @@
|
||||
#include <Python.h>
|
||||
|
||||
#include "benchmarks.pb.h"
|
||||
#include "datasets/google_message1/proto2/benchmark_message1_proto2.pb.h"
|
||||
#include "datasets/google_message1/proto3/benchmark_message1_proto3.pb.h"
|
||||
#include "datasets/google_message2/benchmark_message2.pb.h"
|
||||
#include "datasets/google_message3/benchmark_message3.pb.h"
|
||||
#include "datasets/google_message4/benchmark_message4.pb.h"
|
||||
|
||||
static struct PyModuleDef _module = {PyModuleDef_HEAD_INIT,
|
||||
"libbenchmark_messages",
|
||||
"Benchmark messages Python module",
|
||||
-1,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL};
|
||||
|
||||
extern "C" {
|
||||
PyMODINIT_FUNC PyInit_libbenchmark_messages() {
|
||||
benchmarks::BenchmarkDataset().descriptor();
|
||||
benchmarks::proto3::GoogleMessage1().descriptor();
|
||||
benchmarks::proto2::GoogleMessage1().descriptor();
|
||||
benchmarks::proto2::GoogleMessage2().descriptor();
|
||||
benchmarks::google_message3::GoogleMessage3().descriptor();
|
||||
benchmarks::google_message4::GoogleMessage4().descriptor();
|
||||
|
||||
return PyModule_Create(&_module);
|
||||
}
|
||||
}
|
0
deps/protobuf/benchmarks/util/__init__.py
vendored
Normal file
0
deps/protobuf/benchmarks/util/__init__.py
vendored
Normal file
189
deps/protobuf/benchmarks/util/big_query_utils.py
vendored
Normal file
189
deps/protobuf/benchmarks/util/big_query_utils.py
vendored
Normal file
@ -0,0 +1,189 @@
|
||||
#!/usr/bin/env python2.7
|
||||
|
||||
from __future__ import print_function
|
||||
import argparse
|
||||
import json
|
||||
import uuid
|
||||
import httplib2
|
||||
|
||||
from apiclient import discovery
|
||||
from apiclient.errors import HttpError
|
||||
from oauth2client.client import GoogleCredentials
|
||||
|
||||
# 30 days in milliseconds
|
||||
_EXPIRATION_MS = 30 * 24 * 60 * 60 * 1000
|
||||
NUM_RETRIES = 3
|
||||
|
||||
|
||||
def create_big_query():
|
||||
"""Authenticates with cloud platform and gets a BiqQuery service object
|
||||
"""
|
||||
creds = GoogleCredentials.get_application_default()
|
||||
return discovery.build(
|
||||
'bigquery', 'v2', credentials=creds, cache_discovery=False)
|
||||
|
||||
|
||||
def create_dataset(biq_query, project_id, dataset_id):
|
||||
is_success = True
|
||||
body = {
|
||||
'datasetReference': {
|
||||
'projectId': project_id,
|
||||
'datasetId': dataset_id
|
||||
}
|
||||
}
|
||||
|
||||
try:
|
||||
dataset_req = biq_query.datasets().insert(
|
||||
projectId=project_id, body=body)
|
||||
dataset_req.execute(num_retries=NUM_RETRIES)
|
||||
except HttpError as http_error:
|
||||
if http_error.resp.status == 409:
|
||||
print('Warning: The dataset %s already exists' % dataset_id)
|
||||
else:
|
||||
# Note: For more debugging info, print "http_error.content"
|
||||
print('Error in creating dataset: %s. Err: %s' % (dataset_id,
|
||||
http_error))
|
||||
is_success = False
|
||||
return is_success
|
||||
|
||||
|
||||
def create_table(big_query, project_id, dataset_id, table_id, table_schema,
|
||||
description):
|
||||
fields = [{
|
||||
'name': field_name,
|
||||
'type': field_type,
|
||||
'description': field_description
|
||||
} for (field_name, field_type, field_description) in table_schema]
|
||||
return create_table2(big_query, project_id, dataset_id, table_id, fields,
|
||||
description)
|
||||
|
||||
|
||||
def create_partitioned_table(big_query,
|
||||
project_id,
|
||||
dataset_id,
|
||||
table_id,
|
||||
table_schema,
|
||||
description,
|
||||
partition_type='DAY',
|
||||
expiration_ms=_EXPIRATION_MS):
|
||||
"""Creates a partitioned table. By default, a date-paritioned table is created with
|
||||
each partition lasting 30 days after it was last modified.
|
||||
"""
|
||||
fields = [{
|
||||
'name': field_name,
|
||||
'type': field_type,
|
||||
'description': field_description
|
||||
} for (field_name, field_type, field_description) in table_schema]
|
||||
return create_table2(big_query, project_id, dataset_id, table_id, fields,
|
||||
description, partition_type, expiration_ms)
|
||||
|
||||
|
||||
def create_table2(big_query,
|
||||
project_id,
|
||||
dataset_id,
|
||||
table_id,
|
||||
fields_schema,
|
||||
description,
|
||||
partition_type=None,
|
||||
expiration_ms=None):
|
||||
is_success = True
|
||||
|
||||
body = {
|
||||
'description': description,
|
||||
'schema': {
|
||||
'fields': fields_schema
|
||||
},
|
||||
'tableReference': {
|
||||
'datasetId': dataset_id,
|
||||
'projectId': project_id,
|
||||
'tableId': table_id
|
||||
}
|
||||
}
|
||||
|
||||
if partition_type and expiration_ms:
|
||||
body["timePartitioning"] = {
|
||||
"type": partition_type,
|
||||
"expirationMs": expiration_ms
|
||||
}
|
||||
|
||||
try:
|
||||
table_req = big_query.tables().insert(
|
||||
projectId=project_id, datasetId=dataset_id, body=body)
|
||||
res = table_req.execute(num_retries=NUM_RETRIES)
|
||||
print('Successfully created %s "%s"' % (res['kind'], res['id']))
|
||||
except HttpError as http_error:
|
||||
if http_error.resp.status == 409:
|
||||
print('Warning: Table %s already exists' % table_id)
|
||||
else:
|
||||
print('Error in creating table: %s. Err: %s' % (table_id,
|
||||
http_error))
|
||||
is_success = False
|
||||
return is_success
|
||||
|
||||
|
||||
def patch_table(big_query, project_id, dataset_id, table_id, fields_schema):
|
||||
is_success = True
|
||||
|
||||
body = {
|
||||
'schema': {
|
||||
'fields': fields_schema
|
||||
},
|
||||
'tableReference': {
|
||||
'datasetId': dataset_id,
|
||||
'projectId': project_id,
|
||||
'tableId': table_id
|
||||
}
|
||||
}
|
||||
|
||||
try:
|
||||
table_req = big_query.tables().patch(
|
||||
projectId=project_id,
|
||||
datasetId=dataset_id,
|
||||
tableId=table_id,
|
||||
body=body)
|
||||
res = table_req.execute(num_retries=NUM_RETRIES)
|
||||
print('Successfully patched %s "%s"' % (res['kind'], res['id']))
|
||||
except HttpError as http_error:
|
||||
print('Error in creating table: %s. Err: %s' % (table_id, http_error))
|
||||
is_success = False
|
||||
return is_success
|
||||
|
||||
|
||||
def insert_rows(big_query, project_id, dataset_id, table_id, rows_list):
|
||||
is_success = True
|
||||
body = {'rows': rows_list}
|
||||
try:
|
||||
insert_req = big_query.tabledata().insertAll(
|
||||
projectId=project_id,
|
||||
datasetId=dataset_id,
|
||||
tableId=table_id,
|
||||
body=body)
|
||||
res = insert_req.execute(num_retries=NUM_RETRIES)
|
||||
if res.get('insertErrors', None):
|
||||
print('Error inserting rows! Response: %s' % res)
|
||||
is_success = False
|
||||
except HttpError as http_error:
|
||||
print('Error inserting rows to the table %s' % table_id)
|
||||
is_success = False
|
||||
|
||||
return is_success
|
||||
|
||||
|
||||
def sync_query_job(big_query, project_id, query, timeout=5000):
|
||||
query_data = {'query': query, 'timeoutMs': timeout}
|
||||
query_job = None
|
||||
try:
|
||||
query_job = big_query.jobs().query(
|
||||
projectId=project_id,
|
||||
body=query_data).execute(num_retries=NUM_RETRIES)
|
||||
except HttpError as http_error:
|
||||
print('Query execute job failed with error: %s' % http_error)
|
||||
print(http_error.content)
|
||||
return query_job
|
||||
|
||||
|
||||
# List of (column name, column type, description) tuples
|
||||
def make_row(unique_row_id, row_values_dict):
|
||||
"""row_values_dict is a dictionary of column name and column value.
|
||||
"""
|
||||
return {'insertId': unique_row_id, 'json': row_values_dict}
|
64
deps/protobuf/benchmarks/util/data_proto2_to_proto3_util.h
vendored
Normal file
64
deps/protobuf/benchmarks/util/data_proto2_to_proto3_util.h
vendored
Normal file
@ -0,0 +1,64 @@
|
||||
#ifndef PROTOBUF_BENCHMARKS_UTIL_DATA_PROTO2_TO_PROTO3_UTIL_H_
|
||||
#define PROTOBUF_BENCHMARKS_UTIL_DATA_PROTO2_TO_PROTO3_UTIL_H_
|
||||
|
||||
#include "google/protobuf/message.h"
|
||||
#include "google/protobuf/descriptor.h"
|
||||
|
||||
using google::protobuf::FieldDescriptor;
|
||||
using google::protobuf::Message;
|
||||
using google::protobuf::Reflection;
|
||||
|
||||
namespace google {
|
||||
namespace protobuf {
|
||||
namespace util {
|
||||
|
||||
class DataStripper {
|
||||
public:
|
||||
void StripMessage(Message *message) {
|
||||
std::vector<const FieldDescriptor*> set_fields;
|
||||
const Reflection* reflection = message->GetReflection();
|
||||
reflection->ListFields(*message, &set_fields);
|
||||
|
||||
for (size_t i = 0; i < set_fields.size(); i++) {
|
||||
const FieldDescriptor* field = set_fields[i];
|
||||
if (ShouldBeClear(field)) {
|
||||
reflection->ClearField(message, field);
|
||||
continue;
|
||||
}
|
||||
if (field->type() == FieldDescriptor::TYPE_MESSAGE) {
|
||||
if (field->is_repeated()) {
|
||||
for (int j = 0; j < reflection->FieldSize(*message, field); j++) {
|
||||
StripMessage(reflection->MutableRepeatedMessage(message, field, j));
|
||||
}
|
||||
} else {
|
||||
StripMessage(reflection->MutableMessage(message, field));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
reflection->MutableUnknownFields(message)->Clear();
|
||||
}
|
||||
private:
|
||||
virtual bool ShouldBeClear(const FieldDescriptor *field) = 0;
|
||||
};
|
||||
|
||||
class GogoDataStripper : public DataStripper {
|
||||
private:
|
||||
virtual bool ShouldBeClear(const FieldDescriptor *field) {
|
||||
return field->type() == FieldDescriptor::TYPE_GROUP;
|
||||
}
|
||||
};
|
||||
|
||||
class Proto3DataStripper : public DataStripper {
|
||||
private:
|
||||
virtual bool ShouldBeClear(const FieldDescriptor *field) {
|
||||
return field->type() == FieldDescriptor::TYPE_GROUP ||
|
||||
field->is_extension();
|
||||
}
|
||||
};
|
||||
|
||||
} // namespace util
|
||||
} // namespace protobuf
|
||||
} // namespace google
|
||||
|
||||
#endif // PROTOBUF_BENCHMARKS_UTIL_DATA_PROTO2_TO_PROTO3_UTIL_H_
|
74
deps/protobuf/benchmarks/util/gogo_data_scrubber.cc
vendored
Normal file
74
deps/protobuf/benchmarks/util/gogo_data_scrubber.cc
vendored
Normal file
@ -0,0 +1,74 @@
|
||||
#include "benchmarks.pb.h"
|
||||
#include "datasets/google_message1/proto2/benchmark_message1_proto2.pb.h"
|
||||
#include "datasets/google_message1/proto3/benchmark_message1_proto3.pb.h"
|
||||
#include "datasets/google_message2/benchmark_message2.pb.h"
|
||||
#include "datasets/google_message3/benchmark_message3.pb.h"
|
||||
#include "datasets/google_message4/benchmark_message4.pb.h"
|
||||
#include "data_proto2_to_proto3_util.h"
|
||||
|
||||
#include <fstream>
|
||||
|
||||
using google::protobuf::util::GogoDataStripper;
|
||||
|
||||
std::string ReadFile(const std::string& name) {
|
||||
std::ifstream file(name.c_str());
|
||||
GOOGLE_CHECK(file.is_open()) << "Couldn't find file '"
|
||||
<< name
|
||||
<< "', please make sure you are running this command from the benchmarks"
|
||||
<< " directory.\n";
|
||||
return std::string((std::istreambuf_iterator<char>(file)),
|
||||
std::istreambuf_iterator<char>());
|
||||
}
|
||||
|
||||
int main(int argc, char *argv[]) {
|
||||
if (argc % 2 == 0 || argc == 1) {
|
||||
std::cerr << "Usage: [input_files] [output_file_names] where " <<
|
||||
"input_files are one to one mapping to output_file_names." <<
|
||||
std::endl;
|
||||
return 1;
|
||||
}
|
||||
|
||||
for (int i = argc / 2; i > 0; i--) {
|
||||
const std::string &input_file = argv[i];
|
||||
const std::string &output_file = argv[i + argc / 2];
|
||||
|
||||
std::cerr << "Generating " << input_file
|
||||
<< " to " << output_file << std::endl;
|
||||
benchmarks::BenchmarkDataset dataset;
|
||||
Message* message;
|
||||
std::string dataset_payload = ReadFile(input_file);
|
||||
GOOGLE_CHECK(dataset.ParseFromString(dataset_payload))
|
||||
<< "Can' t parse data file " << input_file;
|
||||
|
||||
if (dataset.message_name() == "benchmarks.proto3.GoogleMessage1") {
|
||||
message = new benchmarks::proto3::GoogleMessage1;
|
||||
} else if (dataset.message_name() == "benchmarks.proto2.GoogleMessage1") {
|
||||
message = new benchmarks::proto2::GoogleMessage1;
|
||||
} else if (dataset.message_name() == "benchmarks.proto2.GoogleMessage2") {
|
||||
message = new benchmarks::proto2::GoogleMessage2;
|
||||
} else if (dataset.message_name() ==
|
||||
"benchmarks.google_message3.GoogleMessage3") {
|
||||
message = new benchmarks::google_message3::GoogleMessage3;
|
||||
} else if (dataset.message_name() ==
|
||||
"benchmarks.google_message4.GoogleMessage4") {
|
||||
message = new benchmarks::google_message4::GoogleMessage4;
|
||||
} else {
|
||||
std::cerr << "Unknown message type: " << dataset.message_name();
|
||||
exit(1);
|
||||
}
|
||||
|
||||
for (int i = 0; i < dataset.payload_size(); i++) {
|
||||
message->ParseFromString(dataset.payload(i));
|
||||
GogoDataStripper stripper;
|
||||
stripper.StripMessage(message);
|
||||
dataset.set_payload(i, message->SerializeAsString());
|
||||
}
|
||||
|
||||
std::ofstream ofs(output_file);
|
||||
ofs << dataset.SerializeAsString();
|
||||
ofs.close();
|
||||
}
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
74
deps/protobuf/benchmarks/util/proto3_data_stripper.cc
vendored
Normal file
74
deps/protobuf/benchmarks/util/proto3_data_stripper.cc
vendored
Normal file
@ -0,0 +1,74 @@
|
||||
#include "benchmarks.pb.h"
|
||||
#include "datasets/google_message1/proto2/benchmark_message1_proto2.pb.h"
|
||||
#include "datasets/google_message1/proto3/benchmark_message1_proto3.pb.h"
|
||||
#include "datasets/google_message2/benchmark_message2.pb.h"
|
||||
#include "datasets/google_message3/benchmark_message3.pb.h"
|
||||
#include "datasets/google_message4/benchmark_message4.pb.h"
|
||||
#include "data_proto2_to_proto3_util.h"
|
||||
|
||||
#include <fstream>
|
||||
|
||||
using google::protobuf::util::Proto3DataStripper;
|
||||
|
||||
std::string ReadFile(const std::string& name) {
|
||||
std::ifstream file(name.c_str());
|
||||
GOOGLE_CHECK(file.is_open()) << "Couldn't find file '"
|
||||
<< name
|
||||
<< "', please make sure you are running this command from the benchmarks"
|
||||
<< " directory.\n";
|
||||
return std::string((std::istreambuf_iterator<char>(file)),
|
||||
std::istreambuf_iterator<char>());
|
||||
}
|
||||
|
||||
int main(int argc, char *argv[]) {
|
||||
if (argc % 2 == 0 || argc == 1) {
|
||||
std::cerr << "Usage: [input_files] [output_file_names] where " <<
|
||||
"input_files are one to one mapping to output_file_names." <<
|
||||
std::endl;
|
||||
return 1;
|
||||
}
|
||||
|
||||
for (int i = argc / 2; i > 0; i--) {
|
||||
const std::string &input_file = argv[i];
|
||||
const std::string &output_file = argv[i + argc / 2];
|
||||
|
||||
std::cerr << "Generating " << input_file
|
||||
<< " to " << output_file << std::endl;
|
||||
benchmarks::BenchmarkDataset dataset;
|
||||
Message* message;
|
||||
std::string dataset_payload = ReadFile(input_file);
|
||||
GOOGLE_CHECK(dataset.ParseFromString(dataset_payload))
|
||||
<< "Can' t parse data file " << input_file;
|
||||
|
||||
if (dataset.message_name() == "benchmarks.proto3.GoogleMessage1") {
|
||||
message = new benchmarks::proto3::GoogleMessage1;
|
||||
} else if (dataset.message_name() == "benchmarks.proto2.GoogleMessage1") {
|
||||
message = new benchmarks::proto2::GoogleMessage1;
|
||||
} else if (dataset.message_name() == "benchmarks.proto2.GoogleMessage2") {
|
||||
message = new benchmarks::proto2::GoogleMessage2;
|
||||
} else if (dataset.message_name() ==
|
||||
"benchmarks.google_message3.GoogleMessage3") {
|
||||
message = new benchmarks::google_message3::GoogleMessage3;
|
||||
} else if (dataset.message_name() ==
|
||||
"benchmarks.google_message4.GoogleMessage4") {
|
||||
message = new benchmarks::google_message4::GoogleMessage4;
|
||||
} else {
|
||||
std::cerr << "Unknown message type: " << dataset.message_name();
|
||||
exit(1);
|
||||
}
|
||||
|
||||
for (int i = 0; i < dataset.payload_size(); i++) {
|
||||
message->ParseFromString(dataset.payload(i));
|
||||
Proto3DataStripper stripper;
|
||||
stripper.StripMessage(message);
|
||||
dataset.set_payload(i, message->SerializeAsString());
|
||||
}
|
||||
|
||||
std::ofstream ofs(output_file);
|
||||
ofs << dataset.SerializeAsString();
|
||||
ofs.close();
|
||||
}
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
103
deps/protobuf/benchmarks/util/protoc-gen-gogoproto.cc
vendored
Normal file
103
deps/protobuf/benchmarks/util/protoc-gen-gogoproto.cc
vendored
Normal file
@ -0,0 +1,103 @@
|
||||
#include "google/protobuf/compiler/code_generator.h"
|
||||
#include "google/protobuf/io/zero_copy_stream.h"
|
||||
#include "google/protobuf/io/printer.h"
|
||||
#include "google/protobuf/descriptor.h"
|
||||
#include "google/protobuf/descriptor.pb.h"
|
||||
#include "schema_proto2_to_proto3_util.h"
|
||||
|
||||
#include "google/protobuf/compiler/plugin.h"
|
||||
|
||||
using google::protobuf::FileDescriptorProto;
|
||||
using google::protobuf::FileDescriptor;
|
||||
using google::protobuf::DescriptorPool;
|
||||
using google::protobuf::io::Printer;
|
||||
using google::protobuf::util::SchemaGroupStripper;
|
||||
using google::protobuf::util::EnumScrubber;
|
||||
|
||||
namespace google {
|
||||
namespace protobuf {
|
||||
namespace compiler {
|
||||
|
||||
namespace {
|
||||
|
||||
string StripProto(string filename) {
|
||||
if (filename.substr(filename.size() - 11) == ".protodevel") {
|
||||
// .protodevel
|
||||
return filename.substr(0, filename.size() - 11);
|
||||
} else {
|
||||
// .proto
|
||||
return filename.substr(0, filename.size() - 6);
|
||||
}
|
||||
}
|
||||
|
||||
DescriptorPool new_pool_;
|
||||
|
||||
} // namespace
|
||||
|
||||
class GoGoProtoGenerator : public CodeGenerator {
|
||||
public:
|
||||
virtual bool GenerateAll(const std::vector<const FileDescriptor*>& files,
|
||||
const string& parameter,
|
||||
GeneratorContext* context,
|
||||
string* error) const {
|
||||
for (int i = 0; i < files.size(); i++) {
|
||||
for (auto file : files) {
|
||||
bool can_generate =
|
||||
(new_pool_.FindFileByName(file->name()) == nullptr);
|
||||
for (int j = 0; j < file->dependency_count(); j++) {
|
||||
can_generate &= (new_pool_.FindFileByName(
|
||||
file->dependency(j)->name()) != nullptr);
|
||||
}
|
||||
for (int j = 0; j < file->public_dependency_count(); j++) {
|
||||
can_generate &= (new_pool_.FindFileByName(
|
||||
file->public_dependency(j)->name()) != nullptr);
|
||||
}
|
||||
for (int j = 0; j < file->weak_dependency_count(); j++) {
|
||||
can_generate &= (new_pool_.FindFileByName(
|
||||
file->weak_dependency(j)->name()) != nullptr);
|
||||
}
|
||||
if (can_generate) {
|
||||
Generate(file, parameter, context, error);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
virtual bool Generate(const FileDescriptor* file,
|
||||
const string& parameter,
|
||||
GeneratorContext* context,
|
||||
string* error) const {
|
||||
FileDescriptorProto new_file;
|
||||
file->CopyTo(&new_file);
|
||||
SchemaGroupStripper::StripFile(file, &new_file);
|
||||
|
||||
EnumScrubber enum_scrubber;
|
||||
enum_scrubber.ScrubFile(&new_file);
|
||||
|
||||
string filename = file->name();
|
||||
string basename = StripProto(filename);
|
||||
|
||||
std::vector<std::pair<string,string>> option_pairs;
|
||||
ParseGeneratorParameter(parameter, &option_pairs);
|
||||
|
||||
std::unique_ptr<google::protobuf::io::ZeroCopyOutputStream> output(
|
||||
context->Open(basename + ".proto"));
|
||||
string content = new_pool_.BuildFile(new_file)->DebugString();
|
||||
Printer printer(output.get(), '$');
|
||||
printer.WriteRaw(content.c_str(), content.size());
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
} // namespace compiler
|
||||
} // namespace protobuf
|
||||
} // namespace google
|
||||
|
||||
int main(int argc, char* argv[]) {
|
||||
google::protobuf::compiler::GoGoProtoGenerator generator;
|
||||
return google::protobuf::compiler::PluginMain(argc, argv, &generator);
|
||||
}
|
115
deps/protobuf/benchmarks/util/protoc-gen-proto2_to_proto3.cc
vendored
Normal file
115
deps/protobuf/benchmarks/util/protoc-gen-proto2_to_proto3.cc
vendored
Normal file
@ -0,0 +1,115 @@
|
||||
#include "google/protobuf/compiler/code_generator.h"
|
||||
#include "google/protobuf/io/zero_copy_stream.h"
|
||||
#include "google/protobuf/io/printer.h"
|
||||
#include "google/protobuf/descriptor.h"
|
||||
#include "google/protobuf/descriptor.pb.h"
|
||||
#include "schema_proto2_to_proto3_util.h"
|
||||
|
||||
#include "google/protobuf/compiler/plugin.h"
|
||||
|
||||
using google::protobuf::FileDescriptorProto;
|
||||
using google::protobuf::FileDescriptor;
|
||||
using google::protobuf::DescriptorPool;
|
||||
using google::protobuf::io::Printer;
|
||||
using google::protobuf::util::SchemaGroupStripper;
|
||||
using google::protobuf::util::EnumScrubber;
|
||||
using google::protobuf::util::ExtensionStripper;
|
||||
using google::protobuf::util::FieldScrubber;
|
||||
|
||||
namespace google {
|
||||
namespace protobuf {
|
||||
namespace compiler {
|
||||
|
||||
namespace {
|
||||
|
||||
string StripProto(string filename) {
|
||||
return filename.substr(0, filename.rfind(".proto"));
|
||||
}
|
||||
|
||||
DescriptorPool* GetPool() {
|
||||
static DescriptorPool *pool = new DescriptorPool();
|
||||
return pool;
|
||||
}
|
||||
|
||||
} // namespace
|
||||
|
||||
class Proto2ToProto3Generator final : public CodeGenerator {
|
||||
public:
|
||||
bool GenerateAll(const std::vector<const FileDescriptor*>& files,
|
||||
const string& parameter,
|
||||
GeneratorContext* context,
|
||||
string* error) const {
|
||||
for (int i = 0; i < files.size(); i++) {
|
||||
for (auto file : files) {
|
||||
if (CanGenerate(file)) {
|
||||
Generate(file, parameter, context, error);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool Generate(const FileDescriptor* file,
|
||||
const string& parameter,
|
||||
GeneratorContext* context,
|
||||
string* error) const {
|
||||
FileDescriptorProto new_file;
|
||||
file->CopyTo(&new_file);
|
||||
SchemaGroupStripper::StripFile(file, &new_file);
|
||||
|
||||
EnumScrubber enum_scrubber;
|
||||
enum_scrubber.ScrubFile(&new_file);
|
||||
ExtensionStripper::StripFile(&new_file);
|
||||
FieldScrubber::ScrubFile(&new_file);
|
||||
new_file.set_syntax("proto3");
|
||||
|
||||
string filename = file->name();
|
||||
string basename = StripProto(filename);
|
||||
|
||||
std::vector<std::pair<string,string>> option_pairs;
|
||||
ParseGeneratorParameter(parameter, &option_pairs);
|
||||
|
||||
std::unique_ptr<google::protobuf::io::ZeroCopyOutputStream> output(
|
||||
context->Open(basename + ".proto"));
|
||||
string content = GetPool()->BuildFile(new_file)->DebugString();
|
||||
Printer printer(output.get(), '$');
|
||||
printer.WriteRaw(content.c_str(), content.size());
|
||||
|
||||
return true;
|
||||
}
|
||||
private:
|
||||
bool CanGenerate(const FileDescriptor* file) const {
|
||||
if (GetPool()->FindFileByName(file->name()) != nullptr) {
|
||||
return false;
|
||||
}
|
||||
for (int j = 0; j < file->dependency_count(); j++) {
|
||||
if (GetPool()->FindFileByName(file->dependency(j)->name()) == nullptr) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
for (int j = 0; j < file->public_dependency_count(); j++) {
|
||||
if (GetPool()->FindFileByName(
|
||||
file->public_dependency(j)->name()) == nullptr) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
for (int j = 0; j < file->weak_dependency_count(); j++) {
|
||||
if (GetPool()->FindFileByName(
|
||||
file->weak_dependency(j)->name()) == nullptr) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
} // namespace compiler
|
||||
} // namespace protobuf
|
||||
} // namespace google
|
||||
|
||||
int main(int argc, char* argv[]) {
|
||||
google::protobuf::compiler::Proto2ToProto3Generator generator;
|
||||
return google::protobuf::compiler::PluginMain(argc, argv, &generator);
|
||||
}
|
352
deps/protobuf/benchmarks/util/result_parser.py
vendored
Normal file
352
deps/protobuf/benchmarks/util/result_parser.py
vendored
Normal file
@ -0,0 +1,352 @@
|
||||
# This import depends on the automake rule protoc_middleman, please make sure
|
||||
# protoc_middleman has been built before run this file.
|
||||
import argparse
|
||||
import json
|
||||
import re
|
||||
import os.path
|
||||
# BEGIN OPENSOURCE
|
||||
import sys
|
||||
sys.path.append(os.path.join(os.path.dirname(os.path.realpath(__file__)), os.pardir))
|
||||
# END OPENSOURCE
|
||||
import tmp.benchmarks_pb2 as benchmarks_pb2
|
||||
|
||||
__file_size_map = {}
|
||||
|
||||
def __get_data_size(filename):
|
||||
if filename[0] != '/':
|
||||
filename = os.path.dirname(os.path.abspath(__file__)) + "/../" + filename
|
||||
if filename in __file_size_map:
|
||||
return __file_size_map[filename]
|
||||
benchmark_dataset = benchmarks_pb2.BenchmarkDataset()
|
||||
benchmark_dataset.ParseFromString(
|
||||
open(filename, "rb").read())
|
||||
size = 0
|
||||
count = 0
|
||||
for payload in benchmark_dataset.payload:
|
||||
size += len(payload)
|
||||
count += 1
|
||||
__file_size_map[filename] = (size, 1.0 * size / count)
|
||||
return size, 1.0 * size / count
|
||||
|
||||
|
||||
def __extract_file_name(file_name):
|
||||
name_list = re.split(r"[/\.]", file_name)
|
||||
short_file_name = ""
|
||||
for name in name_list:
|
||||
if name[:14] == "google_message":
|
||||
short_file_name = name
|
||||
return short_file_name
|
||||
|
||||
|
||||
__results = []
|
||||
|
||||
|
||||
# CPP results example:
|
||||
# [
|
||||
# "benchmarks": [
|
||||
# {
|
||||
# "bytes_per_second": int,
|
||||
# "cpu_time_ns": double,
|
||||
# "iterations": int,
|
||||
# "name: string,
|
||||
# "real_time_ns: double,
|
||||
# ...
|
||||
# },
|
||||
# ...
|
||||
# ],
|
||||
# ...
|
||||
# ]
|
||||
def __parse_cpp_result(filename):
|
||||
if filename == "":
|
||||
return
|
||||
if filename[0] != '/':
|
||||
filename = os.path.dirname(os.path.abspath(__file__)) + '/' + filename
|
||||
with open(filename, encoding="utf-8") as f:
|
||||
results = json.loads(f.read())
|
||||
for benchmark in results["benchmarks"]:
|
||||
data_filename = "".join(
|
||||
re.split("(_parse_|_serialize)", benchmark["name"])[0])
|
||||
behavior = benchmark["name"][len(data_filename) + 1:]
|
||||
if data_filename[:2] == "BM":
|
||||
data_filename = data_filename[3:]
|
||||
__results.append({
|
||||
"language": "cpp",
|
||||
"dataFilename": data_filename,
|
||||
"behavior": behavior,
|
||||
"throughput": benchmark["bytes_per_second"] / 2.0 ** 20
|
||||
})
|
||||
|
||||
|
||||
# Synthetic benchmark results example:
|
||||
# [
|
||||
# "benchmarks": [
|
||||
# {
|
||||
# "cpu_time_ns": double,
|
||||
# "iterations": int,
|
||||
# "name: string,
|
||||
# "real_time_ns: double,
|
||||
# ...
|
||||
# },
|
||||
# ...
|
||||
# ],
|
||||
# ...
|
||||
# ]
|
||||
def __parse_synthetic_result(filename):
|
||||
if filename == "":
|
||||
return
|
||||
if filename[0] != "/":
|
||||
filename = os.path.dirname(os.path.abspath(__file__)) + "/" + filename
|
||||
with open(filename, encoding="utf-8") as f:
|
||||
results = json.loads(f.read())
|
||||
for benchmark in results["benchmarks"]:
|
||||
__results.append({
|
||||
"language": "cpp",
|
||||
"dataFilename": "",
|
||||
"behavior": "synthetic",
|
||||
"throughput": 10.0**9 / benchmark["cpu_time_ns"]
|
||||
})
|
||||
|
||||
|
||||
# Python results example:
|
||||
# [
|
||||
# [
|
||||
# {
|
||||
# "filename": string,
|
||||
# "benchmarks": {
|
||||
# behavior: results,
|
||||
# ...
|
||||
# },
|
||||
# },
|
||||
# ...
|
||||
# ], #pure-python
|
||||
# ...
|
||||
# ]
|
||||
def __parse_python_result(filename):
|
||||
if filename == "":
|
||||
return
|
||||
if filename[0] != '/':
|
||||
filename = os.path.dirname(os.path.abspath(__file__)) + '/' + filename
|
||||
with open(filename, encoding="utf-8") as f:
|
||||
results_list = json.loads(f.read())
|
||||
for results in results_list:
|
||||
for result in results:
|
||||
_, avg_size = __get_data_size(result["filename"])
|
||||
for behavior in result["benchmarks"]:
|
||||
__results.append({
|
||||
"language": "python",
|
||||
"dataFilename": __extract_file_name(result["filename"]),
|
||||
"behavior": behavior,
|
||||
"throughput": result["benchmarks"][behavior]
|
||||
})
|
||||
|
||||
|
||||
# Java results example:
|
||||
# [
|
||||
# {
|
||||
# "id": string,
|
||||
# "instrumentSpec": {...},
|
||||
# "measurements": [
|
||||
# {
|
||||
# "weight": float,
|
||||
# "value": {
|
||||
# "magnitude": float,
|
||||
# "unit": string
|
||||
# },
|
||||
# ...
|
||||
# },
|
||||
# ...
|
||||
# ],
|
||||
# "run": {...},
|
||||
# "scenario": {
|
||||
# "benchmarkSpec": {
|
||||
# "methodName": string,
|
||||
# "parameters": {
|
||||
# defined parameters in the benchmark: parameters value
|
||||
# },
|
||||
# ...
|
||||
# },
|
||||
# ...
|
||||
# }
|
||||
#
|
||||
# },
|
||||
# ...
|
||||
# ]
|
||||
def __parse_java_result(filename):
|
||||
if filename == "":
|
||||
return
|
||||
if filename[0] != '/':
|
||||
filename = os.path.dirname(os.path.abspath(__file__)) + '/' + filename
|
||||
with open(filename, encoding="utf-8") as f:
|
||||
results = json.loads(f.read())
|
||||
for result in results:
|
||||
total_weight = 0
|
||||
total_value = 0
|
||||
for measurement in result["measurements"]:
|
||||
total_weight += measurement["weight"]
|
||||
total_value += measurement["value"]["magnitude"]
|
||||
avg_time = total_value * 1.0 / total_weight
|
||||
total_size, _ = __get_data_size(
|
||||
result["scenario"]["benchmarkSpec"]["parameters"]["dataFile"])
|
||||
__results.append({
|
||||
"language": "java",
|
||||
"throughput": total_size / avg_time * 1e9 / 2 ** 20,
|
||||
"behavior": result["scenario"]["benchmarkSpec"]["methodName"],
|
||||
"dataFilename": __extract_file_name(
|
||||
result["scenario"]["benchmarkSpec"]["parameters"]["dataFile"])
|
||||
})
|
||||
|
||||
|
||||
# Go benchmark results:
|
||||
#
|
||||
# goos: linux
|
||||
# goarch: amd64
|
||||
# Benchmark/.././datasets/google_message2/dataset.google_message2.pb/Unmarshal-12 3000 705784 ns/op
|
||||
# Benchmark/.././datasets/google_message2/dataset.google_message2.pb/Marshal-12 2000 634648 ns/op
|
||||
# Benchmark/.././datasets/google_message2/dataset.google_message2.pb/Size-12 5000 244174 ns/op
|
||||
# Benchmark/.././datasets/google_message2/dataset.google_message2.pb/Clone-12 300 4120954 ns/op
|
||||
# Benchmark/.././datasets/google_message2/dataset.google_message2.pb/Merge-12 300 4108632 ns/op
|
||||
# PASS
|
||||
# ok _/usr/local/google/home/yilunchong/mygit/protobuf/benchmarks 124.173s
|
||||
def __parse_go_result(filename):
|
||||
if filename == "":
|
||||
return
|
||||
if filename[0] != '/':
|
||||
filename = os.path.dirname(os.path.abspath(__file__)) + '/' + filename
|
||||
with open(filename, encoding="utf-8") as f:
|
||||
for line in f:
|
||||
result_list = re.split(r"[\ \t]+", line)
|
||||
if result_list[0][:9] != "Benchmark":
|
||||
continue
|
||||
first_slash_index = result_list[0].find('/')
|
||||
last_slash_index = result_list[0].rfind('/')
|
||||
full_filename = result_list[0][first_slash_index+1:last_slash_index]
|
||||
total_bytes, _ = __get_data_size(full_filename)
|
||||
behavior_with_suffix = result_list[0][last_slash_index+1:]
|
||||
last_dash = behavior_with_suffix.rfind("-")
|
||||
if last_dash == -1:
|
||||
behavior = behavior_with_suffix
|
||||
else:
|
||||
behavior = behavior_with_suffix[:last_dash]
|
||||
__results.append({
|
||||
"dataFilename": __extract_file_name(full_filename),
|
||||
"throughput": total_bytes / float(result_list[2]) * 1e9 / 2 ** 20,
|
||||
"behavior": behavior,
|
||||
"language": "go"
|
||||
})
|
||||
|
||||
|
||||
# Self built json results example:
|
||||
#
|
||||
# [
|
||||
# {
|
||||
# "filename": string,
|
||||
# "benchmarks": {
|
||||
# behavior: results,
|
||||
# ...
|
||||
# },
|
||||
# },
|
||||
# ...
|
||||
# ]
|
||||
def __parse_custom_result(filename, language):
|
||||
if filename == "":
|
||||
return
|
||||
if filename[0] != '/':
|
||||
filename = os.path.dirname(os.path.abspath(__file__)) + '/' + filename
|
||||
with open(filename, encoding="utf-8") as f:
|
||||
results = json.loads(f.read())
|
||||
for result in results:
|
||||
_, avg_size = __get_data_size(result["filename"])
|
||||
for behavior in result["benchmarks"]:
|
||||
__results.append({
|
||||
"language": language,
|
||||
"dataFilename": __extract_file_name(result["filename"]),
|
||||
"behavior": behavior,
|
||||
"throughput": result["benchmarks"][behavior]
|
||||
})
|
||||
|
||||
|
||||
def __parse_js_result(filename, language):
|
||||
return __parse_custom_result(filename, language)
|
||||
|
||||
def __parse_php_result(filename, language):
|
||||
return __parse_custom_result(filename, language)
|
||||
|
||||
|
||||
def get_result_from_file(cpp_file="",
|
||||
java_file="",
|
||||
python_file="",
|
||||
go_file="",
|
||||
synthetic_file="",
|
||||
node_file="",
|
||||
php_c_file="",
|
||||
php_file=""):
|
||||
results = {}
|
||||
if cpp_file != "":
|
||||
__parse_cpp_result(cpp_file)
|
||||
if java_file != "":
|
||||
__parse_java_result(java_file)
|
||||
if python_file != "":
|
||||
__parse_python_result(python_file)
|
||||
if go_file != "":
|
||||
__parse_go_result(go_file)
|
||||
if synthetic_file != "":
|
||||
__parse_synthetic_result(synthetic_file)
|
||||
if node_file != "":
|
||||
__parse_js_result(node_file, "node")
|
||||
if php_file != "":
|
||||
__parse_php_result(php_file, "php")
|
||||
if php_c_file != "":
|
||||
__parse_php_result(php_c_file, "php")
|
||||
|
||||
return __results
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument(
|
||||
"-cpp",
|
||||
"--cpp_input_file",
|
||||
help="The CPP benchmark result file's name",
|
||||
default="")
|
||||
parser.add_argument(
|
||||
"-java",
|
||||
"--java_input_file",
|
||||
help="The Java benchmark result file's name",
|
||||
default="")
|
||||
parser.add_argument(
|
||||
"-python",
|
||||
"--python_input_file",
|
||||
help="The Python benchmark result file's name",
|
||||
default="")
|
||||
parser.add_argument(
|
||||
"-go",
|
||||
"--go_input_file",
|
||||
help="The golang benchmark result file's name",
|
||||
default="")
|
||||
parser.add_argument(
|
||||
"-node",
|
||||
"--node_input_file",
|
||||
help="The node.js benchmark result file's name",
|
||||
default="")
|
||||
parser.add_argument(
|
||||
"-php",
|
||||
"--php_input_file",
|
||||
help="The pure php benchmark result file's name",
|
||||
default="")
|
||||
parser.add_argument(
|
||||
"-php_c",
|
||||
"--php_c_input_file",
|
||||
help="The php with c ext benchmark result file's name",
|
||||
default="")
|
||||
args = parser.parse_args()
|
||||
|
||||
results = get_result_from_file(
|
||||
cpp_file=args.cpp_input_file,
|
||||
java_file=args.java_input_file,
|
||||
python_file=args.python_input_file,
|
||||
go_file=args.go_input_file,
|
||||
node_file=args.node_input_file,
|
||||
php_file=args.php_input_file,
|
||||
php_c_file=args.php_c_input_file,
|
||||
)
|
||||
print(json.dumps(results, indent=2))
|
107
deps/protobuf/benchmarks/util/result_uploader.py
vendored
Normal file
107
deps/protobuf/benchmarks/util/result_uploader.py
vendored
Normal file
@ -0,0 +1,107 @@
|
||||
from __future__ import print_function
|
||||
from __future__ import absolute_import
|
||||
import argparse
|
||||
import os
|
||||
import re
|
||||
import copy
|
||||
import uuid
|
||||
import calendar
|
||||
import time
|
||||
import datetime
|
||||
|
||||
from util import big_query_utils
|
||||
from util import result_parser
|
||||
|
||||
_PROJECT_ID = 'grpc-testing'
|
||||
_DATASET = 'protobuf_benchmark_result'
|
||||
_TABLE = 'opensource_result_v2'
|
||||
_NOW = "%d%02d%02d" % (datetime.datetime.now().year,
|
||||
datetime.datetime.now().month,
|
||||
datetime.datetime.now().day)
|
||||
|
||||
_INITIAL_TIME = calendar.timegm(time.gmtime())
|
||||
|
||||
def get_metadata():
|
||||
build_number = os.getenv('BUILD_NUMBER')
|
||||
build_url = os.getenv('BUILD_URL')
|
||||
job_name = os.getenv('JOB_NAME')
|
||||
git_commit = os.getenv('GIT_COMMIT')
|
||||
# actual commit is the actual head of PR that is getting tested
|
||||
git_actual_commit = os.getenv('ghprbActualCommit')
|
||||
|
||||
utc_timestamp = str(calendar.timegm(time.gmtime()))
|
||||
metadata = {'created': utc_timestamp}
|
||||
|
||||
if build_number:
|
||||
metadata['buildNumber'] = build_number
|
||||
if build_url:
|
||||
metadata['buildUrl'] = build_url
|
||||
if job_name:
|
||||
metadata['jobName'] = job_name
|
||||
if git_commit:
|
||||
metadata['gitCommit'] = git_commit
|
||||
if git_actual_commit:
|
||||
metadata['gitActualCommit'] = git_actual_commit
|
||||
|
||||
return metadata
|
||||
|
||||
|
||||
def upload_result(result_list, metadata):
|
||||
for result in result_list:
|
||||
new_result = {}
|
||||
new_result["metric"] = "throughput"
|
||||
new_result["value"] = result["throughput"]
|
||||
new_result["unit"] = "MB/s"
|
||||
new_result["test"] = "protobuf_benchmark"
|
||||
new_result["product_name"] = "protobuf"
|
||||
labels_string = ""
|
||||
for key in result:
|
||||
labels_string += ",|%s:%s|" % (key, result[key])
|
||||
new_result["labels"] = labels_string[1:]
|
||||
new_result["timestamp"] = _INITIAL_TIME
|
||||
print(labels_string)
|
||||
|
||||
bq = big_query_utils.create_big_query()
|
||||
row = big_query_utils.make_row(str(uuid.uuid4()), new_result)
|
||||
if not big_query_utils.insert_rows(bq, _PROJECT_ID, _DATASET,
|
||||
_TABLE + "$" + _NOW,
|
||||
[row]):
|
||||
print('Error when uploading result', new_result)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("-cpp", "--cpp_input_file",
|
||||
help="The CPP benchmark result file's name",
|
||||
default="")
|
||||
parser.add_argument("-java", "--java_input_file",
|
||||
help="The Java benchmark result file's name",
|
||||
default="")
|
||||
parser.add_argument("-python", "--python_input_file",
|
||||
help="The Python benchmark result file's name",
|
||||
default="")
|
||||
parser.add_argument("-go", "--go_input_file",
|
||||
help="The golang benchmark result file's name",
|
||||
default="")
|
||||
parser.add_argument("-node", "--node_input_file",
|
||||
help="The node.js benchmark result file's name",
|
||||
default="")
|
||||
parser.add_argument("-php", "--php_input_file",
|
||||
help="The pure php benchmark result file's name",
|
||||
default="")
|
||||
parser.add_argument("-php_c", "--php_c_input_file",
|
||||
help="The php with c ext benchmark result file's name",
|
||||
default="")
|
||||
args = parser.parse_args()
|
||||
|
||||
metadata = get_metadata()
|
||||
print("uploading results...")
|
||||
upload_result(result_parser.get_result_from_file(
|
||||
cpp_file=args.cpp_input_file,
|
||||
java_file=args.java_input_file,
|
||||
python_file=args.python_input_file,
|
||||
go_file=args.go_input_file,
|
||||
node_file=args.node_input_file,
|
||||
php_file=args.php_input_file,
|
||||
php_c_file=args.php_c_input_file,
|
||||
), metadata)
|
194
deps/protobuf/benchmarks/util/schema_proto2_to_proto3_util.h
vendored
Normal file
194
deps/protobuf/benchmarks/util/schema_proto2_to_proto3_util.h
vendored
Normal file
@ -0,0 +1,194 @@
|
||||
#ifndef PROTOBUF_BENCHMARKS_UTIL_SCHEMA_PROTO2_TO_PROTO3_UTIL_H_
|
||||
#define PROTOBUF_BENCHMARKS_UTIL_SCHEMA_PROTO2_TO_PROTO3_UTIL_H_
|
||||
|
||||
#include "google/protobuf/message.h"
|
||||
#include "google/protobuf/descriptor.h"
|
||||
#include "google/protobuf/descriptor.pb.h"
|
||||
|
||||
#include <sstream>
|
||||
#include <algorithm>
|
||||
|
||||
using google::protobuf::Descriptor;
|
||||
using google::protobuf::DescriptorProto;
|
||||
using google::protobuf::FileDescriptorProto;
|
||||
using google::protobuf::FieldDescriptorProto;
|
||||
using google::protobuf::Message;
|
||||
using google::protobuf::EnumValueDescriptorProto;
|
||||
|
||||
namespace google {
|
||||
namespace protobuf {
|
||||
namespace util {
|
||||
|
||||
class SchemaGroupStripper {
|
||||
|
||||
public:
|
||||
static void StripFile(const FileDescriptor* old_file,
|
||||
FileDescriptorProto *file) {
|
||||
for (int i = file->mutable_message_type()->size() - 1; i >= 0; i--) {
|
||||
if (IsMessageSet(old_file->message_type(i))) {
|
||||
file->mutable_message_type()->DeleteSubrange(i, 1);
|
||||
continue;
|
||||
}
|
||||
StripMessage(old_file->message_type(i), file->mutable_message_type(i));
|
||||
}
|
||||
for (int i = file->mutable_extension()->size() - 1; i >= 0; i--) {
|
||||
auto field = old_file->extension(i);
|
||||
if (field->type() == FieldDescriptor::TYPE_GROUP ||
|
||||
IsMessageSet(field->message_type()) ||
|
||||
IsMessageSet(field->containing_type())) {
|
||||
file->mutable_extension()->DeleteSubrange(i, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private:
|
||||
static bool IsMessageSet(const Descriptor *descriptor) {
|
||||
if (descriptor != nullptr
|
||||
&& descriptor->options().message_set_wire_format()) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
static void StripMessage(const Descriptor *old_message,
|
||||
DescriptorProto *new_message) {
|
||||
for (int i = new_message->mutable_field()->size() - 1; i >= 0; i--) {
|
||||
if (old_message->field(i)->type() == FieldDescriptor::TYPE_GROUP ||
|
||||
IsMessageSet(old_message->field(i)->message_type())) {
|
||||
new_message->mutable_field()->DeleteSubrange(i, 1);
|
||||
}
|
||||
}
|
||||
for (int i = new_message->mutable_extension()->size() - 1; i >= 0; i--) {
|
||||
auto field_type_name = new_message->mutable_extension(i)->type_name();
|
||||
if (old_message->extension(i)->type() == FieldDescriptor::TYPE_GROUP ||
|
||||
IsMessageSet(old_message->extension(i)->containing_type()) ||
|
||||
IsMessageSet(old_message->extension(i)->message_type())) {
|
||||
new_message->mutable_extension()->DeleteSubrange(i, 1);
|
||||
}
|
||||
}
|
||||
for (int i = 0; i < new_message->mutable_nested_type()->size(); i++) {
|
||||
StripMessage(old_message->nested_type(i),
|
||||
new_message->mutable_nested_type(i));
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
class EnumScrubber {
|
||||
|
||||
public:
|
||||
EnumScrubber()
|
||||
: total_added_(0) {
|
||||
}
|
||||
|
||||
void ScrubFile(FileDescriptorProto *file) {
|
||||
for (int i = 0; i < file->enum_type_size(); i++) {
|
||||
ScrubEnum(file->mutable_enum_type(i));
|
||||
}
|
||||
for (int i = 0; i < file->mutable_message_type()->size(); i++) {
|
||||
ScrubMessage(file->mutable_message_type(i));
|
||||
}
|
||||
}
|
||||
|
||||
private:
|
||||
void ScrubEnum(EnumDescriptorProto *enum_type) {
|
||||
if (enum_type->value(0).number() != 0) {
|
||||
bool has_zero = false;
|
||||
for (int j = 0; j < enum_type->value().size(); j++) {
|
||||
if (enum_type->value(j).number() == 0) {
|
||||
EnumValueDescriptorProto temp_enum_value;
|
||||
temp_enum_value.CopyFrom(enum_type->value(j));
|
||||
enum_type->mutable_value(j)->CopyFrom(enum_type->value(0));
|
||||
enum_type->mutable_value(0)->CopyFrom(temp_enum_value);
|
||||
has_zero = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!has_zero) {
|
||||
enum_type->mutable_value()->Add();
|
||||
for (int i = enum_type->mutable_value()->size() - 1; i > 0; i--) {
|
||||
enum_type->mutable_value(i)->CopyFrom(
|
||||
*enum_type->mutable_value(i - 1));
|
||||
}
|
||||
enum_type->mutable_value(0)->set_number(0);
|
||||
enum_type->mutable_value(0)->set_name("ADDED_ZERO_VALUE_" +
|
||||
std::to_string(total_added_++));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void ScrubMessage(DescriptorProto *message_type) {
|
||||
for (int i = 0; i < message_type->mutable_enum_type()->size(); i++) {
|
||||
ScrubEnum(message_type->mutable_enum_type(i));
|
||||
}
|
||||
for (int i = 0; i < message_type->mutable_nested_type()->size(); i++) {
|
||||
ScrubMessage(message_type->mutable_nested_type(i));
|
||||
}
|
||||
}
|
||||
|
||||
int total_added_;
|
||||
};
|
||||
|
||||
class ExtensionStripper {
|
||||
public:
|
||||
static void StripFile(FileDescriptorProto *file) {
|
||||
for (int i = 0; i < file->mutable_message_type()->size(); i++) {
|
||||
StripMessage(file->mutable_message_type(i));
|
||||
}
|
||||
file->mutable_extension()->Clear();
|
||||
}
|
||||
private:
|
||||
static void StripMessage(DescriptorProto *message_type) {
|
||||
message_type->mutable_extension()->Clear();
|
||||
message_type->clear_extension_range();
|
||||
for (int i = 0; i < message_type->mutable_nested_type()->size(); i++) {
|
||||
StripMessage(message_type->mutable_nested_type(i));
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
class FieldScrubber {
|
||||
public:
|
||||
static void ScrubFile(FileDescriptorProto *file) {
|
||||
for (int i = 0; i < file->mutable_message_type()->size(); i++) {
|
||||
ScrubMessage(file->mutable_message_type(i));
|
||||
}
|
||||
for (int i = 0; i < file->mutable_extension()->size(); i++) {
|
||||
file->mutable_extension(i)->clear_default_value();
|
||||
if (ShouldClearLabel(file->mutable_extension(i))) {
|
||||
file->mutable_extension(i)->clear_label();
|
||||
}
|
||||
}
|
||||
}
|
||||
private:
|
||||
static bool ShouldClearLabel(const FieldDescriptorProto *field) {
|
||||
return field->label() == FieldDescriptorProto::LABEL_REQUIRED;
|
||||
}
|
||||
|
||||
static void ScrubMessage(DescriptorProto *message_type) {
|
||||
message_type->mutable_extension()->Clear();
|
||||
for (int i = 0; i < message_type->mutable_extension()->size(); i++) {
|
||||
message_type->mutable_extension(i)->clear_default_value();
|
||||
if (ShouldClearLabel(message_type->mutable_extension(i))) {
|
||||
message_type->mutable_extension(i)->clear_label();
|
||||
}
|
||||
}
|
||||
for (int i = 0; i < message_type->mutable_field()->size(); i++) {
|
||||
message_type->mutable_field(i)->clear_default_value();
|
||||
if (ShouldClearLabel(message_type->mutable_field(i))) {
|
||||
message_type->mutable_field(i)->clear_label();
|
||||
}
|
||||
}
|
||||
for (int i = 0; i < message_type->mutable_nested_type()->size(); i++) {
|
||||
ScrubMessage(message_type->mutable_nested_type(i));
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
} // namespace util
|
||||
} // namespace protobuf
|
||||
} // namespace google
|
||||
|
||||
#endif // PROTOBUF_BENCHMARKS_UTIL_SCHEMA_PROTO2_TO_PROTO3_UTIL_H_
|
Reference in New Issue
Block a user