From b832cc09a99f00e0a933b8f79e576afe6a2c97e7 Mon Sep 17 00:00:00 2001 From: Kristian Holme Date: Sat, 13 Jun 2026 16:13:49 +0200 Subject: [PATCH] Update ProtoBuf to 1.x and regenerate protobuf definitions. Regenerate src/protojl with ProtoBuf.jl 1.3 to use the current decode API and remove the deprecated-codegen warning, bumping Julia compat to 1.10 accordingly. Co-authored-by: Cursor --- Project.toml | 6 +- gen/Project.toml | 2 +- gen/compile_proto.jl | 17 +- gen/download_proto_source | 4 +- src/TensorBoardLogger.jl | 5 - src/hparams.jl | 45 +-- .../tensorboard/google/protobuf/any_pb.jl | 11 +- .../google/protobuf/wrappers_pb.jl | 67 ++-- .../custom_scalar/tensorboard/layout_pb.jl | 41 +-- .../custom_scalar/tensorboard/tensorboard.jl | 2 +- .../hparams/google/protobuf/struct_pb.jl | 101 +++--- .../hparams/tensorboard/hparams/api_pb.jl | 165 +++++---- .../tensorboard/hparams/hparams_util_pb.jl | 23 +- .../tensorboard/hparams/plugin_data_pb.jl | 31 +- .../hparams/tensorboard/tensorboard.jl | 2 +- .../text/tensorboard/plugin_data_pb.jl | 11 +- .../plugins/text/tensorboard/tensorboard.jl | 2 +- .../tensorboard/allocation_description_pb.jl | 11 +- .../tensorboard/tensorboard/api_def_pb.jl | 35 +- .../tensorboard/tensorboard/attr_value_pb.jl | 112 +++--- .../tensorboard/tensorboard/cluster_pb.jl | 17 +- .../tensorboard/tensorboard/config_pb.jl | 333 ++++++++++++++---- .../tensorboard/coordination_config_pb.jl | 41 ++- .../tensorboard/tensorboard/cost_graph_pb.jl | 39 +- .../tensorboard/cpp_shape_inference_pb.jl | 29 +- .../tensorboard/tensorboard/debug_pb.jl | 29 +- .../tensorboard/tensorboard/event_pb.jl | 65 ++-- .../tensorboard/tensorboard/full_type_pb.jl | 17 +- .../tensorboard/tensorboard/function_pb.jl | 35 +- .../tensorboard/graph_debug_info_pb.jl | 59 +++- .../tensorboard/tensorboard/graph_pb.jl | 11 +- .../tensorboard/tensorboard/histogram_pb.jl | 31 +- .../tensorboard/tensorboard/meta_graph_pb.jl | 291 +++++++-------- .../tensorboard/tensorboard/node_def_pb.jl | 17 +- .../tensorboard/tensorboard/op_def_pb.jl | 35 +- .../tensorboard/resource_handle_pb.jl | 17 +- .../tensorboard/rewriter_config_pb.jl | 41 ++- .../tensorboard/tensorboard/rpc_options_pb.jl | 11 +- .../tensorboard/saved_object_graph_pb.jl | 301 ++++++++-------- .../tensorboard/tensorboard/saver_pb.jl | 15 +- .../tensorboard/tensorboard/step_stats_pb.jl | 47 +-- .../tensorboard/tensorboard/struct_tb_pb.jl | 291 ++++++++------- .../tensorboard/tensorboard/summary_pb.jl | 51 +-- .../tensorboard/tensor_description_pb.jl | 11 +- .../tensorboard/tensorboard/tensor_pb.jl | 39 +- .../tensorboard/tensor_shape_pb.jl | 17 +- .../tensorboard/tensorboard/tfprof_log_pb.jl | 98 +++--- .../tensorboard/trackable_object_graph_pb.jl | 41 +-- .../tensorboard/tensorboard/types_pb.jl | 13 +- .../tensorboard/tensorboard/variable_pb.jl | 17 +- .../tensorboard/verifier_config_pb.jl | 11 +- .../tensorboard/tensorboard/versions_pb.jl | 11 +- src/utils.jl | 10 - 53 files changed, 1533 insertions(+), 1251 deletions(-) diff --git a/Project.toml b/Project.toml index e1670783..43d83eab 100644 --- a/Project.toml +++ b/Project.toml @@ -1,7 +1,7 @@ name = "TensorBoardLogger" uuid = "899adc3e-224a-11e9-021f-63837185c80f" -authors = ["Filippo Vicentini "] version = "0.1.26" +authors = ["Filippo Vicentini "] [deps] CRC32c = "8bf52ea8-c179-5cab-976a-9e18b702a9bc" @@ -14,10 +14,10 @@ StatsBase = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91" [compat] FileIO = "1.2.3" ImageCore = "0.8.1, 0.9, 0.10" -ProtoBuf = "1.0.11" +ProtoBuf = "1" Requires = "0.5, 1" StatsBase = "0.27, 0.28, 0.29, 0.30, 0.31, 0.32, 0.33, 0.34" -julia = "1.6" +julia = "1.10" [extras] Cairo = "159f3aea-2a34-519c-b102-8c37f9878175" diff --git a/gen/Project.toml b/gen/Project.toml index f9579661..45b41240 100644 --- a/gen/Project.toml +++ b/gen/Project.toml @@ -5,4 +5,4 @@ Glob = "c27321d9-0574-5035-807b-f59d2c89b15c" ProtoBuf = "3349acd9-ac6a-5e09-bcdb-63829b23a429" [compat] -ProtoBuf = "0.9.1" +ProtoBuf = "1" diff --git a/gen/compile_proto.jl b/gen/compile_proto.jl index 9393ad57..643e2974 100644 --- a/gen/compile_proto.jl +++ b/gen/compile_proto.jl @@ -58,8 +58,23 @@ plugins = ["custom_scalar", "hparams", "text"] append!(files_to_include, (process_module("tensorboard/plugins/$plugin", base_module="tensorboard") for plugin in plugins)...) +const PLUGIN_MODULE_NAMES = Dict( + "text" => "tensorboard_plugin_text", + "hparams" => "tensorboard_plugin_hparams", + "custom_scalar" => "tensorboard_plugin_custom_scalar", +) + +for (plugin, module_name) in PLUGIN_MODULE_NAMES + wrapper = out_dir / "tensorboard" / "plugins" / plugin / "tensorboard" / "tensorboard.jl" + if isfile(wrapper) + content = read(wrapper, String) + write(wrapper, replace(content, "module tensorboard" => "module $module_name", "end # module tensorboard" => "end # module $module_name")) + end +end + # files_to_include contains all the proto files, can be used for printing and inspection println("generated code for \n$files_to_include") # Finally move the output directory to the src folder -mv(out_dir, TBL_root/"src"/"protojl") +rm(TBL_root / "src" / "protojl"; force = true, recursive = true) +mv(out_dir, TBL_root / "src" / "protojl") diff --git a/gen/download_proto_source b/gen/download_proto_source index 46b5303c..a27f95b4 100755 --- a/gen/download_proto_source +++ b/gen/download_proto_source @@ -34,8 +34,10 @@ mv proto/tensorboard/compat/proto/struct.proto proto/tensorboard/compat/proto/st if [[ $(uname) == "Darwin" ]]; then echo "Workaround for sed on macos." LC_ALL=C + grep -rl "compat/proto/struct.proto" . | xargs sed -i '' -e 's+compat/proto/struct\.proto+compat/proto/struct_tb\.proto+g' +else + grep -rl "compat/proto/struct.proto" . | xargs sed -i -e 's+compat/proto/struct\.proto+compat/proto/struct_tb\.proto+g' fi -grep -rl "compat/proto/struct.proto" . | xargs sed -i '' -e 's+compat/proto/struct\.proto+compat/proto/struct_tb\.proto+g' cd .. mv tmp/proto proto diff --git a/src/TensorBoardLogger.jl b/src/TensorBoardLogger.jl index 903eff80..57e916f0 100644 --- a/src/TensorBoardLogger.jl +++ b/src/TensorBoardLogger.jl @@ -7,11 +7,6 @@ using ImageCore: colorview, channelview using ImageCore: Colorant, Gray, GrayA, RGB, RGBA using FileIO: FileIO, @format_str, Stream, save, load -# hasproperty is not defined before 1.2. This is Compat.hasproperty -if VERSION < v"1.2.0-DEV.272" - using ProtoBuf: hasproperty -end - #TODO: Is there a more lightweight package for compmuting an histogram? using StatsBase: Histogram, fit diff --git a/src/hparams.jl b/src/hparams.jl index f0fc7385..e0bfd18a 100644 --- a/src/hparams.jl +++ b/src/hparams.jl @@ -1,7 +1,6 @@ import .tensorboard_plugin_hparams.hparams: var"#DataType" as HParamDataType, DatasetType as HDatasetType import .tensorboard_plugin_hparams.google.protobuf: ListValue as HListValue, Value as HValue import .tensorboard_plugin_hparams.hparams as HP -import ProtoBuf as PB struct HParamRealDomain min_value::Float64 @@ -66,55 +65,13 @@ function hparam_info(c::HParamConfig) dtype = _to_proto_hparam_dtype(Val(datatype)) converted_domain = _convert_hparam_domain(domain) - return HP.HParamInfo(c.name, c.displayname, c.description, dtype, converted_domain) + return HP.HParamInfo(c.name, c.displayname, c.description, dtype, converted_domain, false) end function metric_info(c::MetricConfig) mname = HP.MetricName("", c.name) return HP.MetricInfo(mname, c.displayname, c.description, HDatasetType.DATASET_UNKNOWN) end -# Dictionary serialisation in ProtoBuf does not work for this specific map type -# and must be overloaded so that it can be parsed. The format was derived by -# looking at the binary output of a log file created by tensorboardX. -# These protobuf overloads should be removed once https://github.com/JuliaIO/ProtoBuf.jl/pull/234 is merged. -function PB.encode(e::ProtoEncoder, i::Int, x::Dict{String,HValue}) - for (k, v) in x - PB.Codecs.encode_tag(e, 1, PB.Codecs.LENGTH_DELIMITED) - total_size = PB.Codecs._encoded_size(k, 1) + PB.Codecs._encoded_size(v, 2) - PB.Codecs.vbyte_encode(e.io, UInt32(total_size)) # Add two for the wire type and length - PB.Codecs.encode(e, 1, k) - PB.Codecs.encode(e, 2, v) - end - return nothing -end - -# Similarly, we must overload the size calculation to take into account the new -# format. -function PB.Codecs._encoded_size(d::Dict{String,HValue}, i::Int) - mapreduce(x->begin - total_size = PB.Codecs._encoded_size(x.first, 1) + PB.Codecs._encoded_size(x.second, 2) - return 1 + PB.Codecs._varint_size(total_size) + total_size - end, +, d, init=0) -end - -function PB.Codecs.decode!(d::ProtoDecoder, buffer::Dict{String,HValue}) - len = PB.Codecs.vbyte_decode(d.io, UInt32) - endpos = position(d.io) + len - while position(d.io) < endpos - pair_field_number, pair_wire_type = PB.Codecs.decode_tag(d) - pair_len = PB.Codecs.vbyte_decode(d.io, UInt32) - pair_end_pos = position(d.io) + pair_len - field_number, wire_type = PB.Codecs.decode_tag(d) - key = PB.Codecs.decode(d, K) - field_number, wire_type = PB.Codecs.decode_tag(d) - val = PB.Codecs.decode(d, Ref{V}) - @assert position(d.io) == pair_end_pos - buffer[key] = val - end - @assert position(d.io) == endpos - nothing -end - """ write_hparams!(logger::TBLogger, hparams::Dict{String, Any}, metrics::AbstractArray{String}) diff --git a/src/protojl/tensorboard/google/protobuf/any_pb.jl b/src/protojl/tensorboard/google/protobuf/any_pb.jl index d4261894..63f564ef 100644 --- a/src/protojl/tensorboard/google/protobuf/any_pb.jl +++ b/src/protojl/tensorboard/google/protobuf/any_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.779 -# original file: /home/lior/.julia/dev/ProtoBuf/src/google/protobuf/any.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: google/protobuf/any.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export var"#Any" + struct var"#Any" type_url::String value::Vector{UInt8} @@ -14,17 +15,17 @@ end PB.default_values(::Type{var"#Any"}) = (;type_url = "", value = UInt8[]) PB.field_numbers(::Type{var"#Any"}) = (;type_url = 1, value = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"#Any"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"#Any"}, _endpos::Int=0, _group::Bool=false) type_url = "" value = UInt8[] - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 type_url = PB.decode(d, String) elseif field_number == 2 value = PB.decode(d, Vector{UInt8}) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"#Any"(type_url, value) diff --git a/src/protojl/tensorboard/google/protobuf/wrappers_pb.jl b/src/protojl/tensorboard/google/protobuf/wrappers_pb.jl index ecd7da39..234eb3ff 100644 --- a/src/protojl/tensorboard/google/protobuf/wrappers_pb.jl +++ b/src/protojl/tensorboard/google/protobuf/wrappers_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.780 -# original file: /home/lior/.julia/dev/ProtoBuf/src/google/protobuf/wrappers.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: google/protobuf/wrappers.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -8,20 +8,21 @@ using ProtoBuf.EnumX: @enumx export BoolValue, Int64Value, FloatValue, Int32Value, DoubleValue, UInt64Value, UInt32Value export BytesValue, StringValue + struct BoolValue value::Bool end PB.default_values(::Type{BoolValue}) = (;value = false) PB.field_numbers(::Type{BoolValue}) = (;value = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:BoolValue}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:BoolValue}, _endpos::Int=0, _group::Bool=false) value = false - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 value = PB.decode(d, Bool) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return BoolValue(value) @@ -44,14 +45,14 @@ end PB.default_values(::Type{Int64Value}) = (;value = zero(Int64)) PB.field_numbers(::Type{Int64Value}) = (;value = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Int64Value}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Int64Value}, _endpos::Int=0, _group::Bool=false) value = zero(Int64) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 value = PB.decode(d, Int64) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return Int64Value(value) @@ -74,14 +75,14 @@ end PB.default_values(::Type{FloatValue}) = (;value = zero(Float32)) PB.field_numbers(::Type{FloatValue}) = (;value = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:FloatValue}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:FloatValue}, _endpos::Int=0, _group::Bool=false) value = zero(Float32) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 value = PB.decode(d, Float32) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return FloatValue(value) @@ -89,12 +90,12 @@ end function PB.encode(e::PB.AbstractProtoEncoder, x::FloatValue) initpos = position(e.io) - x.value != zero(Float32) && PB.encode(e, 1, x.value) + x.value !== zero(Float32) && PB.encode(e, 1, x.value) return position(e.io) - initpos end function PB._encoded_size(x::FloatValue) encoded_size = 0 - x.value != zero(Float32) && (encoded_size += PB._encoded_size(x.value, 1)) + x.value !== zero(Float32) && (encoded_size += PB._encoded_size(x.value, 1)) return encoded_size end @@ -104,14 +105,14 @@ end PB.default_values(::Type{Int32Value}) = (;value = zero(Int32)) PB.field_numbers(::Type{Int32Value}) = (;value = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Int32Value}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Int32Value}, _endpos::Int=0, _group::Bool=false) value = zero(Int32) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 value = PB.decode(d, Int32) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return Int32Value(value) @@ -134,14 +135,14 @@ end PB.default_values(::Type{DoubleValue}) = (;value = zero(Float64)) PB.field_numbers(::Type{DoubleValue}) = (;value = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DoubleValue}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DoubleValue}, _endpos::Int=0, _group::Bool=false) value = zero(Float64) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 value = PB.decode(d, Float64) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return DoubleValue(value) @@ -149,12 +150,12 @@ end function PB.encode(e::PB.AbstractProtoEncoder, x::DoubleValue) initpos = position(e.io) - x.value != zero(Float64) && PB.encode(e, 1, x.value) + x.value !== zero(Float64) && PB.encode(e, 1, x.value) return position(e.io) - initpos end function PB._encoded_size(x::DoubleValue) encoded_size = 0 - x.value != zero(Float64) && (encoded_size += PB._encoded_size(x.value, 1)) + x.value !== zero(Float64) && (encoded_size += PB._encoded_size(x.value, 1)) return encoded_size end @@ -164,14 +165,14 @@ end PB.default_values(::Type{UInt64Value}) = (;value = zero(UInt64)) PB.field_numbers(::Type{UInt64Value}) = (;value = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:UInt64Value}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:UInt64Value}, _endpos::Int=0, _group::Bool=false) value = zero(UInt64) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 value = PB.decode(d, UInt64) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return UInt64Value(value) @@ -194,14 +195,14 @@ end PB.default_values(::Type{UInt32Value}) = (;value = zero(UInt32)) PB.field_numbers(::Type{UInt32Value}) = (;value = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:UInt32Value}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:UInt32Value}, _endpos::Int=0, _group::Bool=false) value = zero(UInt32) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 value = PB.decode(d, UInt32) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return UInt32Value(value) @@ -224,14 +225,14 @@ end PB.default_values(::Type{BytesValue}) = (;value = UInt8[]) PB.field_numbers(::Type{BytesValue}) = (;value = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:BytesValue}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:BytesValue}, _endpos::Int=0, _group::Bool=false) value = UInt8[] - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 value = PB.decode(d, Vector{UInt8}) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return BytesValue(value) @@ -254,14 +255,14 @@ end PB.default_values(::Type{StringValue}) = (;value = "") PB.field_numbers(::Type{StringValue}) = (;value = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:StringValue}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:StringValue}, _endpos::Int=0, _group::Bool=false) value = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 value = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return StringValue(value) diff --git a/src/protojl/tensorboard/plugins/custom_scalar/tensorboard/layout_pb.jl b/src/protojl/tensorboard/plugins/custom_scalar/tensorboard/layout_pb.jl index 38306b7c..014723d9 100644 --- a/src/protojl/tensorboard/plugins/custom_scalar/tensorboard/layout_pb.jl +++ b/src/protojl/tensorboard/plugins/custom_scalar/tensorboard/layout_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.964 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/plugins/custom_scalar/layout.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/plugins/custom_scalar/layout.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -8,20 +8,21 @@ using ProtoBuf.EnumX: @enumx export MultilineChartContent, var"MarginChartContent.Series", MarginChartContent, Chart export Category, Layout + struct MultilineChartContent tag::Vector{String} end PB.default_values(::Type{MultilineChartContent}) = (;tag = Vector{String}()) PB.field_numbers(::Type{MultilineChartContent}) = (;tag = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MultilineChartContent}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MultilineChartContent}, _endpos::Int=0, _group::Bool=false) tag = PB.BufferedVector{String}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, tag) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return MultilineChartContent(tag[]) @@ -46,11 +47,11 @@ end PB.default_values(::Type{var"MarginChartContent.Series"}) = (;value = "", lower = "", upper = "") PB.field_numbers(::Type{var"MarginChartContent.Series"}) = (;value = 1, lower = 2, upper = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"MarginChartContent.Series"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"MarginChartContent.Series"}, _endpos::Int=0, _group::Bool=false) value = "" lower = "" upper = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 value = PB.decode(d, String) @@ -59,7 +60,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"MarginChartContent.S elseif field_number == 3 upper = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"MarginChartContent.Series"(value, lower, upper) @@ -86,14 +87,14 @@ end PB.default_values(::Type{MarginChartContent}) = (;series = Vector{var"MarginChartContent.Series"}()) PB.field_numbers(::Type{MarginChartContent}) = (;series = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MarginChartContent}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MarginChartContent}, _endpos::Int=0, _group::Bool=false) series = PB.BufferedVector{var"MarginChartContent.Series"}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, series) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return MarginChartContent(series[]) @@ -120,10 +121,10 @@ PB.oneof_field_types(::Type{Chart}) = (; PB.default_values(::Type{Chart}) = (;title = "", multiline = nothing, margin = nothing) PB.field_numbers(::Type{Chart}) = (;title = 1, multiline = 2, margin = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Chart}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Chart}, _endpos::Int=0, _group::Bool=false) title = "" content = nothing - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 title = PB.decode(d, String) @@ -132,7 +133,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Chart}) elseif field_number == 3 content = OneOf(:margin, PB.decode(d, Ref{MarginChartContent})) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return Chart(title, content) @@ -169,11 +170,11 @@ end PB.default_values(::Type{Category}) = (;title = "", chart = Vector{Chart}(), closed = false) PB.field_numbers(::Type{Category}) = (;title = 1, chart = 2, closed = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Category}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Category}, _endpos::Int=0, _group::Bool=false) title = "" chart = PB.BufferedVector{Chart}() closed = false - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 title = PB.decode(d, String) @@ -182,7 +183,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Category}) elseif field_number == 3 closed = PB.decode(d, Bool) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return Category(title, chart[], closed) @@ -210,17 +211,17 @@ end PB.default_values(::Type{Layout}) = (;version = zero(Int32), category = Vector{Category}()) PB.field_numbers(::Type{Layout}) = (;version = 1, category = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Layout}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Layout}, _endpos::Int=0, _group::Bool=false) version = zero(Int32) category = PB.BufferedVector{Category}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 version = PB.decode(d, Int32) elseif field_number == 2 PB.decode!(d, category) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return Layout(version, category[]) diff --git a/src/protojl/tensorboard/plugins/custom_scalar/tensorboard/tensorboard.jl b/src/protojl/tensorboard/plugins/custom_scalar/tensorboard/tensorboard.jl index 58898210..386eda83 100644 --- a/src/protojl/tensorboard/plugins/custom_scalar/tensorboard/tensorboard.jl +++ b/src/protojl/tensorboard/plugins/custom_scalar/tensorboard/tensorboard.jl @@ -2,4 +2,4 @@ module tensorboard_plugin_custom_scalar include("layout_pb.jl") -end # module tensorboard +end # module tensorboard_plugin_custom_scalar diff --git a/src/protojl/tensorboard/plugins/hparams/google/protobuf/struct_pb.jl b/src/protojl/tensorboard/plugins/hparams/google/protobuf/struct_pb.jl index b1dbe534..c5a4f5f6 100644 --- a/src/protojl/tensorboard/plugins/hparams/google/protobuf/struct_pb.jl +++ b/src/protojl/tensorboard/plugins/hparams/google/protobuf/struct_pb.jl @@ -1,34 +1,71 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:25.011 -# original file: /home/lior/.julia/dev/ProtoBuf/src/google/protobuf/struct.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: google/protobuf/struct.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf using ProtoBuf.EnumX: @enumx -export NullValue, Struct, Value, ListValue - -# Abstract types to help resolve mutually recursive definitions -abstract type var"##AbstractStruct" end -abstract type var"##AbstractValue" end -abstract type var"##AbstractListValue" end +export NullValue, ListValue, Struct, Value +abstract type var"##Abstract#Struct" end +abstract type var"##Abstract#Value" end +abstract type var"##Abstract#ListValue" end @enumx NullValue NULL_VALUE=0 -struct Struct{T1<:Union{Nothing,var"##AbstractValue"}} <: var"##AbstractStruct" +# Stub definitions for cyclic types +struct var"##Stub#ListValue"{T1<:var"##Abstract#Value"} <: var"##Abstract#ListValue" + values::Vector{T1} +end + +struct var"##Stub#Struct"{T1<:var"##Abstract#Value"} <: var"##Abstract#Struct" fields::Dict{String,T1} end + +struct var"##Stub#Value" <: var"##Abstract#Value" + kind::Union{Nothing,OneOf{<:Union{NullValue.T,Float64,String,Bool,var"##Stub#Struct"{var"##Stub#Value"},var"##Stub#ListValue"{var"##Stub#Value"}}}} +end + +const ListValue = var"##Stub#ListValue"{var"##Stub#Value"} +PB.default_values(::Type{ListValue}) = (;values = Vector{Value}()) +PB.field_numbers(::Type{ListValue}) = (;values = 1) + +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ListValue}, _endpos::Int=0, _group::Bool=false) + values = PB.BufferedVector{Value}() + while !PB.message_done(d, _endpos, _group) + field_number, wire_type = PB.decode_tag(d) + if field_number == 1 + PB.decode!(d, values) + else + Base.skip(d, wire_type) + end + end + return ListValue(values[]) +end + +function PB.encode(e::PB.AbstractProtoEncoder, x::ListValue) + initpos = position(e.io) + !isempty(x.values) && PB.encode(e, 1, x.values) + return position(e.io) - initpos +end +function PB._encoded_size(x::ListValue) + encoded_size = 0 + !isempty(x.values) && (encoded_size += PB._encoded_size(x.values, 1)) + return encoded_size +end + +const Struct = var"##Stub#Struct"{var"##Stub#Value"} PB.default_values(::Type{Struct}) = (;fields = Dict{String,Value}()) PB.field_numbers(::Type{Struct}) = (;fields = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Struct}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Struct}, _endpos::Int=0, _group::Bool=false) fields = Dict{String,Value}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, fields) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return Struct(fields) @@ -45,18 +82,16 @@ function PB._encoded_size(x::Struct) return encoded_size end -struct Value <: var"##AbstractValue" - kind::Union{Nothing,OneOf{<:Union{NullValue.T,Float64,String,Bool,var"##AbstractStruct",var"##AbstractListValue"}}} -end +const Value = var"##Stub#Value" PB.oneof_field_types(::Type{Value}) = (; kind = (;null_value=NullValue.T, number_value=Float64, string_value=String, bool_value=Bool, struct_value=Struct, list_value=ListValue), ) PB.default_values(::Type{Value}) = (;null_value = NullValue.NULL_VALUE, number_value = zero(Float64), string_value = "", bool_value = false, struct_value = nothing, list_value = nothing) PB.field_numbers(::Type{Value}) = (;null_value = 1, number_value = 2, string_value = 3, bool_value = 4, struct_value = 5, list_value = 6) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Value}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Value}, _endpos::Int=0, _group::Bool=false) kind = nothing - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 kind = OneOf(:null_value, PB.decode(d, NullValue.T)) @@ -71,7 +106,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Value}) elseif field_number == 6 kind = OneOf(:list_value, PB.decode(d, Ref{ListValue})) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return Value(kind) @@ -113,33 +148,3 @@ function PB._encoded_size(x::Value) end return encoded_size end - -struct ListValue <: var"##AbstractListValue" - values::Vector{<:Value} -end -PB.default_values(::Type{ListValue}) = (;values = Vector{Value}()) -PB.field_numbers(::Type{ListValue}) = (;values = 1) - -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ListValue}) - values = PB.BufferedVector{Value}() - while !PB.message_done(d) - field_number, wire_type = PB.decode_tag(d) - if field_number == 1 - PB.decode!(d, values) - else - PB.skip(d, wire_type) - end - end - return ListValue(values[]) -end - -function PB.encode(e::PB.AbstractProtoEncoder, x::ListValue) - initpos = position(e.io) - !isempty(x.values) && PB.encode(e, 1, x.values) - return position(e.io) - initpos -end -function PB._encoded_size(x::ListValue) - encoded_size = 0 - !isempty(x.values) && (encoded_size += PB._encoded_size(x.values, 1)) - return encoded_size -end diff --git a/src/protojl/tensorboard/plugins/hparams/tensorboard/hparams/api_pb.jl b/src/protojl/tensorboard/plugins/hparams/tensorboard/hparams/api_pb.jl index 1662a30d..3736a520 100644 --- a/src/protojl/tensorboard/plugins/hparams/tensorboard/hparams/api_pb.jl +++ b/src/protojl/tensorboard/plugins/hparams/tensorboard/hparams/api_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:25.010 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/plugins/hparams/api.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/plugins/hparams/api.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -10,6 +10,7 @@ export MetricName, AggregationType, HParamInfo, ColParams, ListMetricEvalsReques export MetricInfo, MetricValue, ListSessionGroupsRequest, Experiment, Session, SessionGroup export ListSessionGroupsResponse + struct Interval min_value::Float64 max_value::Float64 @@ -17,17 +18,17 @@ end PB.default_values(::Type{Interval}) = (;min_value = zero(Float64), max_value = zero(Float64)) PB.field_numbers(::Type{Interval}) = (;min_value = 1, max_value = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Interval}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Interval}, _endpos::Int=0, _group::Bool=false) min_value = zero(Float64) max_value = zero(Float64) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 min_value = PB.decode(d, Float64) elseif field_number == 2 max_value = PB.decode(d, Float64) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return Interval(min_value, max_value) @@ -35,44 +36,56 @@ end function PB.encode(e::PB.AbstractProtoEncoder, x::Interval) initpos = position(e.io) - x.min_value != zero(Float64) && PB.encode(e, 1, x.min_value) - x.max_value != zero(Float64) && PB.encode(e, 2, x.max_value) + x.min_value !== zero(Float64) && PB.encode(e, 1, x.min_value) + x.max_value !== zero(Float64) && PB.encode(e, 2, x.max_value) return position(e.io) - initpos end function PB._encoded_size(x::Interval) encoded_size = 0 - x.min_value != zero(Float64) && (encoded_size += PB._encoded_size(x.min_value, 1)) - x.max_value != zero(Float64) && (encoded_size += PB._encoded_size(x.max_value, 2)) + x.min_value !== zero(Float64) && (encoded_size += PB._encoded_size(x.min_value, 1)) + x.max_value !== zero(Float64) && (encoded_size += PB._encoded_size(x.max_value, 2)) return encoded_size end struct GetExperimentRequest experiment_name::String + include_metrics::Bool + hparams_limit::Int32 end -PB.default_values(::Type{GetExperimentRequest}) = (;experiment_name = "") -PB.field_numbers(::Type{GetExperimentRequest}) = (;experiment_name = 1) +PB.default_values(::Type{GetExperimentRequest}) = (;experiment_name = "", include_metrics = false, hparams_limit = zero(Int32)) +PB.field_numbers(::Type{GetExperimentRequest}) = (;experiment_name = 1, include_metrics = 2, hparams_limit = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GetExperimentRequest}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GetExperimentRequest}, _endpos::Int=0, _group::Bool=false) experiment_name = "" - while !PB.message_done(d) + include_metrics = false + hparams_limit = zero(Int32) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 experiment_name = PB.decode(d, String) + elseif field_number == 2 + include_metrics = PB.decode(d, Bool) + elseif field_number == 3 + hparams_limit = PB.decode(d, Int32) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return GetExperimentRequest(experiment_name) + return GetExperimentRequest(experiment_name, include_metrics, hparams_limit) end function PB.encode(e::PB.AbstractProtoEncoder, x::GetExperimentRequest) initpos = position(e.io) !isempty(x.experiment_name) && PB.encode(e, 1, x.experiment_name) + x.include_metrics != false && PB.encode(e, 2, x.include_metrics) + x.hparams_limit != zero(Int32) && PB.encode(e, 3, x.hparams_limit) return position(e.io) - initpos end function PB._encoded_size(x::GetExperimentRequest) encoded_size = 0 !isempty(x.experiment_name) && (encoded_size += PB._encoded_size(x.experiment_name, 1)) + x.include_metrics != false && (encoded_size += PB._encoded_size(x.include_metrics, 2)) + x.hparams_limit != zero(Int32) && (encoded_size += PB._encoded_size(x.hparams_limit, 3)) return encoded_size end @@ -91,17 +104,17 @@ end PB.default_values(::Type{MetricName}) = (;group = "", tag = "") PB.field_numbers(::Type{MetricName}) = (;group = 1, tag = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MetricName}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MetricName}, _endpos::Int=0, _group::Bool=false) group = "" tag = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 group = PB.decode(d, String) elseif field_number == 2 tag = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return MetricName(group, tag) @@ -128,20 +141,22 @@ struct HParamInfo description::String var"#type"::var"#DataType".T domain::Union{Nothing,OneOf{<:Union{google.protobuf.ListValue,Interval}}} + differs::Bool end PB.oneof_field_types(::Type{HParamInfo}) = (; domain = (;domain_discrete=google.protobuf.ListValue, domain_interval=Interval), ) -PB.default_values(::Type{HParamInfo}) = (;name = "", display_name = "", description = "", var"#type" = var"#DataType".DATA_TYPE_UNSET, domain_discrete = nothing, domain_interval = nothing) -PB.field_numbers(::Type{HParamInfo}) = (;name = 1, display_name = 2, description = 3, var"#type" = 4, domain_discrete = 5, domain_interval = 6) +PB.default_values(::Type{HParamInfo}) = (;name = "", display_name = "", description = "", var"#type" = var"#DataType".DATA_TYPE_UNSET, domain_discrete = nothing, domain_interval = nothing, differs = false) +PB.field_numbers(::Type{HParamInfo}) = (;name = 1, display_name = 2, description = 3, var"#type" = 4, domain_discrete = 5, domain_interval = 6, differs = 7) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:HParamInfo}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:HParamInfo}, _endpos::Int=0, _group::Bool=false) name = "" display_name = "" description = "" var"#type" = var"#DataType".DATA_TYPE_UNSET domain = nothing - while !PB.message_done(d) + differs = false + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) @@ -155,11 +170,13 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:HParamInfo}) domain = OneOf(:domain_discrete, PB.decode(d, Ref{google.protobuf.ListValue})) elseif field_number == 6 domain = OneOf(:domain_interval, PB.decode(d, Ref{Interval})) + elseif field_number == 7 + differs = PB.decode(d, Bool) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return HParamInfo(name, display_name, description, var"#type", domain) + return HParamInfo(name, display_name, description, var"#type", domain, differs) end function PB.encode(e::PB.AbstractProtoEncoder, x::HParamInfo) @@ -174,6 +191,7 @@ function PB.encode(e::PB.AbstractProtoEncoder, x::HParamInfo) elseif x.domain.name === :domain_interval PB.encode(e, 6, x.domain[]::Interval) end + x.differs != false && PB.encode(e, 7, x.differs) return position(e.io) - initpos end function PB._encoded_size(x::HParamInfo) @@ -188,6 +206,7 @@ function PB._encoded_size(x::HParamInfo) elseif x.domain.name === :domain_interval encoded_size += PB._encoded_size(x.domain[]::Interval, 6) end + x.differs != false && (encoded_size += PB._encoded_size(x.differs, 7)) return encoded_size end @@ -197,21 +216,23 @@ struct ColParams missing_values_first::Bool filter::Union{Nothing,OneOf{<:Union{String,Interval,google.protobuf.ListValue}}} exclude_missing_values::Bool + include_in_result::Bool end PB.oneof_field_types(::Type{ColParams}) = (; name = (;metric=MetricName, hparam=String), filter = (;filter_regexp=String, filter_interval=Interval, filter_discrete=google.protobuf.ListValue), ) -PB.default_values(::Type{ColParams}) = (;metric = nothing, hparam = "", order = SortOrder.ORDER_UNSPECIFIED, missing_values_first = false, filter_regexp = "", filter_interval = nothing, filter_discrete = nothing, exclude_missing_values = false) -PB.field_numbers(::Type{ColParams}) = (;metric = 1, hparam = 2, order = 3, missing_values_first = 4, filter_regexp = 5, filter_interval = 6, filter_discrete = 7, exclude_missing_values = 8) +PB.default_values(::Type{ColParams}) = (;metric = nothing, hparam = "", order = SortOrder.ORDER_UNSPECIFIED, missing_values_first = false, filter_regexp = "", filter_interval = nothing, filter_discrete = nothing, exclude_missing_values = false, include_in_result = false) +PB.field_numbers(::Type{ColParams}) = (;metric = 1, hparam = 2, order = 3, missing_values_first = 4, filter_regexp = 5, filter_interval = 6, filter_discrete = 7, exclude_missing_values = 8, include_in_result = 9) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ColParams}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ColParams}, _endpos::Int=0, _group::Bool=false) name = nothing order = SortOrder.ORDER_UNSPECIFIED missing_values_first = false filter = nothing exclude_missing_values = false - while !PB.message_done(d) + include_in_result = false + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = OneOf(:metric, PB.decode(d, Ref{MetricName})) @@ -229,11 +250,13 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ColParams}) filter = OneOf(:filter_discrete, PB.decode(d, Ref{google.protobuf.ListValue})) elseif field_number == 8 exclude_missing_values = PB.decode(d, Bool) + elseif field_number == 9 + include_in_result = PB.decode(d, Bool) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return ColParams(name, order, missing_values_first, filter, exclude_missing_values) + return ColParams(name, order, missing_values_first, filter, exclude_missing_values, include_in_result) end function PB.encode(e::PB.AbstractProtoEncoder, x::ColParams) @@ -255,6 +278,7 @@ function PB.encode(e::PB.AbstractProtoEncoder, x::ColParams) PB.encode(e, 7, x.filter[]::google.protobuf.ListValue) end x.exclude_missing_values != false && PB.encode(e, 8, x.exclude_missing_values) + x.include_in_result != false && PB.encode(e, 9, x.include_in_result) return position(e.io) - initpos end function PB._encoded_size(x::ColParams) @@ -276,6 +300,7 @@ function PB._encoded_size(x::ColParams) encoded_size += PB._encoded_size(x.filter[]::google.protobuf.ListValue, 7) end x.exclude_missing_values != false && (encoded_size += PB._encoded_size(x.exclude_missing_values, 8)) + x.include_in_result != false && (encoded_size += PB._encoded_size(x.include_in_result, 9)) return encoded_size end @@ -287,11 +312,11 @@ end PB.default_values(::Type{ListMetricEvalsRequest}) = (;experiment_name = "", session_name = "", metric_name = nothing) PB.field_numbers(::Type{ListMetricEvalsRequest}) = (;experiment_name = 3, session_name = 1, metric_name = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ListMetricEvalsRequest}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ListMetricEvalsRequest}, _endpos::Int=0, _group::Bool=false) experiment_name = "" session_name = "" metric_name = Ref{Union{Nothing,MetricName}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 3 experiment_name = PB.decode(d, String) @@ -300,7 +325,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ListMetricEvalsRequest}) elseif field_number == 2 PB.decode!(d, metric_name) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return ListMetricEvalsRequest(experiment_name, session_name, metric_name[]) @@ -330,12 +355,12 @@ end PB.default_values(::Type{MetricInfo}) = (;name = nothing, display_name = "", description = "", dataset_type = DatasetType.DATASET_UNKNOWN) PB.field_numbers(::Type{MetricInfo}) = (;name = 1, display_name = 3, description = 4, dataset_type = 5) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MetricInfo}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MetricInfo}, _endpos::Int=0, _group::Bool=false) name = Ref{Union{Nothing,MetricName}}(nothing) display_name = "" description = "" dataset_type = DatasetType.DATASET_UNKNOWN - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, name) @@ -346,7 +371,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MetricInfo}) elseif field_number == 5 dataset_type = PB.decode(d, DatasetType.T) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return MetricInfo(name[], display_name, description, dataset_type) @@ -378,12 +403,12 @@ end PB.default_values(::Type{MetricValue}) = (;name = nothing, value = zero(Float64), training_step = zero(Int32), wall_time_secs = zero(Float64)) PB.field_numbers(::Type{MetricValue}) = (;name = 1, value = 2, training_step = 3, wall_time_secs = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MetricValue}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MetricValue}, _endpos::Int=0, _group::Bool=false) name = Ref{Union{Nothing,MetricName}}(nothing) value = zero(Float64) training_step = zero(Int32) wall_time_secs = zero(Float64) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, name) @@ -394,7 +419,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MetricValue}) elseif field_number == 4 wall_time_secs = PB.decode(d, Float64) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return MetricValue(name[], value, training_step, wall_time_secs) @@ -403,17 +428,17 @@ end function PB.encode(e::PB.AbstractProtoEncoder, x::MetricValue) initpos = position(e.io) !isnothing(x.name) && PB.encode(e, 1, x.name) - x.value != zero(Float64) && PB.encode(e, 2, x.value) + x.value !== zero(Float64) && PB.encode(e, 2, x.value) x.training_step != zero(Int32) && PB.encode(e, 3, x.training_step) - x.wall_time_secs != zero(Float64) && PB.encode(e, 4, x.wall_time_secs) + x.wall_time_secs !== zero(Float64) && PB.encode(e, 4, x.wall_time_secs) return position(e.io) - initpos end function PB._encoded_size(x::MetricValue) encoded_size = 0 !isnothing(x.name) && (encoded_size += PB._encoded_size(x.name, 1)) - x.value != zero(Float64) && (encoded_size += PB._encoded_size(x.value, 2)) + x.value !== zero(Float64) && (encoded_size += PB._encoded_size(x.value, 2)) x.training_step != zero(Int32) && (encoded_size += PB._encoded_size(x.training_step, 3)) - x.wall_time_secs != zero(Float64) && (encoded_size += PB._encoded_size(x.wall_time_secs, 4)) + x.wall_time_secs !== zero(Float64) && (encoded_size += PB._encoded_size(x.wall_time_secs, 4)) return encoded_size end @@ -425,11 +450,12 @@ struct ListSessionGroupsRequest aggregation_metric::Union{Nothing,MetricName} start_index::Int32 slice_size::Int32 + include_metrics::Bool end -PB.default_values(::Type{ListSessionGroupsRequest}) = (;experiment_name = "", allowed_statuses = Vector{Status.T}(), col_params = Vector{ColParams}(), aggregation_type = AggregationType.AGGREGATION_UNSET, aggregation_metric = nothing, start_index = zero(Int32), slice_size = zero(Int32)) -PB.field_numbers(::Type{ListSessionGroupsRequest}) = (;experiment_name = 6, allowed_statuses = 7, col_params = 1, aggregation_type = 2, aggregation_metric = 3, start_index = 4, slice_size = 5) +PB.default_values(::Type{ListSessionGroupsRequest}) = (;experiment_name = "", allowed_statuses = Vector{Status.T}(), col_params = Vector{ColParams}(), aggregation_type = AggregationType.AGGREGATION_UNSET, aggregation_metric = nothing, start_index = zero(Int32), slice_size = zero(Int32), include_metrics = false) +PB.field_numbers(::Type{ListSessionGroupsRequest}) = (;experiment_name = 6, allowed_statuses = 7, col_params = 1, aggregation_type = 2, aggregation_metric = 3, start_index = 4, slice_size = 5, include_metrics = 8) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ListSessionGroupsRequest}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ListSessionGroupsRequest}, _endpos::Int=0, _group::Bool=false) experiment_name = "" allowed_statuses = PB.BufferedVector{Status.T}() col_params = PB.BufferedVector{ColParams}() @@ -437,7 +463,8 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ListSessionGroupsRequest aggregation_metric = Ref{Union{Nothing,MetricName}}(nothing) start_index = zero(Int32) slice_size = zero(Int32) - while !PB.message_done(d) + include_metrics = false + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 6 experiment_name = PB.decode(d, String) @@ -453,11 +480,13 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ListSessionGroupsRequest start_index = PB.decode(d, Int32) elseif field_number == 5 slice_size = PB.decode(d, Int32) + elseif field_number == 8 + include_metrics = PB.decode(d, Bool) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return ListSessionGroupsRequest(experiment_name, allowed_statuses[], col_params[], aggregation_type, aggregation_metric[], start_index, slice_size) + return ListSessionGroupsRequest(experiment_name, allowed_statuses[], col_params[], aggregation_type, aggregation_metric[], start_index, slice_size, include_metrics) end function PB.encode(e::PB.AbstractProtoEncoder, x::ListSessionGroupsRequest) @@ -469,6 +498,7 @@ function PB.encode(e::PB.AbstractProtoEncoder, x::ListSessionGroupsRequest) !isnothing(x.aggregation_metric) && PB.encode(e, 3, x.aggregation_metric) x.start_index != zero(Int32) && PB.encode(e, 4, x.start_index) x.slice_size != zero(Int32) && PB.encode(e, 5, x.slice_size) + x.include_metrics != false && PB.encode(e, 8, x.include_metrics) return position(e.io) - initpos end function PB._encoded_size(x::ListSessionGroupsRequest) @@ -480,6 +510,7 @@ function PB._encoded_size(x::ListSessionGroupsRequest) !isnothing(x.aggregation_metric) && (encoded_size += PB._encoded_size(x.aggregation_metric, 3)) x.start_index != zero(Int32) && (encoded_size += PB._encoded_size(x.start_index, 4)) x.slice_size != zero(Int32) && (encoded_size += PB._encoded_size(x.slice_size, 5)) + x.include_metrics != false && (encoded_size += PB._encoded_size(x.include_metrics, 8)) return encoded_size end @@ -494,14 +525,14 @@ end PB.default_values(::Type{Experiment}) = (;name = "", description = "", user = "", time_created_secs = zero(Float64), hparam_infos = Vector{HParamInfo}(), metric_infos = Vector{MetricInfo}()) PB.field_numbers(::Type{Experiment}) = (;name = 6, description = 1, user = 2, time_created_secs = 3, hparam_infos = 4, metric_infos = 5) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Experiment}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Experiment}, _endpos::Int=0, _group::Bool=false) name = "" description = "" user = "" time_created_secs = zero(Float64) hparam_infos = PB.BufferedVector{HParamInfo}() metric_infos = PB.BufferedVector{MetricInfo}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 6 name = PB.decode(d, String) @@ -516,7 +547,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Experiment}) elseif field_number == 5 PB.decode!(d, metric_infos) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return Experiment(name, description, user, time_created_secs, hparam_infos[], metric_infos[]) @@ -527,7 +558,7 @@ function PB.encode(e::PB.AbstractProtoEncoder, x::Experiment) !isempty(x.name) && PB.encode(e, 6, x.name) !isempty(x.description) && PB.encode(e, 1, x.description) !isempty(x.user) && PB.encode(e, 2, x.user) - x.time_created_secs != zero(Float64) && PB.encode(e, 3, x.time_created_secs) + x.time_created_secs !== zero(Float64) && PB.encode(e, 3, x.time_created_secs) !isempty(x.hparam_infos) && PB.encode(e, 4, x.hparam_infos) !isempty(x.metric_infos) && PB.encode(e, 5, x.metric_infos) return position(e.io) - initpos @@ -537,7 +568,7 @@ function PB._encoded_size(x::Experiment) !isempty(x.name) && (encoded_size += PB._encoded_size(x.name, 6)) !isempty(x.description) && (encoded_size += PB._encoded_size(x.description, 1)) !isempty(x.user) && (encoded_size += PB._encoded_size(x.user, 2)) - x.time_created_secs != zero(Float64) && (encoded_size += PB._encoded_size(x.time_created_secs, 3)) + x.time_created_secs !== zero(Float64) && (encoded_size += PB._encoded_size(x.time_created_secs, 3)) !isempty(x.hparam_infos) && (encoded_size += PB._encoded_size(x.hparam_infos, 4)) !isempty(x.metric_infos) && (encoded_size += PB._encoded_size(x.metric_infos, 5)) return encoded_size @@ -555,7 +586,7 @@ end PB.default_values(::Type{Session}) = (;name = "", start_time_secs = zero(Float64), end_time_secs = zero(Float64), status = Status.STATUS_UNKNOWN, model_uri = "", metric_values = Vector{MetricValue}(), monitor_url = "") PB.field_numbers(::Type{Session}) = (;name = 1, start_time_secs = 2, end_time_secs = 3, status = 4, model_uri = 5, metric_values = 6, monitor_url = 7) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Session}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Session}, _endpos::Int=0, _group::Bool=false) name = "" start_time_secs = zero(Float64) end_time_secs = zero(Float64) @@ -563,7 +594,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Session}) model_uri = "" metric_values = PB.BufferedVector{MetricValue}() monitor_url = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) @@ -580,7 +611,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Session}) elseif field_number == 7 monitor_url = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return Session(name, start_time_secs, end_time_secs, status, model_uri, metric_values[], monitor_url) @@ -589,8 +620,8 @@ end function PB.encode(e::PB.AbstractProtoEncoder, x::Session) initpos = position(e.io) !isempty(x.name) && PB.encode(e, 1, x.name) - x.start_time_secs != zero(Float64) && PB.encode(e, 2, x.start_time_secs) - x.end_time_secs != zero(Float64) && PB.encode(e, 3, x.end_time_secs) + x.start_time_secs !== zero(Float64) && PB.encode(e, 2, x.start_time_secs) + x.end_time_secs !== zero(Float64) && PB.encode(e, 3, x.end_time_secs) x.status != Status.STATUS_UNKNOWN && PB.encode(e, 4, x.status) !isempty(x.model_uri) && PB.encode(e, 5, x.model_uri) !isempty(x.metric_values) && PB.encode(e, 6, x.metric_values) @@ -600,8 +631,8 @@ end function PB._encoded_size(x::Session) encoded_size = 0 !isempty(x.name) && (encoded_size += PB._encoded_size(x.name, 1)) - x.start_time_secs != zero(Float64) && (encoded_size += PB._encoded_size(x.start_time_secs, 2)) - x.end_time_secs != zero(Float64) && (encoded_size += PB._encoded_size(x.end_time_secs, 3)) + x.start_time_secs !== zero(Float64) && (encoded_size += PB._encoded_size(x.start_time_secs, 2)) + x.end_time_secs !== zero(Float64) && (encoded_size += PB._encoded_size(x.end_time_secs, 3)) x.status != Status.STATUS_UNKNOWN && (encoded_size += PB._encoded_size(x.status, 4)) !isempty(x.model_uri) && (encoded_size += PB._encoded_size(x.model_uri, 5)) !isempty(x.metric_values) && (encoded_size += PB._encoded_size(x.metric_values, 6)) @@ -619,13 +650,13 @@ end PB.default_values(::Type{SessionGroup}) = (;name = "", hparams = Dict{String,google.protobuf.Value}(), metric_values = Vector{MetricValue}(), sessions = Vector{Session}(), monitor_url = "") PB.field_numbers(::Type{SessionGroup}) = (;name = 1, hparams = 2, metric_values = 3, sessions = 4, monitor_url = 5) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SessionGroup}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SessionGroup}, _endpos::Int=0, _group::Bool=false) name = "" hparams = Dict{String,google.protobuf.Value}() metric_values = PB.BufferedVector{MetricValue}() sessions = PB.BufferedVector{Session}() monitor_url = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) @@ -638,7 +669,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SessionGroup}) elseif field_number == 5 monitor_url = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SessionGroup(name, hparams, metric_values[], sessions[], monitor_url) @@ -670,17 +701,17 @@ end PB.default_values(::Type{ListSessionGroupsResponse}) = (;session_groups = Vector{SessionGroup}(), total_size = zero(Int32)) PB.field_numbers(::Type{ListSessionGroupsResponse}) = (;session_groups = 1, total_size = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ListSessionGroupsResponse}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ListSessionGroupsResponse}, _endpos::Int=0, _group::Bool=false) session_groups = PB.BufferedVector{SessionGroup}() total_size = zero(Int32) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, session_groups) elseif field_number == 3 total_size = PB.decode(d, Int32) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return ListSessionGroupsResponse(session_groups[], total_size) diff --git a/src/protojl/tensorboard/plugins/hparams/tensorboard/hparams/hparams_util_pb.jl b/src/protojl/tensorboard/plugins/hparams/tensorboard/hparams/hparams_util_pb.jl index 325f308b..7aade867 100644 --- a/src/protojl/tensorboard/plugins/hparams/tensorboard/hparams/hparams_util_pb.jl +++ b/src/protojl/tensorboard/plugins/hparams/tensorboard/hparams/hparams_util_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:25.011 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/plugins/hparams/hparams_util.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/plugins/hparams/hparams_util.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,20 +7,21 @@ using ProtoBuf.EnumX: @enumx export MetricInfosList, HParams, HParamInfosList + struct MetricInfosList metric_infos::Vector{MetricInfo} end PB.default_values(::Type{MetricInfosList}) = (;metric_infos = Vector{MetricInfo}()) PB.field_numbers(::Type{MetricInfosList}) = (;metric_infos = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MetricInfosList}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MetricInfosList}, _endpos::Int=0, _group::Bool=false) metric_infos = PB.BufferedVector{MetricInfo}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, metric_infos) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return MetricInfosList(metric_infos[]) @@ -43,14 +44,14 @@ end PB.default_values(::Type{HParams}) = (;hparams = Dict{String,google.protobuf.Value}()) PB.field_numbers(::Type{HParams}) = (;hparams = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:HParams}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:HParams}, _endpos::Int=0, _group::Bool=false) hparams = Dict{String,google.protobuf.Value}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, hparams) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return HParams(hparams) @@ -73,14 +74,14 @@ end PB.default_values(::Type{HParamInfosList}) = (;hparam_infos = Vector{HParamInfo}()) PB.field_numbers(::Type{HParamInfosList}) = (;hparam_infos = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:HParamInfosList}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:HParamInfosList}, _endpos::Int=0, _group::Bool=false) hparam_infos = PB.BufferedVector{HParamInfo}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, hparam_infos) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return HParamInfosList(hparam_infos[]) diff --git a/src/protojl/tensorboard/plugins/hparams/tensorboard/hparams/plugin_data_pb.jl b/src/protojl/tensorboard/plugins/hparams/tensorboard/hparams/plugin_data_pb.jl index c0d20129..4fe0037d 100644 --- a/src/protojl/tensorboard/plugins/hparams/tensorboard/hparams/plugin_data_pb.jl +++ b/src/protojl/tensorboard/plugins/hparams/tensorboard/hparams/plugin_data_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:25.011 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/plugins/hparams/plugin_data.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/plugins/hparams/plugin_data.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export SessionEndInfo, SessionStartInfo, HParamsPluginData + struct SessionEndInfo status::Status.T end_time_secs::Float64 @@ -14,17 +15,17 @@ end PB.default_values(::Type{SessionEndInfo}) = (;status = Status.STATUS_UNKNOWN, end_time_secs = zero(Float64)) PB.field_numbers(::Type{SessionEndInfo}) = (;status = 1, end_time_secs = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SessionEndInfo}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SessionEndInfo}, _endpos::Int=0, _group::Bool=false) status = Status.STATUS_UNKNOWN end_time_secs = zero(Float64) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 status = PB.decode(d, Status.T) elseif field_number == 2 end_time_secs = PB.decode(d, Float64) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SessionEndInfo(status, end_time_secs) @@ -33,13 +34,13 @@ end function PB.encode(e::PB.AbstractProtoEncoder, x::SessionEndInfo) initpos = position(e.io) x.status != Status.STATUS_UNKNOWN && PB.encode(e, 1, x.status) - x.end_time_secs != zero(Float64) && PB.encode(e, 2, x.end_time_secs) + x.end_time_secs !== zero(Float64) && PB.encode(e, 2, x.end_time_secs) return position(e.io) - initpos end function PB._encoded_size(x::SessionEndInfo) encoded_size = 0 x.status != Status.STATUS_UNKNOWN && (encoded_size += PB._encoded_size(x.status, 1)) - x.end_time_secs != zero(Float64) && (encoded_size += PB._encoded_size(x.end_time_secs, 2)) + x.end_time_secs !== zero(Float64) && (encoded_size += PB._encoded_size(x.end_time_secs, 2)) return encoded_size end @@ -53,13 +54,13 @@ end PB.default_values(::Type{SessionStartInfo}) = (;hparams = Dict{String,google.protobuf.Value}(), model_uri = "", monitor_url = "", group_name = "", start_time_secs = zero(Float64)) PB.field_numbers(::Type{SessionStartInfo}) = (;hparams = 1, model_uri = 2, monitor_url = 3, group_name = 4, start_time_secs = 5) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SessionStartInfo}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SessionStartInfo}, _endpos::Int=0, _group::Bool=false) hparams = Dict{String,google.protobuf.Value}() model_uri = "" monitor_url = "" group_name = "" start_time_secs = zero(Float64) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, hparams) @@ -72,7 +73,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SessionStartInfo}) elseif field_number == 5 start_time_secs = PB.decode(d, Float64) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SessionStartInfo(hparams, model_uri, monitor_url, group_name, start_time_secs) @@ -84,7 +85,7 @@ function PB.encode(e::PB.AbstractProtoEncoder, x::SessionStartInfo) !isempty(x.model_uri) && PB.encode(e, 2, x.model_uri) !isempty(x.monitor_url) && PB.encode(e, 3, x.monitor_url) !isempty(x.group_name) && PB.encode(e, 4, x.group_name) - x.start_time_secs != zero(Float64) && PB.encode(e, 5, x.start_time_secs) + x.start_time_secs !== zero(Float64) && PB.encode(e, 5, x.start_time_secs) return position(e.io) - initpos end function PB._encoded_size(x::SessionStartInfo) @@ -93,7 +94,7 @@ function PB._encoded_size(x::SessionStartInfo) !isempty(x.model_uri) && (encoded_size += PB._encoded_size(x.model_uri, 2)) !isempty(x.monitor_url) && (encoded_size += PB._encoded_size(x.monitor_url, 3)) !isempty(x.group_name) && (encoded_size += PB._encoded_size(x.group_name, 4)) - x.start_time_secs != zero(Float64) && (encoded_size += PB._encoded_size(x.start_time_secs, 5)) + x.start_time_secs !== zero(Float64) && (encoded_size += PB._encoded_size(x.start_time_secs, 5)) return encoded_size end @@ -107,10 +108,10 @@ PB.oneof_field_types(::Type{HParamsPluginData}) = (; PB.default_values(::Type{HParamsPluginData}) = (;version = zero(Int32), experiment = nothing, session_start_info = nothing, session_end_info = nothing) PB.field_numbers(::Type{HParamsPluginData}) = (;version = 1, experiment = 2, session_start_info = 3, session_end_info = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:HParamsPluginData}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:HParamsPluginData}, _endpos::Int=0, _group::Bool=false) version = zero(Int32) data = nothing - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 version = PB.decode(d, Int32) @@ -121,7 +122,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:HParamsPluginData}) elseif field_number == 4 data = OneOf(:session_end_info, PB.decode(d, Ref{SessionEndInfo})) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return HParamsPluginData(version, data) diff --git a/src/protojl/tensorboard/plugins/hparams/tensorboard/tensorboard.jl b/src/protojl/tensorboard/plugins/hparams/tensorboard/tensorboard.jl index 8096c66c..1b0f3a1a 100644 --- a/src/protojl/tensorboard/plugins/hparams/tensorboard/tensorboard.jl +++ b/src/protojl/tensorboard/plugins/hparams/tensorboard/tensorboard.jl @@ -4,4 +4,4 @@ include("../google/google.jl") include("hparams/hparams.jl") -end # module tensorboard +end # module tensorboard_plugin_hparams diff --git a/src/protojl/tensorboard/plugins/text/tensorboard/plugin_data_pb.jl b/src/protojl/tensorboard/plugins/text/tensorboard/plugin_data_pb.jl index f43d11f9..d02706c9 100644 --- a/src/protojl/tensorboard/plugins/text/tensorboard/plugin_data_pb.jl +++ b/src/protojl/tensorboard/plugins/text/tensorboard/plugin_data_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:25.012 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/plugins/text/plugin_data.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/plugins/text/plugin_data.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,20 +7,21 @@ using ProtoBuf.EnumX: @enumx export TextPluginData + struct TextPluginData version::Int32 end PB.default_values(::Type{TextPluginData}) = (;version = zero(Int32)) PB.field_numbers(::Type{TextPluginData}) = (;version = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TextPluginData}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TextPluginData}, _endpos::Int=0, _group::Bool=false) version = zero(Int32) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 version = PB.decode(d, Int32) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return TextPluginData(version) diff --git a/src/protojl/tensorboard/plugins/text/tensorboard/tensorboard.jl b/src/protojl/tensorboard/plugins/text/tensorboard/tensorboard.jl index 7cce2e0b..c925c727 100644 --- a/src/protojl/tensorboard/plugins/text/tensorboard/tensorboard.jl +++ b/src/protojl/tensorboard/plugins/text/tensorboard/tensorboard.jl @@ -2,4 +2,4 @@ module tensorboard_plugin_text include("plugin_data_pb.jl") -end # module tensorboard +end # module tensorboard_plugin_text diff --git a/src/protojl/tensorboard/tensorboard/allocation_description_pb.jl b/src/protojl/tensorboard/tensorboard/allocation_description_pb.jl index eab6af02..09fc1b5f 100644 --- a/src/protojl/tensorboard/tensorboard/allocation_description_pb.jl +++ b/src/protojl/tensorboard/tensorboard/allocation_description_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.163 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/allocation_description.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/allocation_description.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export AllocationDescription + struct AllocationDescription requested_bytes::Int64 allocated_bytes::Int64 @@ -18,14 +19,14 @@ end PB.default_values(::Type{AllocationDescription}) = (;requested_bytes = zero(Int64), allocated_bytes = zero(Int64), allocator_name = "", allocation_id = zero(Int64), has_single_reference = false, ptr = zero(UInt64)) PB.field_numbers(::Type{AllocationDescription}) = (;requested_bytes = 1, allocated_bytes = 2, allocator_name = 3, allocation_id = 4, has_single_reference = 5, ptr = 6) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:AllocationDescription}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:AllocationDescription}, _endpos::Int=0, _group::Bool=false) requested_bytes = zero(Int64) allocated_bytes = zero(Int64) allocator_name = "" allocation_id = zero(Int64) has_single_reference = false ptr = zero(UInt64) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 requested_bytes = PB.decode(d, Int64) @@ -40,7 +41,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:AllocationDescription}) elseif field_number == 6 ptr = PB.decode(d, UInt64) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return AllocationDescription(requested_bytes, allocated_bytes, allocator_name, allocation_id, has_single_reference, ptr) diff --git a/src/protojl/tensorboard/tensorboard/api_def_pb.jl b/src/protojl/tensorboard/tensorboard/api_def_pb.jl index 3a57a6d4..cc48763e 100644 --- a/src/protojl/tensorboard/tensorboard/api_def_pb.jl +++ b/src/protojl/tensorboard/tensorboard/api_def_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.776 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/api_def.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/api_def.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -8,6 +8,7 @@ using ProtoBuf.EnumX: @enumx export var"ApiDef.Attr", var"ApiDef.Endpoint", var"ApiDef.Arg", var"ApiDef.Visibility" export ApiDef, ApiDefs + struct var"ApiDef.Attr" name::String rename_to::String @@ -17,12 +18,12 @@ end PB.default_values(::Type{var"ApiDef.Attr"}) = (;name = "", rename_to = "", default_value = nothing, description = "") PB.field_numbers(::Type{var"ApiDef.Attr"}) = (;name = 1, rename_to = 2, default_value = 3, description = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"ApiDef.Attr"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"ApiDef.Attr"}, _endpos::Int=0, _group::Bool=false) name = "" rename_to = "" default_value = Ref{Union{Nothing,AttrValue}}(nothing) description = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) @@ -33,7 +34,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"ApiDef.Attr"}) elseif field_number == 4 description = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"ApiDef.Attr"(name, rename_to, default_value[], description) @@ -64,11 +65,11 @@ end PB.default_values(::Type{var"ApiDef.Endpoint"}) = (;name = "", deprecated = false, deprecation_version = zero(Int32)) PB.field_numbers(::Type{var"ApiDef.Endpoint"}) = (;name = 1, deprecated = 3, deprecation_version = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"ApiDef.Endpoint"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"ApiDef.Endpoint"}, _endpos::Int=0, _group::Bool=false) name = "" deprecated = false deprecation_version = zero(Int32) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) @@ -77,7 +78,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"ApiDef.Endpoint"}) elseif field_number == 4 deprecation_version = PB.decode(d, Int32) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"ApiDef.Endpoint"(name, deprecated, deprecation_version) @@ -106,11 +107,11 @@ end PB.default_values(::Type{var"ApiDef.Arg"}) = (;name = "", rename_to = "", description = "") PB.field_numbers(::Type{var"ApiDef.Arg"}) = (;name = 1, rename_to = 2, description = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"ApiDef.Arg"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"ApiDef.Arg"}, _endpos::Int=0, _group::Bool=false) name = "" rename_to = "" description = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) @@ -119,7 +120,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"ApiDef.Arg"}) elseif field_number == 3 description = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"ApiDef.Arg"(name, rename_to, description) @@ -160,7 +161,7 @@ end PB.default_values(::Type{ApiDef}) = (;graph_op_name = "", deprecation_message = "", deprecation_version = zero(Int32), visibility = var"ApiDef.Visibility".DEFAULT_VISIBILITY, endpoint = Vector{var"ApiDef.Endpoint"}(), in_arg = Vector{var"ApiDef.Arg"}(), out_arg = Vector{var"ApiDef.Arg"}(), arg_order = Vector{String}(), attr = Vector{var"ApiDef.Attr"}(), summary = "", description = "", description_prefix = "", description_suffix = "") PB.field_numbers(::Type{ApiDef}) = (;graph_op_name = 1, deprecation_message = 12, deprecation_version = 13, visibility = 2, endpoint = 3, in_arg = 4, out_arg = 5, arg_order = 11, attr = 6, summary = 7, description = 8, description_prefix = 9, description_suffix = 10) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ApiDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ApiDef}, _endpos::Int=0, _group::Bool=false) graph_op_name = "" deprecation_message = "" deprecation_version = zero(Int32) @@ -174,7 +175,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ApiDef}) description = "" description_prefix = "" description_suffix = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 graph_op_name = PB.decode(d, String) @@ -203,7 +204,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ApiDef}) elseif field_number == 10 description_suffix = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return ApiDef(graph_op_name, deprecation_message, deprecation_version, visibility, endpoint[], in_arg[], out_arg[], arg_order[], attr[], summary, description, description_prefix, description_suffix) @@ -250,14 +251,14 @@ end PB.default_values(::Type{ApiDefs}) = (;op = Vector{ApiDef}()) PB.field_numbers(::Type{ApiDefs}) = (;op = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ApiDefs}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ApiDefs}, _endpos::Int=0, _group::Bool=false) op = PB.BufferedVector{ApiDef}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, op) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return ApiDefs(op[]) diff --git a/src/protojl/tensorboard/tensorboard/attr_value_pb.jl b/src/protojl/tensorboard/tensorboard/attr_value_pb.jl index 04663ee4..0bb82ff6 100644 --- a/src/protojl/tensorboard/tensorboard/attr_value_pb.jl +++ b/src/protojl/tensorboard/tensorboard/attr_value_pb.jl @@ -1,55 +1,18 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.718 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/attr_value.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/attr_value.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf using ProtoBuf.EnumX: @enumx -export NameAttrList, var"AttrValue.ListValue", AttrValue +export var"AttrValue.ListValue", NameAttrList, AttrValue +abstract type var"##Abstract#NameAttrList" end +abstract type var"##Abstract#AttrValue.ListValue" end +abstract type var"##Abstract#AttrValue" end -# Abstract types to help resolve mutually recursive definitions -abstract type var"##AbstractNameAttrList" end -abstract type var"##AbstractAttrValue.ListValue" end -abstract type var"##AbstractAttrValue" end - -struct NameAttrList{T1<:Union{Nothing,var"##AbstractAttrValue"}} <: var"##AbstractNameAttrList" - name::String - attr::Dict{String,T1} -end -PB.default_values(::Type{NameAttrList}) = (;name = "", attr = Dict{String,AttrValue}()) -PB.field_numbers(::Type{NameAttrList}) = (;name = 1, attr = 2) - -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:NameAttrList}) - name = "" - attr = Dict{String,AttrValue}() - while !PB.message_done(d) - field_number, wire_type = PB.decode_tag(d) - if field_number == 1 - name = PB.decode(d, String) - elseif field_number == 2 - PB.decode!(d, attr) - else - PB.skip(d, wire_type) - end - end - return NameAttrList(name, attr) -end - -function PB.encode(e::PB.AbstractProtoEncoder, x::NameAttrList) - initpos = position(e.io) - !isempty(x.name) && PB.encode(e, 1, x.name) - !isempty(x.attr) && PB.encode(e, 2, x.attr) - return position(e.io) - initpos -end -function PB._encoded_size(x::NameAttrList) - encoded_size = 0 - !isempty(x.name) && (encoded_size += PB._encoded_size(x.name, 1)) - !isempty(x.attr) && (encoded_size += PB._encoded_size(x.attr, 2)) - return encoded_size -end - -struct var"AttrValue.ListValue" <: var"##AbstractAttrValue.ListValue" +# Stub definitions for cyclic types +struct var"##Stub#AttrValue.ListValue"{T1<:var"##Abstract#NameAttrList"} <: var"##Abstract#AttrValue.ListValue" s::Vector{Vector{UInt8}} i::Vector{Int64} f::Vector{Float32} @@ -57,13 +20,23 @@ struct var"AttrValue.ListValue" <: var"##AbstractAttrValue.ListValue" var"#type"::Vector{var"#DataType".T} shape::Vector{TensorShapeProto} tensor::Vector{TensorProto} - func::Vector{<:NameAttrList} + func::Vector{T1} end +struct var"##Stub#NameAttrList"{T1<:var"##Abstract#AttrValue"} <: var"##Abstract#NameAttrList" + name::String + attr::Dict{String,T1} +end + +struct var"##Stub#AttrValue" <: var"##Abstract#AttrValue" + value::Union{Nothing,OneOf{<:Union{Vector{UInt8},Int64,Float32,Bool,var"#DataType".T,TensorShapeProto,TensorProto,var"##Stub#AttrValue.ListValue"{var"##Stub#NameAttrList"{var"##Stub#AttrValue"}},var"##Stub#NameAttrList"{var"##Stub#AttrValue"},String}}} +end + +const var"AttrValue.ListValue" = var"##Stub#AttrValue.ListValue"{var"##Stub#NameAttrList"{var"##Stub#AttrValue"}} PB.default_values(::Type{var"AttrValue.ListValue"}) = (;s = Vector{Vector{UInt8}}(), i = Vector{Int64}(), f = Vector{Float32}(), b = Vector{Bool}(), var"#type" = Vector{var"#DataType".T}(), shape = Vector{TensorShapeProto}(), tensor = Vector{TensorProto}(), func = Vector{NameAttrList}()) PB.field_numbers(::Type{var"AttrValue.ListValue"}) = (;s = 2, i = 3, f = 4, b = 5, var"#type" = 6, shape = 7, tensor = 8, func = 9) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"AttrValue.ListValue"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"AttrValue.ListValue"}, _endpos::Int=0, _group::Bool=false) s = PB.BufferedVector{Vector{UInt8}}() i = PB.BufferedVector{Int64}() f = PB.BufferedVector{Float32}() @@ -72,7 +45,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"AttrValue.ListValue" shape = PB.BufferedVector{TensorShapeProto}() tensor = PB.BufferedVector{TensorProto}() func = PB.BufferedVector{NameAttrList}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 2 PB.decode!(d, s) @@ -91,7 +64,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"AttrValue.ListValue" elseif field_number == 9 PB.decode!(d, func) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"AttrValue.ListValue"(s[], i[], f[], b[], var"#type"[], shape[], tensor[], func[]) @@ -122,18 +95,49 @@ function PB._encoded_size(x::var"AttrValue.ListValue") return encoded_size end -struct AttrValue <: var"##AbstractAttrValue" - value::Union{Nothing,OneOf{<:Union{Vector{UInt8},Int64,Float32,Bool,var"#DataType".T,TensorShapeProto,TensorProto,var"##AbstractAttrValue.ListValue",var"##AbstractNameAttrList",String}}} +const NameAttrList = var"##Stub#NameAttrList"{var"##Stub#AttrValue"} +PB.default_values(::Type{NameAttrList}) = (;name = "", attr = Dict{String,AttrValue}()) +PB.field_numbers(::Type{NameAttrList}) = (;name = 1, attr = 2) + +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:NameAttrList}, _endpos::Int=0, _group::Bool=false) + name = "" + attr = Dict{String,AttrValue}() + while !PB.message_done(d, _endpos, _group) + field_number, wire_type = PB.decode_tag(d) + if field_number == 1 + name = PB.decode(d, String) + elseif field_number == 2 + PB.decode!(d, attr) + else + Base.skip(d, wire_type) + end + end + return NameAttrList(name, attr) +end + +function PB.encode(e::PB.AbstractProtoEncoder, x::NameAttrList) + initpos = position(e.io) + !isempty(x.name) && PB.encode(e, 1, x.name) + !isempty(x.attr) && PB.encode(e, 2, x.attr) + return position(e.io) - initpos +end +function PB._encoded_size(x::NameAttrList) + encoded_size = 0 + !isempty(x.name) && (encoded_size += PB._encoded_size(x.name, 1)) + !isempty(x.attr) && (encoded_size += PB._encoded_size(x.attr, 2)) + return encoded_size end + +const AttrValue = var"##Stub#AttrValue" PB.oneof_field_types(::Type{AttrValue}) = (; value = (;s=Vector{UInt8}, i=Int64, f=Float32, b=Bool, var"#type"=var"#DataType".T, shape=TensorShapeProto, tensor=TensorProto, list=var"AttrValue.ListValue", func=NameAttrList, placeholder=String), ) PB.default_values(::Type{AttrValue}) = (;s = UInt8[], i = zero(Int64), f = zero(Float32), b = false, var"#type" = var"#DataType".DT_INVALID, shape = nothing, tensor = nothing, list = nothing, func = nothing, placeholder = "") PB.field_numbers(::Type{AttrValue}) = (;s = 2, i = 3, f = 4, b = 5, var"#type" = 6, shape = 7, tensor = 8, list = 1, func = 10, placeholder = 9) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:AttrValue}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:AttrValue}, _endpos::Int=0, _group::Bool=false) value = nothing - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 2 value = OneOf(:s, PB.decode(d, Vector{UInt8})) @@ -156,7 +160,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:AttrValue}) elseif field_number == 9 value = OneOf(:placeholder, PB.decode(d, String)) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return AttrValue(value) diff --git a/src/protojl/tensorboard/tensorboard/cluster_pb.jl b/src/protojl/tensorboard/tensorboard/cluster_pb.jl index 3202c088..046cfe1f 100644 --- a/src/protojl/tensorboard/tensorboard/cluster_pb.jl +++ b/src/protojl/tensorboard/tensorboard/cluster_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.424 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/cluster.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/cluster.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export JobDef, ClusterDef + struct JobDef name::String tasks::Dict{Int32,String} @@ -14,17 +15,17 @@ end PB.default_values(::Type{JobDef}) = (;name = "", tasks = Dict{Int32,String}()) PB.field_numbers(::Type{JobDef}) = (;name = 1, tasks = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:JobDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:JobDef}, _endpos::Int=0, _group::Bool=false) name = "" tasks = Dict{Int32,String}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) elseif field_number == 2 PB.decode!(d, tasks) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return JobDef(name, tasks) @@ -49,14 +50,14 @@ end PB.default_values(::Type{ClusterDef}) = (;job = Vector{JobDef}()) PB.field_numbers(::Type{ClusterDef}) = (;job = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ClusterDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ClusterDef}, _endpos::Int=0, _group::Bool=false) job = PB.BufferedVector{JobDef}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, job) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return ClusterDef(job[]) diff --git a/src/protojl/tensorboard/tensorboard/config_pb.jl b/src/protojl/tensorboard/tensorboard/config_pb.jl index 89ff61f9..5e34ca1b 100644 --- a/src/protojl/tensorboard/tensorboard/config_pb.jl +++ b/src/protojl/tensorboard/tensorboard/config_pb.jl @@ -1,21 +1,118 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.779 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/config.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/config.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf using ProtoBuf.EnumX: @enumx -export var"OptimizerOptions.Level", var"GPUOptions.Experimental.VirtualDevices" -export ThreadPoolOptionProto, var"OptimizerOptions.GlobalJitLevel" -export var"RunMetadata.FunctionGraphs", TensorConnection -export var"ConfigProto.Experimental.MlirBridgeRollout", var"RunOptions.TraceLevel" -export var"RunOptions.Experimental.RunHandlerPoolOptions", SessionMetadata -export var"GPUOptions.Experimental", OptimizerOptions, var"RunOptions.Experimental" -export var"ConfigProto.Experimental", RunMetadata, GPUOptions, GraphOptions, RunOptions -export ConfigProto, CallableOptions +export var"GPUOptions.Experimental.StreamMergeOptions", var"OptimizerOptions.Level" +export BatchingOptions, var"GPUOptions.Experimental.VirtualDevices", ThreadPoolOptionProto +export var"OptimizerOptions.GlobalJitLevel", var"RunMetadata.FunctionGraphs" +export TensorConnection, var"ConfigProto.Experimental.MlirBridgeRollout" +export var"RunOptions.TraceLevel", var"RunOptions.Experimental.RunHandlerPoolOptions" +export SessionMetadata, var"GPUOptions.Experimental", OptimizerOptions +export var"RunOptions.Experimental", var"ConfigProto.Experimental", RunMetadata, GPUOptions +export GraphOptions, RunOptions, ConfigProto, CallableOptions + + +struct var"GPUOptions.Experimental.StreamMergeOptions" + merge_host_to_device_stream::Bool + merge_device_to_host_stream::Bool + merge_device_to_device_stream::Bool +end +PB.default_values(::Type{var"GPUOptions.Experimental.StreamMergeOptions"}) = (;merge_host_to_device_stream = false, merge_device_to_host_stream = false, merge_device_to_device_stream = false) +PB.field_numbers(::Type{var"GPUOptions.Experimental.StreamMergeOptions"}) = (;merge_host_to_device_stream = 1, merge_device_to_host_stream = 2, merge_device_to_device_stream = 3) + +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"GPUOptions.Experimental.StreamMergeOptions"}, _endpos::Int=0, _group::Bool=false) + merge_host_to_device_stream = false + merge_device_to_host_stream = false + merge_device_to_device_stream = false + while !PB.message_done(d, _endpos, _group) + field_number, wire_type = PB.decode_tag(d) + if field_number == 1 + merge_host_to_device_stream = PB.decode(d, Bool) + elseif field_number == 2 + merge_device_to_host_stream = PB.decode(d, Bool) + elseif field_number == 3 + merge_device_to_device_stream = PB.decode(d, Bool) + else + Base.skip(d, wire_type) + end + end + return var"GPUOptions.Experimental.StreamMergeOptions"(merge_host_to_device_stream, merge_device_to_host_stream, merge_device_to_device_stream) +end + +function PB.encode(e::PB.AbstractProtoEncoder, x::var"GPUOptions.Experimental.StreamMergeOptions") + initpos = position(e.io) + x.merge_host_to_device_stream != false && PB.encode(e, 1, x.merge_host_to_device_stream) + x.merge_device_to_host_stream != false && PB.encode(e, 2, x.merge_device_to_host_stream) + x.merge_device_to_device_stream != false && PB.encode(e, 3, x.merge_device_to_device_stream) + return position(e.io) - initpos +end +function PB._encoded_size(x::var"GPUOptions.Experimental.StreamMergeOptions") + encoded_size = 0 + x.merge_host_to_device_stream != false && (encoded_size += PB._encoded_size(x.merge_host_to_device_stream, 1)) + x.merge_device_to_host_stream != false && (encoded_size += PB._encoded_size(x.merge_device_to_host_stream, 2)) + x.merge_device_to_device_stream != false && (encoded_size += PB._encoded_size(x.merge_device_to_device_stream, 3)) + return encoded_size +end @enumx var"OptimizerOptions.Level" L1=0 L0=-1 +struct BatchingOptions + num_batch_threads::Int32 + max_batch_size::Int32 + batch_timeout_micros::Int32 + allowed_batch_sizes::Vector{Int32} + max_enqueued_batches::Int32 +end +PB.default_values(::Type{BatchingOptions}) = (;num_batch_threads = zero(Int32), max_batch_size = zero(Int32), batch_timeout_micros = zero(Int32), allowed_batch_sizes = Vector{Int32}(), max_enqueued_batches = zero(Int32)) +PB.field_numbers(::Type{BatchingOptions}) = (;num_batch_threads = 1, max_batch_size = 2, batch_timeout_micros = 3, allowed_batch_sizes = 4, max_enqueued_batches = 5) + +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:BatchingOptions}, _endpos::Int=0, _group::Bool=false) + num_batch_threads = zero(Int32) + max_batch_size = zero(Int32) + batch_timeout_micros = zero(Int32) + allowed_batch_sizes = PB.BufferedVector{Int32}() + max_enqueued_batches = zero(Int32) + while !PB.message_done(d, _endpos, _group) + field_number, wire_type = PB.decode_tag(d) + if field_number == 1 + num_batch_threads = PB.decode(d, Int32) + elseif field_number == 2 + max_batch_size = PB.decode(d, Int32) + elseif field_number == 3 + batch_timeout_micros = PB.decode(d, Int32) + elseif field_number == 4 + PB.decode!(d, wire_type, allowed_batch_sizes) + elseif field_number == 5 + max_enqueued_batches = PB.decode(d, Int32) + else + Base.skip(d, wire_type) + end + end + return BatchingOptions(num_batch_threads, max_batch_size, batch_timeout_micros, allowed_batch_sizes[], max_enqueued_batches) +end + +function PB.encode(e::PB.AbstractProtoEncoder, x::BatchingOptions) + initpos = position(e.io) + x.num_batch_threads != zero(Int32) && PB.encode(e, 1, x.num_batch_threads) + x.max_batch_size != zero(Int32) && PB.encode(e, 2, x.max_batch_size) + x.batch_timeout_micros != zero(Int32) && PB.encode(e, 3, x.batch_timeout_micros) + !isempty(x.allowed_batch_sizes) && PB.encode(e, 4, x.allowed_batch_sizes) + x.max_enqueued_batches != zero(Int32) && PB.encode(e, 5, x.max_enqueued_batches) + return position(e.io) - initpos +end +function PB._encoded_size(x::BatchingOptions) + encoded_size = 0 + x.num_batch_threads != zero(Int32) && (encoded_size += PB._encoded_size(x.num_batch_threads, 1)) + x.max_batch_size != zero(Int32) && (encoded_size += PB._encoded_size(x.max_batch_size, 2)) + x.batch_timeout_micros != zero(Int32) && (encoded_size += PB._encoded_size(x.batch_timeout_micros, 3)) + !isempty(x.allowed_batch_sizes) && (encoded_size += PB._encoded_size(x.allowed_batch_sizes, 4)) + x.max_enqueued_batches != zero(Int32) && (encoded_size += PB._encoded_size(x.max_enqueued_batches, 5)) + return encoded_size +end + struct var"GPUOptions.Experimental.VirtualDevices" memory_limit_mb::Vector{Float32} priority::Vector{Int32} @@ -24,11 +121,11 @@ end PB.default_values(::Type{var"GPUOptions.Experimental.VirtualDevices"}) = (;memory_limit_mb = Vector{Float32}(), priority = Vector{Int32}(), device_ordinal = Vector{Int32}()) PB.field_numbers(::Type{var"GPUOptions.Experimental.VirtualDevices"}) = (;memory_limit_mb = 1, priority = 2, device_ordinal = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"GPUOptions.Experimental.VirtualDevices"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"GPUOptions.Experimental.VirtualDevices"}, _endpos::Int=0, _group::Bool=false) memory_limit_mb = PB.BufferedVector{Float32}() priority = PB.BufferedVector{Int32}() device_ordinal = PB.BufferedVector{Int32}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, wire_type, memory_limit_mb) @@ -37,7 +134,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"GPUOptions.Experimen elseif field_number == 3 PB.decode!(d, wire_type, device_ordinal) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"GPUOptions.Experimental.VirtualDevices"(memory_limit_mb[], priority[], device_ordinal[]) @@ -65,17 +162,17 @@ end PB.default_values(::Type{ThreadPoolOptionProto}) = (;num_threads = zero(Int32), global_name = "") PB.field_numbers(::Type{ThreadPoolOptionProto}) = (;num_threads = 1, global_name = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ThreadPoolOptionProto}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ThreadPoolOptionProto}, _endpos::Int=0, _group::Bool=false) num_threads = zero(Int32) global_name = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 num_threads = PB.decode(d, Int32) elseif field_number == 2 global_name = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return ThreadPoolOptionProto(num_threads, global_name) @@ -104,11 +201,11 @@ end PB.default_values(::Type{var"RunMetadata.FunctionGraphs"}) = (;partition_graphs = Vector{GraphDef}(), pre_optimization_graph = nothing, post_optimization_graph = nothing) PB.field_numbers(::Type{var"RunMetadata.FunctionGraphs"}) = (;partition_graphs = 1, pre_optimization_graph = 2, post_optimization_graph = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"RunMetadata.FunctionGraphs"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"RunMetadata.FunctionGraphs"}, _endpos::Int=0, _group::Bool=false) partition_graphs = PB.BufferedVector{GraphDef}() pre_optimization_graph = Ref{Union{Nothing,GraphDef}}(nothing) post_optimization_graph = Ref{Union{Nothing,GraphDef}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, partition_graphs) @@ -117,7 +214,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"RunMetadata.Function elseif field_number == 3 PB.decode!(d, post_optimization_graph) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"RunMetadata.FunctionGraphs"(partition_graphs[], pre_optimization_graph[], post_optimization_graph[]) @@ -145,17 +242,17 @@ end PB.default_values(::Type{TensorConnection}) = (;from_tensor = "", to_tensor = "") PB.field_numbers(::Type{TensorConnection}) = (;from_tensor = 1, to_tensor = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorConnection}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorConnection}, _endpos::Int=0, _group::Bool=false) from_tensor = "" to_tensor = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 from_tensor = PB.decode(d, String) elseif field_number == 2 to_tensor = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return TensorConnection(from_tensor, to_tensor) @@ -185,14 +282,14 @@ end PB.default_values(::Type{var"RunOptions.Experimental.RunHandlerPoolOptions"}) = (;priority = zero(Int64)) PB.field_numbers(::Type{var"RunOptions.Experimental.RunHandlerPoolOptions"}) = (;priority = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"RunOptions.Experimental.RunHandlerPoolOptions"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"RunOptions.Experimental.RunHandlerPoolOptions"}, _endpos::Int=0, _group::Bool=false) priority = zero(Int64) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 priority = PB.decode(d, Int64) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"RunOptions.Experimental.RunHandlerPoolOptions"(priority) @@ -216,17 +313,17 @@ end PB.default_values(::Type{SessionMetadata}) = (;name = "", version = zero(Int64)) PB.field_numbers(::Type{SessionMetadata}) = (;name = 1, version = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SessionMetadata}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SessionMetadata}, _endpos::Int=0, _group::Bool=false) name = "" version = zero(Int64) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) elseif field_number == 2 version = PB.decode(d, Int64) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SessionMetadata(name, version) @@ -247,6 +344,7 @@ end struct var"GPUOptions.Experimental" virtual_devices::Vector{var"GPUOptions.Experimental.VirtualDevices"} + num_virtual_devices_per_gpu::Int32 use_unified_memory::Bool num_dev_to_dev_copy_streams::Int32 collective_ring_order::String @@ -259,12 +357,17 @@ struct var"GPUOptions.Experimental" disallow_retry_on_allocation_failure::Bool gpu_host_mem_limit_in_mb::Float32 gpu_host_mem_disallow_growth::Bool + gpu_system_memory_size_in_mb::Int32 + populate_pjrt_gpu_client_creation_info::Bool + node_id::Int32 + stream_merge_options::Union{Nothing,var"GPUOptions.Experimental.StreamMergeOptions"} end -PB.default_values(::Type{var"GPUOptions.Experimental"}) = (;virtual_devices = Vector{var"GPUOptions.Experimental.VirtualDevices"}(), use_unified_memory = false, num_dev_to_dev_copy_streams = zero(Int32), collective_ring_order = "", timestamped_allocator = false, kernel_tracker_max_interval = zero(Int32), kernel_tracker_max_bytes = zero(Int32), kernel_tracker_max_pending = zero(Int32), internal_fragmentation_fraction = zero(Float64), use_cuda_malloc_async = false, disallow_retry_on_allocation_failure = false, gpu_host_mem_limit_in_mb = zero(Float32), gpu_host_mem_disallow_growth = false) -PB.field_numbers(::Type{var"GPUOptions.Experimental"}) = (;virtual_devices = 1, use_unified_memory = 2, num_dev_to_dev_copy_streams = 3, collective_ring_order = 4, timestamped_allocator = 5, kernel_tracker_max_interval = 7, kernel_tracker_max_bytes = 8, kernel_tracker_max_pending = 9, internal_fragmentation_fraction = 10, use_cuda_malloc_async = 11, disallow_retry_on_allocation_failure = 12, gpu_host_mem_limit_in_mb = 13, gpu_host_mem_disallow_growth = 14) +PB.default_values(::Type{var"GPUOptions.Experimental"}) = (;virtual_devices = Vector{var"GPUOptions.Experimental.VirtualDevices"}(), num_virtual_devices_per_gpu = zero(Int32), use_unified_memory = false, num_dev_to_dev_copy_streams = zero(Int32), collective_ring_order = "", timestamped_allocator = false, kernel_tracker_max_interval = zero(Int32), kernel_tracker_max_bytes = zero(Int32), kernel_tracker_max_pending = zero(Int32), internal_fragmentation_fraction = zero(Float64), use_cuda_malloc_async = false, disallow_retry_on_allocation_failure = false, gpu_host_mem_limit_in_mb = zero(Float32), gpu_host_mem_disallow_growth = false, gpu_system_memory_size_in_mb = zero(Int32), populate_pjrt_gpu_client_creation_info = false, node_id = zero(Int32), stream_merge_options = nothing) +PB.field_numbers(::Type{var"GPUOptions.Experimental"}) = (;virtual_devices = 1, num_virtual_devices_per_gpu = 15, use_unified_memory = 2, num_dev_to_dev_copy_streams = 3, collective_ring_order = 4, timestamped_allocator = 5, kernel_tracker_max_interval = 7, kernel_tracker_max_bytes = 8, kernel_tracker_max_pending = 9, internal_fragmentation_fraction = 10, use_cuda_malloc_async = 11, disallow_retry_on_allocation_failure = 12, gpu_host_mem_limit_in_mb = 13, gpu_host_mem_disallow_growth = 14, gpu_system_memory_size_in_mb = 16, populate_pjrt_gpu_client_creation_info = 17, node_id = 18, stream_merge_options = 19) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"GPUOptions.Experimental"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"GPUOptions.Experimental"}, _endpos::Int=0, _group::Bool=false) virtual_devices = PB.BufferedVector{var"GPUOptions.Experimental.VirtualDevices"}() + num_virtual_devices_per_gpu = zero(Int32) use_unified_memory = false num_dev_to_dev_copy_streams = zero(Int32) collective_ring_order = "" @@ -277,10 +380,16 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"GPUOptions.Experimen disallow_retry_on_allocation_failure = false gpu_host_mem_limit_in_mb = zero(Float32) gpu_host_mem_disallow_growth = false - while !PB.message_done(d) + gpu_system_memory_size_in_mb = zero(Int32) + populate_pjrt_gpu_client_creation_info = false + node_id = zero(Int32) + stream_merge_options = Ref{Union{Nothing,var"GPUOptions.Experimental.StreamMergeOptions"}}(nothing) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, virtual_devices) + elseif field_number == 15 + num_virtual_devices_per_gpu = PB.decode(d, Int32) elseif field_number == 2 use_unified_memory = PB.decode(d, Bool) elseif field_number == 3 @@ -305,16 +414,25 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"GPUOptions.Experimen gpu_host_mem_limit_in_mb = PB.decode(d, Float32) elseif field_number == 14 gpu_host_mem_disallow_growth = PB.decode(d, Bool) + elseif field_number == 16 + gpu_system_memory_size_in_mb = PB.decode(d, Int32) + elseif field_number == 17 + populate_pjrt_gpu_client_creation_info = PB.decode(d, Bool) + elseif field_number == 18 + node_id = PB.decode(d, Int32) + elseif field_number == 19 + PB.decode!(d, stream_merge_options) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return var"GPUOptions.Experimental"(virtual_devices[], use_unified_memory, num_dev_to_dev_copy_streams, collective_ring_order, timestamped_allocator, kernel_tracker_max_interval, kernel_tracker_max_bytes, kernel_tracker_max_pending, internal_fragmentation_fraction, use_cuda_malloc_async, disallow_retry_on_allocation_failure, gpu_host_mem_limit_in_mb, gpu_host_mem_disallow_growth) + return var"GPUOptions.Experimental"(virtual_devices[], num_virtual_devices_per_gpu, use_unified_memory, num_dev_to_dev_copy_streams, collective_ring_order, timestamped_allocator, kernel_tracker_max_interval, kernel_tracker_max_bytes, kernel_tracker_max_pending, internal_fragmentation_fraction, use_cuda_malloc_async, disallow_retry_on_allocation_failure, gpu_host_mem_limit_in_mb, gpu_host_mem_disallow_growth, gpu_system_memory_size_in_mb, populate_pjrt_gpu_client_creation_info, node_id, stream_merge_options[]) end function PB.encode(e::PB.AbstractProtoEncoder, x::var"GPUOptions.Experimental") initpos = position(e.io) !isempty(x.virtual_devices) && PB.encode(e, 1, x.virtual_devices) + x.num_virtual_devices_per_gpu != zero(Int32) && PB.encode(e, 15, x.num_virtual_devices_per_gpu) x.use_unified_memory != false && PB.encode(e, 2, x.use_unified_memory) x.num_dev_to_dev_copy_streams != zero(Int32) && PB.encode(e, 3, x.num_dev_to_dev_copy_streams) !isempty(x.collective_ring_order) && PB.encode(e, 4, x.collective_ring_order) @@ -322,16 +440,21 @@ function PB.encode(e::PB.AbstractProtoEncoder, x::var"GPUOptions.Experimental") x.kernel_tracker_max_interval != zero(Int32) && PB.encode(e, 7, x.kernel_tracker_max_interval) x.kernel_tracker_max_bytes != zero(Int32) && PB.encode(e, 8, x.kernel_tracker_max_bytes) x.kernel_tracker_max_pending != zero(Int32) && PB.encode(e, 9, x.kernel_tracker_max_pending) - x.internal_fragmentation_fraction != zero(Float64) && PB.encode(e, 10, x.internal_fragmentation_fraction) + x.internal_fragmentation_fraction !== zero(Float64) && PB.encode(e, 10, x.internal_fragmentation_fraction) x.use_cuda_malloc_async != false && PB.encode(e, 11, x.use_cuda_malloc_async) x.disallow_retry_on_allocation_failure != false && PB.encode(e, 12, x.disallow_retry_on_allocation_failure) - x.gpu_host_mem_limit_in_mb != zero(Float32) && PB.encode(e, 13, x.gpu_host_mem_limit_in_mb) + x.gpu_host_mem_limit_in_mb !== zero(Float32) && PB.encode(e, 13, x.gpu_host_mem_limit_in_mb) x.gpu_host_mem_disallow_growth != false && PB.encode(e, 14, x.gpu_host_mem_disallow_growth) + x.gpu_system_memory_size_in_mb != zero(Int32) && PB.encode(e, 16, x.gpu_system_memory_size_in_mb) + x.populate_pjrt_gpu_client_creation_info != false && PB.encode(e, 17, x.populate_pjrt_gpu_client_creation_info) + x.node_id != zero(Int32) && PB.encode(e, 18, x.node_id) + !isnothing(x.stream_merge_options) && PB.encode(e, 19, x.stream_merge_options) return position(e.io) - initpos end function PB._encoded_size(x::var"GPUOptions.Experimental") encoded_size = 0 !isempty(x.virtual_devices) && (encoded_size += PB._encoded_size(x.virtual_devices, 1)) + x.num_virtual_devices_per_gpu != zero(Int32) && (encoded_size += PB._encoded_size(x.num_virtual_devices_per_gpu, 15)) x.use_unified_memory != false && (encoded_size += PB._encoded_size(x.use_unified_memory, 2)) x.num_dev_to_dev_copy_streams != zero(Int32) && (encoded_size += PB._encoded_size(x.num_dev_to_dev_copy_streams, 3)) !isempty(x.collective_ring_order) && (encoded_size += PB._encoded_size(x.collective_ring_order, 4)) @@ -339,11 +462,15 @@ function PB._encoded_size(x::var"GPUOptions.Experimental") x.kernel_tracker_max_interval != zero(Int32) && (encoded_size += PB._encoded_size(x.kernel_tracker_max_interval, 7)) x.kernel_tracker_max_bytes != zero(Int32) && (encoded_size += PB._encoded_size(x.kernel_tracker_max_bytes, 8)) x.kernel_tracker_max_pending != zero(Int32) && (encoded_size += PB._encoded_size(x.kernel_tracker_max_pending, 9)) - x.internal_fragmentation_fraction != zero(Float64) && (encoded_size += PB._encoded_size(x.internal_fragmentation_fraction, 10)) + x.internal_fragmentation_fraction !== zero(Float64) && (encoded_size += PB._encoded_size(x.internal_fragmentation_fraction, 10)) x.use_cuda_malloc_async != false && (encoded_size += PB._encoded_size(x.use_cuda_malloc_async, 11)) x.disallow_retry_on_allocation_failure != false && (encoded_size += PB._encoded_size(x.disallow_retry_on_allocation_failure, 12)) - x.gpu_host_mem_limit_in_mb != zero(Float32) && (encoded_size += PB._encoded_size(x.gpu_host_mem_limit_in_mb, 13)) + x.gpu_host_mem_limit_in_mb !== zero(Float32) && (encoded_size += PB._encoded_size(x.gpu_host_mem_limit_in_mb, 13)) x.gpu_host_mem_disallow_growth != false && (encoded_size += PB._encoded_size(x.gpu_host_mem_disallow_growth, 14)) + x.gpu_system_memory_size_in_mb != zero(Int32) && (encoded_size += PB._encoded_size(x.gpu_system_memory_size_in_mb, 16)) + x.populate_pjrt_gpu_client_creation_info != false && (encoded_size += PB._encoded_size(x.populate_pjrt_gpu_client_creation_info, 17)) + x.node_id != zero(Int32) && (encoded_size += PB._encoded_size(x.node_id, 18)) + !isnothing(x.stream_merge_options) && (encoded_size += PB._encoded_size(x.stream_merge_options, 19)) return encoded_size end @@ -359,7 +486,7 @@ end PB.default_values(::Type{OptimizerOptions}) = (;do_common_subexpression_elimination = false, do_constant_folding = false, max_folded_constant_in_bytes = zero(Int64), do_function_inlining = false, opt_level = var"OptimizerOptions.Level".L1, global_jit_level = var"OptimizerOptions.GlobalJitLevel".DEFAULT, cpu_global_jit = false) PB.field_numbers(::Type{OptimizerOptions}) = (;do_common_subexpression_elimination = 1, do_constant_folding = 2, max_folded_constant_in_bytes = 6, do_function_inlining = 4, opt_level = 3, global_jit_level = 5, cpu_global_jit = 7) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OptimizerOptions}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OptimizerOptions}, _endpos::Int=0, _group::Bool=false) do_common_subexpression_elimination = false do_constant_folding = false max_folded_constant_in_bytes = zero(Int64) @@ -367,7 +494,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OptimizerOptions}) opt_level = var"OptimizerOptions.Level".L1 global_jit_level = var"OptimizerOptions.GlobalJitLevel".DEFAULT cpu_global_jit = false - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 do_common_subexpression_elimination = PB.decode(d, Bool) @@ -384,7 +511,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OptimizerOptions}) elseif field_number == 7 cpu_global_jit = PB.decode(d, Bool) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return OptimizerOptions(do_common_subexpression_elimination, do_constant_folding, max_folded_constant_in_bytes, do_function_inlining, opt_level, global_jit_level, cpu_global_jit) @@ -421,11 +548,11 @@ end PB.default_values(::Type{var"RunOptions.Experimental"}) = (;collective_graph_key = zero(Int64), use_run_handler_pool = false, run_handler_pool_options = nothing) PB.field_numbers(::Type{var"RunOptions.Experimental"}) = (;collective_graph_key = 1, use_run_handler_pool = 2, run_handler_pool_options = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"RunOptions.Experimental"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"RunOptions.Experimental"}, _endpos::Int=0, _group::Bool=false) collective_graph_key = zero(Int64) use_run_handler_pool = false run_handler_pool_options = Ref{Union{Nothing,var"RunOptions.Experimental.RunHandlerPoolOptions"}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 collective_graph_key = PB.decode(d, Int64) @@ -434,7 +561,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"RunOptions.Experimen elseif field_number == 3 PB.decode!(d, run_handler_pool_options) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"RunOptions.Experimental"(collective_graph_key, use_run_handler_pool, run_handler_pool_options[]) @@ -473,16 +600,25 @@ struct var"ConfigProto.Experimental" disable_output_partition_graphs::Bool xla_fusion_autotuner_thresh::Int64 use_tfrt::Bool + enable_multi_host::Bool + tfrt_use_ifrt::Bool + backend_server_port::Int32 + target_tpu::Bool + target_gpu::Bool + stream_merge_threshold::Int32 disable_functional_ops_lowering::Bool xla_prefer_single_graph_cluster::Bool coordination_config::Union{Nothing,CoordinationServiceConfig} disable_optimize_for_static_graph::Bool + disable_eager_executor_streaming_enqueue::Bool + finalize_function_library_runtime::Bool + finalize_resource_manager::Bool end PB.reserved_fields(::Type{var"ConfigProto.Experimental"}) = (names = String[], numbers = Union{Int,UnitRange{Int}}[2, 19, 20, 25]) -PB.default_values(::Type{var"ConfigProto.Experimental"}) = (;collective_group_leader = "", executor_type = "", recv_buf_max_chunk = zero(Int32), use_numa_affinity = false, collective_deterministic_sequential_execution = false, collective_nccl = false, share_session_state_in_clusterspec_propagation = false, disable_thread_spinning = false, share_cluster_devices_in_session = false, session_metadata = nothing, optimize_for_static_graph = false, enable_mlir_bridge = false, mlir_bridge_rollout = var"ConfigProto.Experimental.MlirBridgeRollout".MLIR_BRIDGE_ROLLOUT_UNSPECIFIED, enable_mlir_graph_optimization = false, disable_output_partition_graphs = false, xla_fusion_autotuner_thresh = zero(Int64), use_tfrt = false, disable_functional_ops_lowering = false, xla_prefer_single_graph_cluster = false, coordination_config = nothing, disable_optimize_for_static_graph = false) -PB.field_numbers(::Type{var"ConfigProto.Experimental"}) = (;collective_group_leader = 1, executor_type = 3, recv_buf_max_chunk = 4, use_numa_affinity = 5, collective_deterministic_sequential_execution = 6, collective_nccl = 7, share_session_state_in_clusterspec_propagation = 8, disable_thread_spinning = 9, share_cluster_devices_in_session = 10, session_metadata = 11, optimize_for_static_graph = 12, enable_mlir_bridge = 13, mlir_bridge_rollout = 17, enable_mlir_graph_optimization = 16, disable_output_partition_graphs = 14, xla_fusion_autotuner_thresh = 15, use_tfrt = 18, disable_functional_ops_lowering = 21, xla_prefer_single_graph_cluster = 22, coordination_config = 23, disable_optimize_for_static_graph = 24) +PB.default_values(::Type{var"ConfigProto.Experimental"}) = (;collective_group_leader = "", executor_type = "", recv_buf_max_chunk = zero(Int32), use_numa_affinity = false, collective_deterministic_sequential_execution = false, collective_nccl = false, share_session_state_in_clusterspec_propagation = false, disable_thread_spinning = false, share_cluster_devices_in_session = false, session_metadata = nothing, optimize_for_static_graph = false, enable_mlir_bridge = false, mlir_bridge_rollout = var"ConfigProto.Experimental.MlirBridgeRollout".MLIR_BRIDGE_ROLLOUT_UNSPECIFIED, enable_mlir_graph_optimization = false, disable_output_partition_graphs = false, xla_fusion_autotuner_thresh = zero(Int64), use_tfrt = false, enable_multi_host = false, tfrt_use_ifrt = false, backend_server_port = zero(Int32), target_tpu = false, target_gpu = false, stream_merge_threshold = zero(Int32), disable_functional_ops_lowering = false, xla_prefer_single_graph_cluster = false, coordination_config = nothing, disable_optimize_for_static_graph = false, disable_eager_executor_streaming_enqueue = false, finalize_function_library_runtime = false, finalize_resource_manager = false) +PB.field_numbers(::Type{var"ConfigProto.Experimental"}) = (;collective_group_leader = 1, executor_type = 3, recv_buf_max_chunk = 4, use_numa_affinity = 5, collective_deterministic_sequential_execution = 6, collective_nccl = 7, share_session_state_in_clusterspec_propagation = 8, disable_thread_spinning = 9, share_cluster_devices_in_session = 10, session_metadata = 11, optimize_for_static_graph = 12, enable_mlir_bridge = 13, mlir_bridge_rollout = 17, enable_mlir_graph_optimization = 16, disable_output_partition_graphs = 14, xla_fusion_autotuner_thresh = 15, use_tfrt = 18, enable_multi_host = 27, tfrt_use_ifrt = 32, backend_server_port = 28, target_tpu = 29, target_gpu = 30, stream_merge_threshold = 31, disable_functional_ops_lowering = 21, xla_prefer_single_graph_cluster = 22, coordination_config = 23, disable_optimize_for_static_graph = 24, disable_eager_executor_streaming_enqueue = 26, finalize_function_library_runtime = 33, finalize_resource_manager = 34) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"ConfigProto.Experimental"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"ConfigProto.Experimental"}, _endpos::Int=0, _group::Bool=false) collective_group_leader = "" executor_type = "" recv_buf_max_chunk = zero(Int32) @@ -500,11 +636,20 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"ConfigProto.Experime disable_output_partition_graphs = false xla_fusion_autotuner_thresh = zero(Int64) use_tfrt = false + enable_multi_host = false + tfrt_use_ifrt = false + backend_server_port = zero(Int32) + target_tpu = false + target_gpu = false + stream_merge_threshold = zero(Int32) disable_functional_ops_lowering = false xla_prefer_single_graph_cluster = false coordination_config = Ref{Union{Nothing,CoordinationServiceConfig}}(nothing) disable_optimize_for_static_graph = false - while !PB.message_done(d) + disable_eager_executor_streaming_enqueue = false + finalize_function_library_runtime = false + finalize_resource_manager = false + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 collective_group_leader = PB.decode(d, String) @@ -540,6 +685,18 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"ConfigProto.Experime xla_fusion_autotuner_thresh = PB.decode(d, Int64) elseif field_number == 18 use_tfrt = PB.decode(d, Bool) + elseif field_number == 27 + enable_multi_host = PB.decode(d, Bool) + elseif field_number == 32 + tfrt_use_ifrt = PB.decode(d, Bool) + elseif field_number == 28 + backend_server_port = PB.decode(d, Int32) + elseif field_number == 29 + target_tpu = PB.decode(d, Bool) + elseif field_number == 30 + target_gpu = PB.decode(d, Bool) + elseif field_number == 31 + stream_merge_threshold = PB.decode(d, Int32) elseif field_number == 21 disable_functional_ops_lowering = PB.decode(d, Bool) elseif field_number == 22 @@ -548,11 +705,17 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"ConfigProto.Experime PB.decode!(d, coordination_config) elseif field_number == 24 disable_optimize_for_static_graph = PB.decode(d, Bool) + elseif field_number == 26 + disable_eager_executor_streaming_enqueue = PB.decode(d, Bool) + elseif field_number == 33 + finalize_function_library_runtime = PB.decode(d, Bool) + elseif field_number == 34 + finalize_resource_manager = PB.decode(d, Bool) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return var"ConfigProto.Experimental"(collective_group_leader, executor_type, recv_buf_max_chunk, use_numa_affinity, collective_deterministic_sequential_execution, collective_nccl, share_session_state_in_clusterspec_propagation, disable_thread_spinning, share_cluster_devices_in_session, session_metadata[], optimize_for_static_graph, enable_mlir_bridge, mlir_bridge_rollout, enable_mlir_graph_optimization, disable_output_partition_graphs, xla_fusion_autotuner_thresh, use_tfrt, disable_functional_ops_lowering, xla_prefer_single_graph_cluster, coordination_config[], disable_optimize_for_static_graph) + return var"ConfigProto.Experimental"(collective_group_leader, executor_type, recv_buf_max_chunk, use_numa_affinity, collective_deterministic_sequential_execution, collective_nccl, share_session_state_in_clusterspec_propagation, disable_thread_spinning, share_cluster_devices_in_session, session_metadata[], optimize_for_static_graph, enable_mlir_bridge, mlir_bridge_rollout, enable_mlir_graph_optimization, disable_output_partition_graphs, xla_fusion_autotuner_thresh, use_tfrt, enable_multi_host, tfrt_use_ifrt, backend_server_port, target_tpu, target_gpu, stream_merge_threshold, disable_functional_ops_lowering, xla_prefer_single_graph_cluster, coordination_config[], disable_optimize_for_static_graph, disable_eager_executor_streaming_enqueue, finalize_function_library_runtime, finalize_resource_manager) end function PB.encode(e::PB.AbstractProtoEncoder, x::var"ConfigProto.Experimental") @@ -574,10 +737,19 @@ function PB.encode(e::PB.AbstractProtoEncoder, x::var"ConfigProto.Experimental") x.disable_output_partition_graphs != false && PB.encode(e, 14, x.disable_output_partition_graphs) x.xla_fusion_autotuner_thresh != zero(Int64) && PB.encode(e, 15, x.xla_fusion_autotuner_thresh) x.use_tfrt != false && PB.encode(e, 18, x.use_tfrt) + x.enable_multi_host != false && PB.encode(e, 27, x.enable_multi_host) + x.tfrt_use_ifrt != false && PB.encode(e, 32, x.tfrt_use_ifrt) + x.backend_server_port != zero(Int32) && PB.encode(e, 28, x.backend_server_port) + x.target_tpu != false && PB.encode(e, 29, x.target_tpu) + x.target_gpu != false && PB.encode(e, 30, x.target_gpu) + x.stream_merge_threshold != zero(Int32) && PB.encode(e, 31, x.stream_merge_threshold) x.disable_functional_ops_lowering != false && PB.encode(e, 21, x.disable_functional_ops_lowering) x.xla_prefer_single_graph_cluster != false && PB.encode(e, 22, x.xla_prefer_single_graph_cluster) !isnothing(x.coordination_config) && PB.encode(e, 23, x.coordination_config) x.disable_optimize_for_static_graph != false && PB.encode(e, 24, x.disable_optimize_for_static_graph) + x.disable_eager_executor_streaming_enqueue != false && PB.encode(e, 26, x.disable_eager_executor_streaming_enqueue) + x.finalize_function_library_runtime != false && PB.encode(e, 33, x.finalize_function_library_runtime) + x.finalize_resource_manager != false && PB.encode(e, 34, x.finalize_resource_manager) return position(e.io) - initpos end function PB._encoded_size(x::var"ConfigProto.Experimental") @@ -599,10 +771,19 @@ function PB._encoded_size(x::var"ConfigProto.Experimental") x.disable_output_partition_graphs != false && (encoded_size += PB._encoded_size(x.disable_output_partition_graphs, 14)) x.xla_fusion_autotuner_thresh != zero(Int64) && (encoded_size += PB._encoded_size(x.xla_fusion_autotuner_thresh, 15)) x.use_tfrt != false && (encoded_size += PB._encoded_size(x.use_tfrt, 18)) + x.enable_multi_host != false && (encoded_size += PB._encoded_size(x.enable_multi_host, 27)) + x.tfrt_use_ifrt != false && (encoded_size += PB._encoded_size(x.tfrt_use_ifrt, 32)) + x.backend_server_port != zero(Int32) && (encoded_size += PB._encoded_size(x.backend_server_port, 28)) + x.target_tpu != false && (encoded_size += PB._encoded_size(x.target_tpu, 29)) + x.target_gpu != false && (encoded_size += PB._encoded_size(x.target_gpu, 30)) + x.stream_merge_threshold != zero(Int32) && (encoded_size += PB._encoded_size(x.stream_merge_threshold, 31)) x.disable_functional_ops_lowering != false && (encoded_size += PB._encoded_size(x.disable_functional_ops_lowering, 21)) x.xla_prefer_single_graph_cluster != false && (encoded_size += PB._encoded_size(x.xla_prefer_single_graph_cluster, 22)) !isnothing(x.coordination_config) && (encoded_size += PB._encoded_size(x.coordination_config, 23)) x.disable_optimize_for_static_graph != false && (encoded_size += PB._encoded_size(x.disable_optimize_for_static_graph, 24)) + x.disable_eager_executor_streaming_enqueue != false && (encoded_size += PB._encoded_size(x.disable_eager_executor_streaming_enqueue, 26)) + x.finalize_function_library_runtime != false && (encoded_size += PB._encoded_size(x.finalize_function_library_runtime, 33)) + x.finalize_resource_manager != false && (encoded_size += PB._encoded_size(x.finalize_resource_manager, 34)) return encoded_size end @@ -616,13 +797,13 @@ end PB.default_values(::Type{RunMetadata}) = (;step_stats = nothing, cost_graph = nothing, partition_graphs = Vector{GraphDef}(), function_graphs = Vector{var"RunMetadata.FunctionGraphs"}(), session_metadata = nothing) PB.field_numbers(::Type{RunMetadata}) = (;step_stats = 1, cost_graph = 2, partition_graphs = 3, function_graphs = 4, session_metadata = 5) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RunMetadata}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RunMetadata}, _endpos::Int=0, _group::Bool=false) step_stats = Ref{Union{Nothing,StepStats}}(nothing) cost_graph = Ref{Union{Nothing,CostGraphDef}}(nothing) partition_graphs = PB.BufferedVector{GraphDef}() function_graphs = PB.BufferedVector{var"RunMetadata.FunctionGraphs"}() session_metadata = Ref{Union{Nothing,SessionMetadata}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, step_stats) @@ -635,7 +816,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RunMetadata}) elseif field_number == 5 PB.decode!(d, session_metadata) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return RunMetadata(step_stats[], cost_graph[], partition_graphs[], function_graphs[], session_metadata[]) @@ -674,7 +855,7 @@ end PB.default_values(::Type{GPUOptions}) = (;per_process_gpu_memory_fraction = zero(Float64), allow_growth = false, allocator_type = "", deferred_deletion_bytes = zero(Int64), visible_device_list = "", polling_active_delay_usecs = zero(Int32), polling_inactive_delay_msecs = zero(Int32), force_gpu_compatible = false, experimental = nothing) PB.field_numbers(::Type{GPUOptions}) = (;per_process_gpu_memory_fraction = 1, allow_growth = 4, allocator_type = 2, deferred_deletion_bytes = 3, visible_device_list = 5, polling_active_delay_usecs = 6, polling_inactive_delay_msecs = 7, force_gpu_compatible = 8, experimental = 9) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GPUOptions}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GPUOptions}, _endpos::Int=0, _group::Bool=false) per_process_gpu_memory_fraction = zero(Float64) allow_growth = false allocator_type = "" @@ -684,7 +865,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GPUOptions}) polling_inactive_delay_msecs = zero(Int32) force_gpu_compatible = false experimental = Ref{Union{Nothing,var"GPUOptions.Experimental"}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 per_process_gpu_memory_fraction = PB.decode(d, Float64) @@ -705,7 +886,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GPUOptions}) elseif field_number == 9 PB.decode!(d, experimental) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return GPUOptions(per_process_gpu_memory_fraction, allow_growth, allocator_type, deferred_deletion_bytes, visible_device_list, polling_active_delay_usecs, polling_inactive_delay_msecs, force_gpu_compatible, experimental[]) @@ -713,7 +894,7 @@ end function PB.encode(e::PB.AbstractProtoEncoder, x::GPUOptions) initpos = position(e.io) - x.per_process_gpu_memory_fraction != zero(Float64) && PB.encode(e, 1, x.per_process_gpu_memory_fraction) + x.per_process_gpu_memory_fraction !== zero(Float64) && PB.encode(e, 1, x.per_process_gpu_memory_fraction) x.allow_growth != false && PB.encode(e, 4, x.allow_growth) !isempty(x.allocator_type) && PB.encode(e, 2, x.allocator_type) x.deferred_deletion_bytes != zero(Int64) && PB.encode(e, 3, x.deferred_deletion_bytes) @@ -726,7 +907,7 @@ function PB.encode(e::PB.AbstractProtoEncoder, x::GPUOptions) end function PB._encoded_size(x::GPUOptions) encoded_size = 0 - x.per_process_gpu_memory_fraction != zero(Float64) && (encoded_size += PB._encoded_size(x.per_process_gpu_memory_fraction, 1)) + x.per_process_gpu_memory_fraction !== zero(Float64) && (encoded_size += PB._encoded_size(x.per_process_gpu_memory_fraction, 1)) x.allow_growth != false && (encoded_size += PB._encoded_size(x.allow_growth, 4)) !isempty(x.allocator_type) && (encoded_size += PB._encoded_size(x.allocator_type, 2)) x.deferred_deletion_bytes != zero(Int64) && (encoded_size += PB._encoded_size(x.deferred_deletion_bytes, 3)) @@ -753,7 +934,7 @@ PB.reserved_fields(::Type{GraphOptions}) = (names = ["skip_common_subexpression_ PB.default_values(::Type{GraphOptions}) = (;enable_recv_scheduling = false, optimizer_options = nothing, build_cost_model = zero(Int64), build_cost_model_after = zero(Int64), infer_shapes = false, place_pruned_graph = false, enable_bfloat16_sendrecv = false, timeline_step = zero(Int32), rewrite_options = nothing) PB.field_numbers(::Type{GraphOptions}) = (;enable_recv_scheduling = 2, optimizer_options = 3, build_cost_model = 4, build_cost_model_after = 9, infer_shapes = 5, place_pruned_graph = 6, enable_bfloat16_sendrecv = 7, timeline_step = 8, rewrite_options = 10) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GraphOptions}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GraphOptions}, _endpos::Int=0, _group::Bool=false) enable_recv_scheduling = false optimizer_options = Ref{Union{Nothing,OptimizerOptions}}(nothing) build_cost_model = zero(Int64) @@ -763,7 +944,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GraphOptions}) enable_bfloat16_sendrecv = false timeline_step = zero(Int32) rewrite_options = Ref{Union{Nothing,RewriterConfig}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 2 enable_recv_scheduling = PB.decode(d, Bool) @@ -784,7 +965,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GraphOptions}) elseif field_number == 10 PB.decode!(d, rewrite_options) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return GraphOptions(enable_recv_scheduling, optimizer_options[], build_cost_model, build_cost_model_after, infer_shapes, place_pruned_graph, enable_bfloat16_sendrecv, timeline_step, rewrite_options[]) @@ -830,7 +1011,7 @@ PB.reserved_fields(::Type{RunOptions}) = (names = String[], numbers = Union{Int, PB.default_values(::Type{RunOptions}) = (;trace_level = var"RunOptions.TraceLevel".NO_TRACE, timeout_in_ms = zero(Int64), inter_op_thread_pool = zero(Int32), output_partition_graphs = false, debug_options = nothing, report_tensor_allocations_upon_oom = false, experimental = nothing) PB.field_numbers(::Type{RunOptions}) = (;trace_level = 1, timeout_in_ms = 2, inter_op_thread_pool = 3, output_partition_graphs = 5, debug_options = 6, report_tensor_allocations_upon_oom = 7, experimental = 8) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RunOptions}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RunOptions}, _endpos::Int=0, _group::Bool=false) trace_level = var"RunOptions.TraceLevel".NO_TRACE timeout_in_ms = zero(Int64) inter_op_thread_pool = zero(Int32) @@ -838,7 +1019,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RunOptions}) debug_options = Ref{Union{Nothing,DebugOptions}}(nothing) report_tensor_allocations_upon_oom = false experimental = Ref{Union{Nothing,var"RunOptions.Experimental"}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 trace_level = PB.decode(d, var"RunOptions.TraceLevel".T) @@ -855,7 +1036,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RunOptions}) elseif field_number == 8 PB.decode!(d, experimental) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return RunOptions(trace_level, timeout_in_ms, inter_op_thread_pool, output_partition_graphs, debug_options[], report_tensor_allocations_upon_oom, experimental[]) @@ -893,6 +1074,7 @@ struct ConfigProto placement_period::Int32 device_filters::Vector{String} gpu_options::Union{Nothing,GPUOptions} + pluggable_device_options::Union{Nothing,GPUOptions} allow_soft_placement::Bool log_device_placement::Bool graph_options::Union{Nothing,GraphOptions} @@ -903,10 +1085,10 @@ struct ConfigProto share_cluster_devices_in_session::Bool experimental::Union{Nothing,var"ConfigProto.Experimental"} end -PB.default_values(::Type{ConfigProto}) = (;device_count = Dict{String,Int32}(), intra_op_parallelism_threads = zero(Int32), inter_op_parallelism_threads = zero(Int32), use_per_session_threads = false, session_inter_op_thread_pool = Vector{ThreadPoolOptionProto}(), placement_period = zero(Int32), device_filters = Vector{String}(), gpu_options = nothing, allow_soft_placement = false, log_device_placement = false, graph_options = nothing, operation_timeout_in_ms = zero(Int64), rpc_options = nothing, cluster_def = nothing, isolate_session_state = false, share_cluster_devices_in_session = false, experimental = nothing) -PB.field_numbers(::Type{ConfigProto}) = (;device_count = 1, intra_op_parallelism_threads = 2, inter_op_parallelism_threads = 5, use_per_session_threads = 9, session_inter_op_thread_pool = 12, placement_period = 3, device_filters = 4, gpu_options = 6, allow_soft_placement = 7, log_device_placement = 8, graph_options = 10, operation_timeout_in_ms = 11, rpc_options = 13, cluster_def = 14, isolate_session_state = 15, share_cluster_devices_in_session = 17, experimental = 16) +PB.default_values(::Type{ConfigProto}) = (;device_count = Dict{String,Int32}(), intra_op_parallelism_threads = zero(Int32), inter_op_parallelism_threads = zero(Int32), use_per_session_threads = false, session_inter_op_thread_pool = Vector{ThreadPoolOptionProto}(), placement_period = zero(Int32), device_filters = Vector{String}(), gpu_options = nothing, pluggable_device_options = nothing, allow_soft_placement = false, log_device_placement = false, graph_options = nothing, operation_timeout_in_ms = zero(Int64), rpc_options = nothing, cluster_def = nothing, isolate_session_state = false, share_cluster_devices_in_session = false, experimental = nothing) +PB.field_numbers(::Type{ConfigProto}) = (;device_count = 1, intra_op_parallelism_threads = 2, inter_op_parallelism_threads = 5, use_per_session_threads = 9, session_inter_op_thread_pool = 12, placement_period = 3, device_filters = 4, gpu_options = 6, pluggable_device_options = 18, allow_soft_placement = 7, log_device_placement = 8, graph_options = 10, operation_timeout_in_ms = 11, rpc_options = 13, cluster_def = 14, isolate_session_state = 15, share_cluster_devices_in_session = 17, experimental = 16) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ConfigProto}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ConfigProto}, _endpos::Int=0, _group::Bool=false) device_count = Dict{String,Int32}() intra_op_parallelism_threads = zero(Int32) inter_op_parallelism_threads = zero(Int32) @@ -915,6 +1097,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ConfigProto}) placement_period = zero(Int32) device_filters = PB.BufferedVector{String}() gpu_options = Ref{Union{Nothing,GPUOptions}}(nothing) + pluggable_device_options = Ref{Union{Nothing,GPUOptions}}(nothing) allow_soft_placement = false log_device_placement = false graph_options = Ref{Union{Nothing,GraphOptions}}(nothing) @@ -924,7 +1107,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ConfigProto}) isolate_session_state = false share_cluster_devices_in_session = false experimental = Ref{Union{Nothing,var"ConfigProto.Experimental"}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, device_count) @@ -942,6 +1125,8 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ConfigProto}) PB.decode!(d, device_filters) elseif field_number == 6 PB.decode!(d, gpu_options) + elseif field_number == 18 + PB.decode!(d, pluggable_device_options) elseif field_number == 7 allow_soft_placement = PB.decode(d, Bool) elseif field_number == 8 @@ -961,10 +1146,10 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ConfigProto}) elseif field_number == 16 PB.decode!(d, experimental) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return ConfigProto(device_count, intra_op_parallelism_threads, inter_op_parallelism_threads, use_per_session_threads, session_inter_op_thread_pool[], placement_period, device_filters[], gpu_options[], allow_soft_placement, log_device_placement, graph_options[], operation_timeout_in_ms, rpc_options[], cluster_def[], isolate_session_state, share_cluster_devices_in_session, experimental[]) + return ConfigProto(device_count, intra_op_parallelism_threads, inter_op_parallelism_threads, use_per_session_threads, session_inter_op_thread_pool[], placement_period, device_filters[], gpu_options[], pluggable_device_options[], allow_soft_placement, log_device_placement, graph_options[], operation_timeout_in_ms, rpc_options[], cluster_def[], isolate_session_state, share_cluster_devices_in_session, experimental[]) end function PB.encode(e::PB.AbstractProtoEncoder, x::ConfigProto) @@ -977,6 +1162,7 @@ function PB.encode(e::PB.AbstractProtoEncoder, x::ConfigProto) x.placement_period != zero(Int32) && PB.encode(e, 3, x.placement_period) !isempty(x.device_filters) && PB.encode(e, 4, x.device_filters) !isnothing(x.gpu_options) && PB.encode(e, 6, x.gpu_options) + !isnothing(x.pluggable_device_options) && PB.encode(e, 18, x.pluggable_device_options) x.allow_soft_placement != false && PB.encode(e, 7, x.allow_soft_placement) x.log_device_placement != false && PB.encode(e, 8, x.log_device_placement) !isnothing(x.graph_options) && PB.encode(e, 10, x.graph_options) @@ -998,6 +1184,7 @@ function PB._encoded_size(x::ConfigProto) x.placement_period != zero(Int32) && (encoded_size += PB._encoded_size(x.placement_period, 3)) !isempty(x.device_filters) && (encoded_size += PB._encoded_size(x.device_filters, 4)) !isnothing(x.gpu_options) && (encoded_size += PB._encoded_size(x.gpu_options, 6)) + !isnothing(x.pluggable_device_options) && (encoded_size += PB._encoded_size(x.pluggable_device_options, 18)) x.allow_soft_placement != false && (encoded_size += PB._encoded_size(x.allow_soft_placement, 7)) x.log_device_placement != false && (encoded_size += PB._encoded_size(x.log_device_placement, 8)) !isnothing(x.graph_options) && (encoded_size += PB._encoded_size(x.graph_options, 10)) @@ -1023,7 +1210,7 @@ end PB.default_values(::Type{CallableOptions}) = (;feed = Vector{String}(), fetch = Vector{String}(), target = Vector{String}(), run_options = nothing, tensor_connection = Vector{TensorConnection}(), feed_devices = Dict{String,String}(), fetch_devices = Dict{String,String}(), fetch_skip_sync = false) PB.field_numbers(::Type{CallableOptions}) = (;feed = 1, fetch = 2, target = 3, run_options = 4, tensor_connection = 5, feed_devices = 6, fetch_devices = 7, fetch_skip_sync = 8) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CallableOptions}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CallableOptions}, _endpos::Int=0, _group::Bool=false) feed = PB.BufferedVector{String}() fetch = PB.BufferedVector{String}() target = PB.BufferedVector{String}() @@ -1032,7 +1219,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CallableOptions}) feed_devices = Dict{String,String}() fetch_devices = Dict{String,String}() fetch_skip_sync = false - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, feed) @@ -1051,7 +1238,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CallableOptions}) elseif field_number == 8 fetch_skip_sync = PB.decode(d, Bool) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return CallableOptions(feed[], fetch[], target[], run_options[], tensor_connection[], feed_devices, fetch_devices, fetch_skip_sync) diff --git a/src/protojl/tensorboard/tensorboard/coordination_config_pb.jl b/src/protojl/tensorboard/tensorboard/coordination_config_pb.jl index 7bb49d08..8817fcb9 100644 --- a/src/protojl/tensorboard/tensorboard/coordination_config_pb.jl +++ b/src/protojl/tensorboard/tensorboard/coordination_config_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.223 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/coordination_config.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/coordination_config.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export CoordinatedJob, CoordinationServiceConfig + struct CoordinatedJob name::String num_tasks::Int32 @@ -14,17 +15,17 @@ end PB.default_values(::Type{CoordinatedJob}) = (;name = "", num_tasks = zero(Int32)) PB.field_numbers(::Type{CoordinatedJob}) = (;name = 1, num_tasks = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CoordinatedJob}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CoordinatedJob}, _endpos::Int=0, _group::Bool=false) name = "" num_tasks = zero(Int32) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) elseif field_number == 2 num_tasks = PB.decode(d, Int32) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return CoordinatedJob(name, num_tasks) @@ -48,29 +49,35 @@ struct CoordinationServiceConfig service_leader::String enable_health_check::Bool cluster_register_timeout_in_ms::Int64 + cluster_register_with_barrier::Bool heartbeat_timeout_in_ms::Int64 coordinated_job_list::Vector{CoordinatedJob} shutdown_barrier_timeout_in_ms::Int64 agent_destruction_without_shutdown::Bool recoverable_jobs::Vector{String} allow_new_incarnation_to_reconnect::Bool + force_disable::Bool + poll_for_error_from_service_at_startup::Bool end PB.reserved_fields(::Type{CoordinationServiceConfig}) = (names = String[], numbers = Union{Int,UnitRange{Int}}[6]) -PB.default_values(::Type{CoordinationServiceConfig}) = (;service_type = "", service_leader = "", enable_health_check = false, cluster_register_timeout_in_ms = zero(Int64), heartbeat_timeout_in_ms = zero(Int64), coordinated_job_list = Vector{CoordinatedJob}(), shutdown_barrier_timeout_in_ms = zero(Int64), agent_destruction_without_shutdown = false, recoverable_jobs = Vector{String}(), allow_new_incarnation_to_reconnect = false) -PB.field_numbers(::Type{CoordinationServiceConfig}) = (;service_type = 1, service_leader = 2, enable_health_check = 3, cluster_register_timeout_in_ms = 4, heartbeat_timeout_in_ms = 5, coordinated_job_list = 10, shutdown_barrier_timeout_in_ms = 7, agent_destruction_without_shutdown = 8, recoverable_jobs = 9, allow_new_incarnation_to_reconnect = 11) +PB.default_values(::Type{CoordinationServiceConfig}) = (;service_type = "", service_leader = "", enable_health_check = false, cluster_register_timeout_in_ms = zero(Int64), cluster_register_with_barrier = false, heartbeat_timeout_in_ms = zero(Int64), coordinated_job_list = Vector{CoordinatedJob}(), shutdown_barrier_timeout_in_ms = zero(Int64), agent_destruction_without_shutdown = false, recoverable_jobs = Vector{String}(), allow_new_incarnation_to_reconnect = false, force_disable = false, poll_for_error_from_service_at_startup = false) +PB.field_numbers(::Type{CoordinationServiceConfig}) = (;service_type = 1, service_leader = 2, enable_health_check = 3, cluster_register_timeout_in_ms = 4, cluster_register_with_barrier = 14, heartbeat_timeout_in_ms = 5, coordinated_job_list = 10, shutdown_barrier_timeout_in_ms = 7, agent_destruction_without_shutdown = 8, recoverable_jobs = 9, allow_new_incarnation_to_reconnect = 11, force_disable = 12, poll_for_error_from_service_at_startup = 13) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CoordinationServiceConfig}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CoordinationServiceConfig}, _endpos::Int=0, _group::Bool=false) service_type = "" service_leader = "" enable_health_check = false cluster_register_timeout_in_ms = zero(Int64) + cluster_register_with_barrier = false heartbeat_timeout_in_ms = zero(Int64) coordinated_job_list = PB.BufferedVector{CoordinatedJob}() shutdown_barrier_timeout_in_ms = zero(Int64) agent_destruction_without_shutdown = false recoverable_jobs = PB.BufferedVector{String}() allow_new_incarnation_to_reconnect = false - while !PB.message_done(d) + force_disable = false + poll_for_error_from_service_at_startup = false + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 service_type = PB.decode(d, String) @@ -80,6 +87,8 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CoordinationServiceConfi enable_health_check = PB.decode(d, Bool) elseif field_number == 4 cluster_register_timeout_in_ms = PB.decode(d, Int64) + elseif field_number == 14 + cluster_register_with_barrier = PB.decode(d, Bool) elseif field_number == 5 heartbeat_timeout_in_ms = PB.decode(d, Int64) elseif field_number == 10 @@ -92,11 +101,15 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CoordinationServiceConfi PB.decode!(d, recoverable_jobs) elseif field_number == 11 allow_new_incarnation_to_reconnect = PB.decode(d, Bool) + elseif field_number == 12 + force_disable = PB.decode(d, Bool) + elseif field_number == 13 + poll_for_error_from_service_at_startup = PB.decode(d, Bool) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return CoordinationServiceConfig(service_type, service_leader, enable_health_check, cluster_register_timeout_in_ms, heartbeat_timeout_in_ms, coordinated_job_list[], shutdown_barrier_timeout_in_ms, agent_destruction_without_shutdown, recoverable_jobs[], allow_new_incarnation_to_reconnect) + return CoordinationServiceConfig(service_type, service_leader, enable_health_check, cluster_register_timeout_in_ms, cluster_register_with_barrier, heartbeat_timeout_in_ms, coordinated_job_list[], shutdown_barrier_timeout_in_ms, agent_destruction_without_shutdown, recoverable_jobs[], allow_new_incarnation_to_reconnect, force_disable, poll_for_error_from_service_at_startup) end function PB.encode(e::PB.AbstractProtoEncoder, x::CoordinationServiceConfig) @@ -105,12 +118,15 @@ function PB.encode(e::PB.AbstractProtoEncoder, x::CoordinationServiceConfig) !isempty(x.service_leader) && PB.encode(e, 2, x.service_leader) x.enable_health_check != false && PB.encode(e, 3, x.enable_health_check) x.cluster_register_timeout_in_ms != zero(Int64) && PB.encode(e, 4, x.cluster_register_timeout_in_ms) + x.cluster_register_with_barrier != false && PB.encode(e, 14, x.cluster_register_with_barrier) x.heartbeat_timeout_in_ms != zero(Int64) && PB.encode(e, 5, x.heartbeat_timeout_in_ms) !isempty(x.coordinated_job_list) && PB.encode(e, 10, x.coordinated_job_list) x.shutdown_barrier_timeout_in_ms != zero(Int64) && PB.encode(e, 7, x.shutdown_barrier_timeout_in_ms) x.agent_destruction_without_shutdown != false && PB.encode(e, 8, x.agent_destruction_without_shutdown) !isempty(x.recoverable_jobs) && PB.encode(e, 9, x.recoverable_jobs) x.allow_new_incarnation_to_reconnect != false && PB.encode(e, 11, x.allow_new_incarnation_to_reconnect) + x.force_disable != false && PB.encode(e, 12, x.force_disable) + x.poll_for_error_from_service_at_startup != false && PB.encode(e, 13, x.poll_for_error_from_service_at_startup) return position(e.io) - initpos end function PB._encoded_size(x::CoordinationServiceConfig) @@ -119,11 +135,14 @@ function PB._encoded_size(x::CoordinationServiceConfig) !isempty(x.service_leader) && (encoded_size += PB._encoded_size(x.service_leader, 2)) x.enable_health_check != false && (encoded_size += PB._encoded_size(x.enable_health_check, 3)) x.cluster_register_timeout_in_ms != zero(Int64) && (encoded_size += PB._encoded_size(x.cluster_register_timeout_in_ms, 4)) + x.cluster_register_with_barrier != false && (encoded_size += PB._encoded_size(x.cluster_register_with_barrier, 14)) x.heartbeat_timeout_in_ms != zero(Int64) && (encoded_size += PB._encoded_size(x.heartbeat_timeout_in_ms, 5)) !isempty(x.coordinated_job_list) && (encoded_size += PB._encoded_size(x.coordinated_job_list, 10)) x.shutdown_barrier_timeout_in_ms != zero(Int64) && (encoded_size += PB._encoded_size(x.shutdown_barrier_timeout_in_ms, 7)) x.agent_destruction_without_shutdown != false && (encoded_size += PB._encoded_size(x.agent_destruction_without_shutdown, 8)) !isempty(x.recoverable_jobs) && (encoded_size += PB._encoded_size(x.recoverable_jobs, 9)) x.allow_new_incarnation_to_reconnect != false && (encoded_size += PB._encoded_size(x.allow_new_incarnation_to_reconnect, 11)) + x.force_disable != false && (encoded_size += PB._encoded_size(x.force_disable, 12)) + x.poll_for_error_from_service_at_startup != false && (encoded_size += PB._encoded_size(x.poll_for_error_from_service_at_startup, 13)) return encoded_size end diff --git a/src/protojl/tensorboard/tensorboard/cost_graph_pb.jl b/src/protojl/tensorboard/tensorboard/cost_graph_pb.jl index aac5f095..7dbcdcc5 100644 --- a/src/protojl/tensorboard/tensorboard/cost_graph_pb.jl +++ b/src/protojl/tensorboard/tensorboard/cost_graph_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.424 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/cost_graph.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/cost_graph.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -8,6 +8,7 @@ using ProtoBuf.EnumX: @enumx export var"CostGraphDef.Node.InputInfo", var"CostGraphDef.AggregatedCost" export var"CostGraphDef.Node.OutputInfo", var"CostGraphDef.Node", CostGraphDef + struct var"CostGraphDef.Node.InputInfo" preceding_node::Int32 preceding_port::Int32 @@ -15,17 +16,17 @@ end PB.default_values(::Type{var"CostGraphDef.Node.InputInfo"}) = (;preceding_node = zero(Int32), preceding_port = zero(Int32)) PB.field_numbers(::Type{var"CostGraphDef.Node.InputInfo"}) = (;preceding_node = 1, preceding_port = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CostGraphDef.Node.InputInfo"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CostGraphDef.Node.InputInfo"}, _endpos::Int=0, _group::Bool=false) preceding_node = zero(Int32) preceding_port = zero(Int32) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 preceding_node = PB.decode(d, Int32) elseif field_number == 2 preceding_port = PB.decode(d, Int32) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"CostGraphDef.Node.InputInfo"(preceding_node, preceding_port) @@ -51,17 +52,17 @@ end PB.default_values(::Type{var"CostGraphDef.AggregatedCost"}) = (;cost = zero(Float32), dimension = "") PB.field_numbers(::Type{var"CostGraphDef.AggregatedCost"}) = (;cost = 1, dimension = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CostGraphDef.AggregatedCost"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CostGraphDef.AggregatedCost"}, _endpos::Int=0, _group::Bool=false) cost = zero(Float32) dimension = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 cost = PB.decode(d, Float32) elseif field_number == 2 dimension = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"CostGraphDef.AggregatedCost"(cost, dimension) @@ -69,13 +70,13 @@ end function PB.encode(e::PB.AbstractProtoEncoder, x::var"CostGraphDef.AggregatedCost") initpos = position(e.io) - x.cost != zero(Float32) && PB.encode(e, 1, x.cost) + x.cost !== zero(Float32) && PB.encode(e, 1, x.cost) !isempty(x.dimension) && PB.encode(e, 2, x.dimension) return position(e.io) - initpos end function PB._encoded_size(x::var"CostGraphDef.AggregatedCost") encoded_size = 0 - x.cost != zero(Float32) && (encoded_size += PB._encoded_size(x.cost, 1)) + x.cost !== zero(Float32) && (encoded_size += PB._encoded_size(x.cost, 1)) !isempty(x.dimension) && (encoded_size += PB._encoded_size(x.dimension, 2)) return encoded_size end @@ -89,12 +90,12 @@ end PB.default_values(::Type{var"CostGraphDef.Node.OutputInfo"}) = (;size = zero(Int64), alias_input_port = zero(Int64), shape = nothing, dtype = var"#DataType".DT_INVALID) PB.field_numbers(::Type{var"CostGraphDef.Node.OutputInfo"}) = (;size = 1, alias_input_port = 2, shape = 3, dtype = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CostGraphDef.Node.OutputInfo"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CostGraphDef.Node.OutputInfo"}, _endpos::Int=0, _group::Bool=false) size = zero(Int64) alias_input_port = zero(Int64) shape = Ref{Union{Nothing,TensorShapeProto}}(nothing) dtype = var"#DataType".DT_INVALID - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 size = PB.decode(d, Int64) @@ -105,7 +106,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CostGraphDef.Node.Ou elseif field_number == 4 dtype = PB.decode(d, var"#DataType".T) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"CostGraphDef.Node.OutputInfo"(size, alias_input_port, shape[], dtype) @@ -149,7 +150,7 @@ end PB.default_values(::Type{var"CostGraphDef.Node"}) = (;name = "", device = "", id = zero(Int32), input_info = Vector{var"CostGraphDef.Node.InputInfo"}(), output_info = Vector{var"CostGraphDef.Node.OutputInfo"}(), temporary_memory_size = zero(Int64), persistent_memory_size = zero(Int64), host_temp_memory_size = zero(Int64), device_temp_memory_size = zero(Int64), device_persistent_memory_size = zero(Int64), compute_cost = zero(Int64), compute_time = zero(Int64), memory_time = zero(Int64), is_final = false, control_input = Vector{Int32}(), inaccurate = false) PB.field_numbers(::Type{var"CostGraphDef.Node"}) = (;name = 1, device = 2, id = 3, input_info = 4, output_info = 5, temporary_memory_size = 6, persistent_memory_size = 12, host_temp_memory_size = 10, device_temp_memory_size = 11, device_persistent_memory_size = 16, compute_cost = 9, compute_time = 14, memory_time = 15, is_final = 7, control_input = 8, inaccurate = 17) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CostGraphDef.Node"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CostGraphDef.Node"}, _endpos::Int=0, _group::Bool=false) name = "" device = "" id = zero(Int32) @@ -166,7 +167,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CostGraphDef.Node"}) is_final = false control_input = PB.BufferedVector{Int32}() inaccurate = false - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) @@ -201,7 +202,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CostGraphDef.Node"}) elseif field_number == 17 inaccurate = PB.decode(d, Bool) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"CostGraphDef.Node"(name, device, id, input_info[], output_info[], temporary_memory_size, persistent_memory_size, host_temp_memory_size, device_temp_memory_size, device_persistent_memory_size, compute_cost, compute_time, memory_time, is_final, control_input[], inaccurate) @@ -255,17 +256,17 @@ end PB.default_values(::Type{CostGraphDef}) = (;node = Vector{var"CostGraphDef.Node"}(), cost = Vector{var"CostGraphDef.AggregatedCost"}()) PB.field_numbers(::Type{CostGraphDef}) = (;node = 1, cost = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CostGraphDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CostGraphDef}, _endpos::Int=0, _group::Bool=false) node = PB.BufferedVector{var"CostGraphDef.Node"}() cost = PB.BufferedVector{var"CostGraphDef.AggregatedCost"}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, node) elseif field_number == 2 PB.decode!(d, cost) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return CostGraphDef(node[], cost[]) diff --git a/src/protojl/tensorboard/tensorboard/cpp_shape_inference_pb.jl b/src/protojl/tensorboard/tensorboard/cpp_shape_inference_pb.jl index e0e4fed6..b4104948 100644 --- a/src/protojl/tensorboard/tensorboard/cpp_shape_inference_pb.jl +++ b/src/protojl/tensorboard/tensorboard/cpp_shape_inference_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.424 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/cpp_shape_inference.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/cpp_shape_inference.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -8,6 +8,7 @@ using ProtoBuf.EnumX: @enumx export CppShapeInferenceInputsNeeded, var"CppShapeInferenceResult.HandleShapeAndType" export var"CppShapeInferenceResult.HandleData", CppShapeInferenceResult + struct CppShapeInferenceInputsNeeded input_tensors_needed::Vector{Int32} input_tensors_as_shapes_needed::Vector{Int32} @@ -15,17 +16,17 @@ end PB.default_values(::Type{CppShapeInferenceInputsNeeded}) = (;input_tensors_needed = Vector{Int32}(), input_tensors_as_shapes_needed = Vector{Int32}()) PB.field_numbers(::Type{CppShapeInferenceInputsNeeded}) = (;input_tensors_needed = 1, input_tensors_as_shapes_needed = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CppShapeInferenceInputsNeeded}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CppShapeInferenceInputsNeeded}, _endpos::Int=0, _group::Bool=false) input_tensors_needed = PB.BufferedVector{Int32}() input_tensors_as_shapes_needed = PB.BufferedVector{Int32}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, wire_type, input_tensors_needed) elseif field_number == 2 PB.decode!(d, wire_type, input_tensors_as_shapes_needed) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return CppShapeInferenceInputsNeeded(input_tensors_needed[], input_tensors_as_shapes_needed[]) @@ -53,11 +54,11 @@ PB.reserved_fields(::Type{var"CppShapeInferenceResult.HandleShapeAndType"}) = (n PB.default_values(::Type{var"CppShapeInferenceResult.HandleShapeAndType"}) = (;shape = nothing, dtype = var"#DataType".DT_INVALID, var"#type" = nothing) PB.field_numbers(::Type{var"CppShapeInferenceResult.HandleShapeAndType"}) = (;shape = 1, dtype = 2, var"#type" = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CppShapeInferenceResult.HandleShapeAndType"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CppShapeInferenceResult.HandleShapeAndType"}, _endpos::Int=0, _group::Bool=false) shape = Ref{Union{Nothing,TensorShapeProto}}(nothing) dtype = var"#DataType".DT_INVALID var"#type" = Ref{Union{Nothing,FullTypeDef}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, shape) @@ -66,7 +67,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CppShapeInferenceRes elseif field_number == 4 PB.decode!(d, var"#type") else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"CppShapeInferenceResult.HandleShapeAndType"(shape[], dtype, var"#type"[]) @@ -94,17 +95,17 @@ end PB.default_values(::Type{var"CppShapeInferenceResult.HandleData"}) = (;is_set = false, shape_and_type = Vector{var"CppShapeInferenceResult.HandleShapeAndType"}()) PB.field_numbers(::Type{var"CppShapeInferenceResult.HandleData"}) = (;is_set = 1, shape_and_type = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CppShapeInferenceResult.HandleData"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CppShapeInferenceResult.HandleData"}, _endpos::Int=0, _group::Bool=false) is_set = false shape_and_type = PB.BufferedVector{var"CppShapeInferenceResult.HandleShapeAndType"}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 is_set = PB.decode(d, Bool) elseif field_number == 2 PB.decode!(d, shape_and_type) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"CppShapeInferenceResult.HandleData"(is_set, shape_and_type[]) @@ -131,17 +132,17 @@ PB.reserved_fields(::Type{CppShapeInferenceResult}) = (names = String[], numbers PB.default_values(::Type{CppShapeInferenceResult}) = (;shape = nothing, handle_data = nothing) PB.field_numbers(::Type{CppShapeInferenceResult}) = (;shape = 1, handle_data = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CppShapeInferenceResult}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CppShapeInferenceResult}, _endpos::Int=0, _group::Bool=false) shape = Ref{Union{Nothing,TensorShapeProto}}(nothing) handle_data = Ref{Union{Nothing,var"CppShapeInferenceResult.HandleData"}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, shape) elseif field_number == 4 PB.decode!(d, handle_data) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return CppShapeInferenceResult(shape[], handle_data[]) diff --git a/src/protojl/tensorboard/tensorboard/debug_pb.jl b/src/protojl/tensorboard/tensorboard/debug_pb.jl index 2a758e91..e49ff698 100644 --- a/src/protojl/tensorboard/tensorboard/debug_pb.jl +++ b/src/protojl/tensorboard/tensorboard/debug_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.223 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/debug.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/debug.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export DebuggedSourceFile, DebugTensorWatch, DebuggedSourceFiles, DebugOptions + struct DebuggedSourceFile host::String file_path::String @@ -17,13 +18,13 @@ end PB.default_values(::Type{DebuggedSourceFile}) = (;host = "", file_path = "", last_modified = zero(Int64), bytes = zero(Int64), lines = Vector{String}()) PB.field_numbers(::Type{DebuggedSourceFile}) = (;host = 1, file_path = 2, last_modified = 3, bytes = 4, lines = 5) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DebuggedSourceFile}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DebuggedSourceFile}, _endpos::Int=0, _group::Bool=false) host = "" file_path = "" last_modified = zero(Int64) bytes = zero(Int64) lines = PB.BufferedVector{String}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 host = PB.decode(d, String) @@ -36,7 +37,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DebuggedSourceFile}) elseif field_number == 5 PB.decode!(d, lines) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return DebuggedSourceFile(host, file_path, last_modified, bytes, lines[]) @@ -71,13 +72,13 @@ end PB.default_values(::Type{DebugTensorWatch}) = (;node_name = "", output_slot = zero(Int32), debug_ops = Vector{String}(), debug_urls = Vector{String}(), tolerate_debug_op_creation_failures = false) PB.field_numbers(::Type{DebugTensorWatch}) = (;node_name = 1, output_slot = 2, debug_ops = 3, debug_urls = 4, tolerate_debug_op_creation_failures = 5) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DebugTensorWatch}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DebugTensorWatch}, _endpos::Int=0, _group::Bool=false) node_name = "" output_slot = zero(Int32) debug_ops = PB.BufferedVector{String}() debug_urls = PB.BufferedVector{String}() tolerate_debug_op_creation_failures = false - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 node_name = PB.decode(d, String) @@ -90,7 +91,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DebugTensorWatch}) elseif field_number == 5 tolerate_debug_op_creation_failures = PB.decode(d, Bool) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return DebugTensorWatch(node_name, output_slot, debug_ops[], debug_urls[], tolerate_debug_op_creation_failures) @@ -121,14 +122,14 @@ end PB.default_values(::Type{DebuggedSourceFiles}) = (;source_files = Vector{DebuggedSourceFile}()) PB.field_numbers(::Type{DebuggedSourceFiles}) = (;source_files = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DebuggedSourceFiles}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DebuggedSourceFiles}, _endpos::Int=0, _group::Bool=false) source_files = PB.BufferedVector{DebuggedSourceFile}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, source_files) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return DebuggedSourceFiles(source_files[]) @@ -153,11 +154,11 @@ end PB.default_values(::Type{DebugOptions}) = (;debug_tensor_watch_opts = Vector{DebugTensorWatch}(), global_step = zero(Int64), reset_disk_byte_usage = false) PB.field_numbers(::Type{DebugOptions}) = (;debug_tensor_watch_opts = 4, global_step = 10, reset_disk_byte_usage = 11) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DebugOptions}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DebugOptions}, _endpos::Int=0, _group::Bool=false) debug_tensor_watch_opts = PB.BufferedVector{DebugTensorWatch}() global_step = zero(Int64) reset_disk_byte_usage = false - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 4 PB.decode!(d, debug_tensor_watch_opts) @@ -166,7 +167,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DebugOptions}) elseif field_number == 11 reset_disk_byte_usage = PB.decode(d, Bool) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return DebugOptions(debug_tensor_watch_opts[], global_step, reset_disk_byte_usage) diff --git a/src/protojl/tensorboard/tensorboard/event_pb.jl b/src/protojl/tensorboard/tensorboard/event_pb.jl index f806b87d..b554cf09 100644 --- a/src/protojl/tensorboard/tensorboard/event_pb.jl +++ b/src/protojl/tensorboard/tensorboard/event_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.777 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/event.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/event.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -9,6 +9,7 @@ export var"SessionLog.SessionStatus", WorkerHealth, WatchdogConfig, RequestedExi export SourceMetadata, WorkerShutdownMode, TaggedRunMetadata, var"LogMessage.Level" export SessionLog, WorkerHeartbeatRequest, LogMessage, Event, WorkerHeartbeatResponse + @enumx var"SessionLog.SessionStatus" STATUS_UNSPECIFIED=0 START=1 STOP=2 CHECKPOINT=3 @enumx WorkerHealth OK=0 RECEIVED_SHUTDOWN_SIGNAL=1 INTERNAL_ERROR=2 SHUTTING_DOWN=3 @@ -19,14 +20,14 @@ end PB.default_values(::Type{WatchdogConfig}) = (;timeout_ms = zero(Int64)) PB.field_numbers(::Type{WatchdogConfig}) = (;timeout_ms = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:WatchdogConfig}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:WatchdogConfig}, _endpos::Int=0, _group::Bool=false) timeout_ms = zero(Int64) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 timeout_ms = PB.decode(d, Int64) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return WatchdogConfig(timeout_ms) @@ -49,14 +50,14 @@ end PB.default_values(::Type{RequestedExitCode}) = (;exit_code = zero(Int32)) PB.field_numbers(::Type{RequestedExitCode}) = (;exit_code = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RequestedExitCode}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RequestedExitCode}, _endpos::Int=0, _group::Bool=false) exit_code = zero(Int32) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 exit_code = PB.decode(d, Int32) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return RequestedExitCode(exit_code) @@ -79,14 +80,14 @@ end PB.default_values(::Type{SourceMetadata}) = (;writer = "") PB.field_numbers(::Type{SourceMetadata}) = (;writer = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SourceMetadata}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SourceMetadata}, _endpos::Int=0, _group::Bool=false) writer = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 writer = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SourceMetadata(writer) @@ -112,17 +113,17 @@ end PB.default_values(::Type{TaggedRunMetadata}) = (;tag = "", run_metadata = UInt8[]) PB.field_numbers(::Type{TaggedRunMetadata}) = (;tag = 1, run_metadata = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TaggedRunMetadata}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TaggedRunMetadata}, _endpos::Int=0, _group::Bool=false) tag = "" run_metadata = UInt8[] - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 tag = PB.decode(d, String) elseif field_number == 2 run_metadata = PB.decode(d, Vector{UInt8}) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return TaggedRunMetadata(tag, run_metadata) @@ -142,6 +143,7 @@ function PB._encoded_size(x::TaggedRunMetadata) end @enumx var"LogMessage.Level" UNKNOWN=0 DEBUGGING=10 INFO=20 WARN=30 ERROR=40 FATAL=50 +Base.depwarn("`var\"LogMessage.Level\"` is deprecated.", nameof(var"LogMessage.Level")) struct SessionLog status::var"SessionLog.SessionStatus".T @@ -151,11 +153,11 @@ end PB.default_values(::Type{SessionLog}) = (;status = var"SessionLog.SessionStatus".STATUS_UNSPECIFIED, checkpoint_path = "", msg = "") PB.field_numbers(::Type{SessionLog}) = (;status = 1, checkpoint_path = 2, msg = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SessionLog}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SessionLog}, _endpos::Int=0, _group::Bool=false) status = var"SessionLog.SessionStatus".STATUS_UNSPECIFIED checkpoint_path = "" msg = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 status = PB.decode(d, var"SessionLog.SessionStatus".T) @@ -164,7 +166,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SessionLog}) elseif field_number == 3 msg = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SessionLog(status, checkpoint_path, msg) @@ -193,11 +195,11 @@ end PB.default_values(::Type{WorkerHeartbeatRequest}) = (;shutdown_mode = WorkerShutdownMode.DEFAULT, watchdog_config = nothing, exit_code = nothing) PB.field_numbers(::Type{WorkerHeartbeatRequest}) = (;shutdown_mode = 1, watchdog_config = 2, exit_code = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:WorkerHeartbeatRequest}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:WorkerHeartbeatRequest}, _endpos::Int=0, _group::Bool=false) shutdown_mode = WorkerShutdownMode.DEFAULT watchdog_config = Ref{Union{Nothing,WatchdogConfig}}(nothing) exit_code = Ref{Union{Nothing,RequestedExitCode}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 shutdown_mode = PB.decode(d, WorkerShutdownMode.T) @@ -206,7 +208,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:WorkerHeartbeatRequest}) elseif field_number == 3 PB.decode!(d, exit_code) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return WorkerHeartbeatRequest(shutdown_mode, watchdog_config[], exit_code[]) @@ -231,20 +233,21 @@ struct LogMessage level::var"LogMessage.Level".T message::String end +Base.depwarn("`LogMessage` is deprecated.", nameof(LogMessage)) PB.default_values(::Type{LogMessage}) = (;level = var"LogMessage.Level".UNKNOWN, message = "") PB.field_numbers(::Type{LogMessage}) = (;level = 1, message = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:LogMessage}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:LogMessage}, _endpos::Int=0, _group::Bool=false) level = var"LogMessage.Level".UNKNOWN message = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 level = PB.decode(d, var"LogMessage.Level".T) elseif field_number == 2 message = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return LogMessage(level, message) @@ -275,12 +278,12 @@ PB.oneof_field_types(::Type{Event}) = (; PB.default_values(::Type{Event}) = (;wall_time = zero(Float64), step = zero(Int64), file_version = "", graph_def = UInt8[], summary = nothing, log_message = nothing, session_log = nothing, tagged_run_metadata = nothing, meta_graph_def = UInt8[], source_metadata = nothing) PB.field_numbers(::Type{Event}) = (;wall_time = 1, step = 2, file_version = 3, graph_def = 4, summary = 5, log_message = 6, session_log = 7, tagged_run_metadata = 8, meta_graph_def = 9, source_metadata = 10) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Event}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Event}, _endpos::Int=0, _group::Bool=false) wall_time = zero(Float64) step = zero(Int64) what = nothing source_metadata = Ref{Union{Nothing,SourceMetadata}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 wall_time = PB.decode(d, Float64) @@ -303,7 +306,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Event}) elseif field_number == 10 PB.decode!(d, source_metadata) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return Event(wall_time, step, what, source_metadata[]) @@ -311,7 +314,7 @@ end function PB.encode(e::PB.AbstractProtoEncoder, x::Event) initpos = position(e.io) - x.wall_time != zero(Float64) && PB.encode(e, 1, x.wall_time) + x.wall_time !== zero(Float64) && PB.encode(e, 1, x.wall_time) x.step != zero(Int64) && PB.encode(e, 2, x.step) if isnothing(x.what); elseif x.what.name === :file_version @@ -334,7 +337,7 @@ function PB.encode(e::PB.AbstractProtoEncoder, x::Event) end function PB._encoded_size(x::Event) encoded_size = 0 - x.wall_time != zero(Float64) && (encoded_size += PB._encoded_size(x.wall_time, 1)) + x.wall_time !== zero(Float64) && (encoded_size += PB._encoded_size(x.wall_time, 1)) x.step != zero(Int64) && (encoded_size += PB._encoded_size(x.step, 2)) if isnothing(x.what); elseif x.what.name === :file_version @@ -364,11 +367,11 @@ end PB.default_values(::Type{WorkerHeartbeatResponse}) = (;health_status = WorkerHealth.OK, worker_log = Vector{Event}(), hostname = "") PB.field_numbers(::Type{WorkerHeartbeatResponse}) = (;health_status = 1, worker_log = 2, hostname = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:WorkerHeartbeatResponse}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:WorkerHeartbeatResponse}, _endpos::Int=0, _group::Bool=false) health_status = WorkerHealth.OK worker_log = PB.BufferedVector{Event}() hostname = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 health_status = PB.decode(d, WorkerHealth.T) @@ -377,7 +380,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:WorkerHeartbeatResponse} elseif field_number == 3 hostname = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return WorkerHeartbeatResponse(health_status, worker_log[], hostname) diff --git a/src/protojl/tensorboard/tensorboard/full_type_pb.jl b/src/protojl/tensorboard/tensorboard/full_type_pb.jl index cc3defcc..c7271ed3 100644 --- a/src/protojl/tensorboard/tensorboard/full_type_pb.jl +++ b/src/protojl/tensorboard/tensorboard/full_type_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.292 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/full_type.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/full_type.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,15 +7,12 @@ using ProtoBuf.EnumX: @enumx export FullTypeId, FullTypeDef -# Abstract types to help resolve mutually recursive definitions -abstract type var"##AbstractFullTypeDef" end - @enumx FullTypeId TFT_UNSET=0 TFT_VAR=1 TFT_ANY=2 TFT_PRODUCT=3 TFT_NAMED=4 TFT_FOR_EACH=20 TFT_CALLABLE=100 TFT_TENSOR=1000 TFT_ARRAY=1001 TFT_OPTIONAL=1002 TFT_LITERAL=1003 TFT_ENCODED=1004 TFT_SHAPE_TENSOR=1005 TFT_BOOL=200 TFT_UINT8=201 TFT_UINT16=202 TFT_UINT32=203 TFT_UINT64=204 TFT_INT8=205 TFT_INT16=206 TFT_INT32=207 TFT_INT64=208 TFT_HALF=209 TFT_FLOAT=210 TFT_DOUBLE=211 TFT_BFLOAT16=215 TFT_COMPLEX64=212 TFT_COMPLEX128=213 TFT_STRING=214 TFT_DATASET=10102 TFT_RAGGED=10103 TFT_ITERATOR=10104 TFT_MUTEX_LOCK=10202 TFT_LEGACY_VARIANT=10203 -struct FullTypeDef <: var"##AbstractFullTypeDef" +struct FullTypeDef type_id::FullTypeId.T - args::Vector{<:FullTypeDef} + args::Vector{FullTypeDef} attr::Union{Nothing,OneOf{<:Union{String,Int64}}} end PB.oneof_field_types(::Type{FullTypeDef}) = (; @@ -24,11 +21,11 @@ PB.oneof_field_types(::Type{FullTypeDef}) = (; PB.default_values(::Type{FullTypeDef}) = (;type_id = FullTypeId.TFT_UNSET, args = Vector{FullTypeDef}(), s = "", i = zero(Int64)) PB.field_numbers(::Type{FullTypeDef}) = (;type_id = 1, args = 2, s = 3, i = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:FullTypeDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:FullTypeDef}, _endpos::Int=0, _group::Bool=false) type_id = FullTypeId.TFT_UNSET args = PB.BufferedVector{FullTypeDef}() attr = nothing - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 type_id = PB.decode(d, FullTypeId.T) @@ -39,7 +36,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:FullTypeDef}) elseif field_number == 4 attr = OneOf(:i, PB.decode(d, Int64)) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return FullTypeDef(type_id, args[], attr) diff --git a/src/protojl/tensorboard/tensorboard/function_pb.jl b/src/protojl/tensorboard/tensorboard/function_pb.jl index fec04615..5d09d2ae 100644 --- a/src/protojl/tensorboard/tensorboard/function_pb.jl +++ b/src/protojl/tensorboard/tensorboard/function_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.778 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/function.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/function.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -8,6 +8,7 @@ using ProtoBuf.EnumX: @enumx export RegisteredGradient, var"FunctionDef.ArgAttrs", GradientDef, FunctionDef export FunctionDefLibrary + struct RegisteredGradient gradient_func::String registered_op_type::String @@ -15,17 +16,17 @@ end PB.default_values(::Type{RegisteredGradient}) = (;gradient_func = "", registered_op_type = "") PB.field_numbers(::Type{RegisteredGradient}) = (;gradient_func = 1, registered_op_type = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RegisteredGradient}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RegisteredGradient}, _endpos::Int=0, _group::Bool=false) gradient_func = "" registered_op_type = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 gradient_func = PB.decode(d, String) elseif field_number == 2 registered_op_type = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return RegisteredGradient(gradient_func, registered_op_type) @@ -50,14 +51,14 @@ end PB.default_values(::Type{var"FunctionDef.ArgAttrs"}) = (;attr = Dict{String,AttrValue}()) PB.field_numbers(::Type{var"FunctionDef.ArgAttrs"}) = (;attr = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"FunctionDef.ArgAttrs"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"FunctionDef.ArgAttrs"}, _endpos::Int=0, _group::Bool=false) attr = Dict{String,AttrValue}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, attr) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"FunctionDef.ArgAttrs"(attr) @@ -81,17 +82,17 @@ end PB.default_values(::Type{GradientDef}) = (;function_name = "", gradient_func = "") PB.field_numbers(::Type{GradientDef}) = (;function_name = 1, gradient_func = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GradientDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GradientDef}, _endpos::Int=0, _group::Bool=false) function_name = "" gradient_func = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 function_name = PB.decode(d, String) elseif field_number == 2 gradient_func = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return GradientDef(function_name, gradient_func) @@ -123,7 +124,7 @@ PB.reserved_fields(::Type{FunctionDef}) = (names = String[], numbers = Union{Int PB.default_values(::Type{FunctionDef}) = (;signature = nothing, attr = Dict{String,AttrValue}(), arg_attr = Dict{UInt32,var"FunctionDef.ArgAttrs"}(), resource_arg_unique_id = Dict{UInt32,UInt32}(), node_def = Vector{NodeDef}(), ret = Dict{String,String}(), control_ret = Dict{String,String}()) PB.field_numbers(::Type{FunctionDef}) = (;signature = 1, attr = 5, arg_attr = 7, resource_arg_unique_id = 8, node_def = 3, ret = 4, control_ret = 6) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:FunctionDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:FunctionDef}, _endpos::Int=0, _group::Bool=false) signature = Ref{Union{Nothing,OpDef}}(nothing) attr = Dict{String,AttrValue}() arg_attr = Dict{UInt32,var"FunctionDef.ArgAttrs"}() @@ -131,7 +132,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:FunctionDef}) node_def = PB.BufferedVector{NodeDef}() ret = Dict{String,String}() control_ret = Dict{String,String}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, signature) @@ -148,7 +149,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:FunctionDef}) elseif field_number == 6 PB.decode!(d, control_ret) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return FunctionDef(signature[], attr, arg_attr, resource_arg_unique_id, node_def[], ret, control_ret) @@ -185,11 +186,11 @@ end PB.default_values(::Type{FunctionDefLibrary}) = (;var"#function" = Vector{FunctionDef}(), gradient = Vector{GradientDef}(), registered_gradients = Vector{RegisteredGradient}()) PB.field_numbers(::Type{FunctionDefLibrary}) = (;var"#function" = 1, gradient = 2, registered_gradients = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:FunctionDefLibrary}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:FunctionDefLibrary}, _endpos::Int=0, _group::Bool=false) var"#function" = PB.BufferedVector{FunctionDef}() gradient = PB.BufferedVector{GradientDef}() registered_gradients = PB.BufferedVector{RegisteredGradient}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, var"#function") @@ -198,7 +199,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:FunctionDefLibrary}) elseif field_number == 3 PB.decode!(d, registered_gradients) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return FunctionDefLibrary(var"#function"[], gradient[], registered_gradients[]) diff --git a/src/protojl/tensorboard/tensorboard/graph_debug_info_pb.jl b/src/protojl/tensorboard/tensorboard/graph_debug_info_pb.jl index bcf3b27b..01510be4 100644 --- a/src/protojl/tensorboard/tensorboard/graph_debug_info_pb.jl +++ b/src/protojl/tensorboard/tensorboard/graph_debug_info_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:23.982 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/graph_debug_info.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/graph_debug_info.proto (proto2 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export var"GraphDebugInfo.FileLineCol", var"GraphDebugInfo.StackTrace", GraphDebugInfo + struct var"GraphDebugInfo.FileLineCol" file_index::Int32 line::Int32 @@ -17,13 +18,13 @@ end PB.default_values(::Type{var"GraphDebugInfo.FileLineCol"}) = (;file_index = zero(Int32), line = zero(Int32), col = zero(Int32), func = "", code = "") PB.field_numbers(::Type{var"GraphDebugInfo.FileLineCol"}) = (;file_index = 1, line = 2, col = 3, func = 4, code = 5) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"GraphDebugInfo.FileLineCol"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"GraphDebugInfo.FileLineCol"}, _endpos::Int=0, _group::Bool=false) file_index = zero(Int32) line = zero(Int32) col = zero(Int32) func = "" code = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 file_index = PB.decode(d, Int32) @@ -36,7 +37,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"GraphDebugInfo.FileL elseif field_number == 5 code = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"GraphDebugInfo.FileLineCol"(file_index, line, col, func, code) @@ -63,66 +64,90 @@ end struct var"GraphDebugInfo.StackTrace" file_line_cols::Vector{var"GraphDebugInfo.FileLineCol"} + frame_id::Vector{UInt64} end -PB.default_values(::Type{var"GraphDebugInfo.StackTrace"}) = (;file_line_cols = Vector{var"GraphDebugInfo.FileLineCol"}()) -PB.field_numbers(::Type{var"GraphDebugInfo.StackTrace"}) = (;file_line_cols = 1) +PB.default_values(::Type{var"GraphDebugInfo.StackTrace"}) = (;file_line_cols = Vector{var"GraphDebugInfo.FileLineCol"}(), frame_id = Vector{UInt64}()) +PB.field_numbers(::Type{var"GraphDebugInfo.StackTrace"}) = (;file_line_cols = 1, frame_id = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"GraphDebugInfo.StackTrace"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"GraphDebugInfo.StackTrace"}, _endpos::Int=0, _group::Bool=false) file_line_cols = PB.BufferedVector{var"GraphDebugInfo.FileLineCol"}() - while !PB.message_done(d) + frame_id = PB.BufferedVector{UInt64}() + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, file_line_cols) + elseif field_number == 2 + PB.decode!(d, wire_type, frame_id, Val{:fixed}) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return var"GraphDebugInfo.StackTrace"(file_line_cols[]) + return var"GraphDebugInfo.StackTrace"(file_line_cols[], frame_id[]) end function PB.encode(e::PB.AbstractProtoEncoder, x::var"GraphDebugInfo.StackTrace") initpos = position(e.io) !isempty(x.file_line_cols) && PB.encode(e, 1, x.file_line_cols) + !isempty(x.frame_id) && PB.encode(e, 2, x.frame_id, Val{:fixed}) return position(e.io) - initpos end function PB._encoded_size(x::var"GraphDebugInfo.StackTrace") encoded_size = 0 !isempty(x.file_line_cols) && (encoded_size += PB._encoded_size(x.file_line_cols, 1)) + !isempty(x.frame_id) && (encoded_size += PB._encoded_size(x.frame_id, 2, Val{:fixed})) return encoded_size end struct GraphDebugInfo files::Vector{String} + frames_by_id::Dict{UInt64,var"GraphDebugInfo.FileLineCol"} + traces_by_id::Dict{UInt64,var"GraphDebugInfo.StackTrace"} traces::Dict{String,var"GraphDebugInfo.StackTrace"} + name_to_trace_id::Dict{String,UInt64} end -PB.default_values(::Type{GraphDebugInfo}) = (;files = Vector{String}(), traces = Dict{String,var"GraphDebugInfo.StackTrace"}()) -PB.field_numbers(::Type{GraphDebugInfo}) = (;files = 1, traces = 2) +PB.default_values(::Type{GraphDebugInfo}) = (;files = Vector{String}(), frames_by_id = Dict{UInt64,var"GraphDebugInfo.FileLineCol"}(), traces_by_id = Dict{UInt64,var"GraphDebugInfo.StackTrace"}(), traces = Dict{String,var"GraphDebugInfo.StackTrace"}(), name_to_trace_id = Dict{String,UInt64}()) +PB.field_numbers(::Type{GraphDebugInfo}) = (;files = 1, frames_by_id = 4, traces_by_id = 6, traces = 2, name_to_trace_id = 5) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GraphDebugInfo}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GraphDebugInfo}, _endpos::Int=0, _group::Bool=false) files = PB.BufferedVector{String}() + frames_by_id = Dict{UInt64,var"GraphDebugInfo.FileLineCol"}() + traces_by_id = Dict{UInt64,var"GraphDebugInfo.StackTrace"}() traces = Dict{String,var"GraphDebugInfo.StackTrace"}() - while !PB.message_done(d) + name_to_trace_id = Dict{String,UInt64}() + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, files) + elseif field_number == 4 + PB.decode!(d, frames_by_id, Val{Tuple{:fixed,Nothing}}) + elseif field_number == 6 + PB.decode!(d, traces_by_id, Val{Tuple{:fixed,Nothing}}) elseif field_number == 2 PB.decode!(d, traces) + elseif field_number == 5 + PB.decode!(d, name_to_trace_id, Val{Tuple{Nothing,:fixed}}) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return GraphDebugInfo(files[], traces) + return GraphDebugInfo(files[], frames_by_id, traces_by_id, traces, name_to_trace_id) end function PB.encode(e::PB.AbstractProtoEncoder, x::GraphDebugInfo) initpos = position(e.io) !isempty(x.files) && PB.encode(e, 1, x.files) + !isempty(x.frames_by_id) && PB.encode(e, 4, x.frames_by_id, Val{Tuple{:fixed,Nothing}}) + !isempty(x.traces_by_id) && PB.encode(e, 6, x.traces_by_id, Val{Tuple{:fixed,Nothing}}) !isempty(x.traces) && PB.encode(e, 2, x.traces) + !isempty(x.name_to_trace_id) && PB.encode(e, 5, x.name_to_trace_id, Val{Tuple{Nothing,:fixed}}) return position(e.io) - initpos end function PB._encoded_size(x::GraphDebugInfo) encoded_size = 0 !isempty(x.files) && (encoded_size += PB._encoded_size(x.files, 1)) + !isempty(x.frames_by_id) && (encoded_size += PB._encoded_size(x.frames_by_id, 4, Val{Tuple{:fixed,Nothing}})) + !isempty(x.traces_by_id) && (encoded_size += PB._encoded_size(x.traces_by_id, 6, Val{Tuple{:fixed,Nothing}})) !isempty(x.traces) && (encoded_size += PB._encoded_size(x.traces, 2)) + !isempty(x.name_to_trace_id) && (encoded_size += PB._encoded_size(x.name_to_trace_id, 5, Val{Tuple{Nothing,:fixed}})) return encoded_size end diff --git a/src/protojl/tensorboard/tensorboard/graph_pb.jl b/src/protojl/tensorboard/tensorboard/graph_pb.jl index a216ec76..fe148887 100644 --- a/src/protojl/tensorboard/tensorboard/graph_pb.jl +++ b/src/protojl/tensorboard/tensorboard/graph_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.778 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/graph.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/graph.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export GraphDef + struct GraphDef node::Vector{NodeDef} versions::Union{Nothing,VersionDef} @@ -17,13 +18,13 @@ end PB.default_values(::Type{GraphDef}) = (;node = Vector{NodeDef}(), versions = nothing, version = zero(Int32), library = nothing, debug_info = nothing) PB.field_numbers(::Type{GraphDef}) = (;node = 1, versions = 4, version = 3, library = 2, debug_info = 5) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GraphDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GraphDef}, _endpos::Int=0, _group::Bool=false) node = PB.BufferedVector{NodeDef}() versions = Ref{Union{Nothing,VersionDef}}(nothing) version = zero(Int32) library = Ref{Union{Nothing,FunctionDefLibrary}}(nothing) debug_info = Ref{Union{Nothing,GraphDebugInfo}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, node) @@ -36,7 +37,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:GraphDef}) elseif field_number == 5 PB.decode!(d, debug_info) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return GraphDef(node[], versions[], version, library[], debug_info[]) diff --git a/src/protojl/tensorboard/tensorboard/histogram_pb.jl b/src/protojl/tensorboard/tensorboard/histogram_pb.jl index 5dcf8f2e..71a6f766 100644 --- a/src/protojl/tensorboard/tensorboard/histogram_pb.jl +++ b/src/protojl/tensorboard/tensorboard/histogram_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.224 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/histogram.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/histogram.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export HistogramProto + struct HistogramProto min::Float64 max::Float64 @@ -19,7 +20,7 @@ end PB.default_values(::Type{HistogramProto}) = (;min = zero(Float64), max = zero(Float64), num = zero(Float64), sum = zero(Float64), sum_squares = zero(Float64), bucket_limit = Vector{Float64}(), bucket = Vector{Float64}()) PB.field_numbers(::Type{HistogramProto}) = (;min = 1, max = 2, num = 3, sum = 4, sum_squares = 5, bucket_limit = 6, bucket = 7) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:HistogramProto}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:HistogramProto}, _endpos::Int=0, _group::Bool=false) min = zero(Float64) max = zero(Float64) num = zero(Float64) @@ -27,7 +28,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:HistogramProto}) sum_squares = zero(Float64) bucket_limit = PB.BufferedVector{Float64}() bucket = PB.BufferedVector{Float64}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 min = PB.decode(d, Float64) @@ -44,7 +45,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:HistogramProto}) elseif field_number == 7 PB.decode!(d, wire_type, bucket) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return HistogramProto(min, max, num, sum, sum_squares, bucket_limit[], bucket[]) @@ -52,22 +53,22 @@ end function PB.encode(e::PB.AbstractProtoEncoder, x::HistogramProto) initpos = position(e.io) - x.min != zero(Float64) && PB.encode(e, 1, x.min) - x.max != zero(Float64) && PB.encode(e, 2, x.max) - x.num != zero(Float64) && PB.encode(e, 3, x.num) - x.sum != zero(Float64) && PB.encode(e, 4, x.sum) - x.sum_squares != zero(Float64) && PB.encode(e, 5, x.sum_squares) + x.min !== zero(Float64) && PB.encode(e, 1, x.min) + x.max !== zero(Float64) && PB.encode(e, 2, x.max) + x.num !== zero(Float64) && PB.encode(e, 3, x.num) + x.sum !== zero(Float64) && PB.encode(e, 4, x.sum) + x.sum_squares !== zero(Float64) && PB.encode(e, 5, x.sum_squares) !isempty(x.bucket_limit) && PB.encode(e, 6, x.bucket_limit) !isempty(x.bucket) && PB.encode(e, 7, x.bucket) return position(e.io) - initpos end function PB._encoded_size(x::HistogramProto) encoded_size = 0 - x.min != zero(Float64) && (encoded_size += PB._encoded_size(x.min, 1)) - x.max != zero(Float64) && (encoded_size += PB._encoded_size(x.max, 2)) - x.num != zero(Float64) && (encoded_size += PB._encoded_size(x.num, 3)) - x.sum != zero(Float64) && (encoded_size += PB._encoded_size(x.sum, 4)) - x.sum_squares != zero(Float64) && (encoded_size += PB._encoded_size(x.sum_squares, 5)) + x.min !== zero(Float64) && (encoded_size += PB._encoded_size(x.min, 1)) + x.max !== zero(Float64) && (encoded_size += PB._encoded_size(x.max, 2)) + x.num !== zero(Float64) && (encoded_size += PB._encoded_size(x.num, 3)) + x.sum !== zero(Float64) && (encoded_size += PB._encoded_size(x.sum, 4)) + x.sum_squares !== zero(Float64) && (encoded_size += PB._encoded_size(x.sum_squares, 5)) !isempty(x.bucket_limit) && (encoded_size += PB._encoded_size(x.bucket_limit, 6)) !isempty(x.bucket) && (encoded_size += PB._encoded_size(x.bucket, 7)) return encoded_size diff --git a/src/protojl/tensorboard/tensorboard/meta_graph_pb.jl b/src/protojl/tensorboard/tensorboard/meta_graph_pb.jl index 8d7382ec..f2662d7d 100644 --- a/src/protojl/tensorboard/tensorboard/meta_graph_pb.jl +++ b/src/protojl/tensorboard/tensorboard/meta_graph_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.778 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/meta_graph.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/meta_graph.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -8,15 +8,13 @@ using ProtoBuf.EnumX: @enumx export var"CollectionDef.BytesList", var"CollectionDef.Int64List" export var"TensorInfo.CooSparse", var"CollectionDef.NodeList", var"CollectionDef.AnyList" export var"CollectionDef.FloatList", var"MetaGraphDef.MetaInfoDef", CollectionDef -export MetaGraphDef, SignatureDef, TensorInfo, AssetFileDef -export var"TensorInfo.CompositeTensor" - -# Abstract types to help resolve mutually recursive definitions -abstract type var"##AbstractMetaGraphDef" end -abstract type var"##AbstractSignatureDef" end -abstract type var"##AbstractTensorInfo" end -abstract type var"##AbstractAssetFileDef" end -abstract type var"##AbstractTensorInfo.CompositeTensor" end +export AssetFileDef, SignatureDef, TensorInfo, var"TensorInfo.CompositeTensor" +export MetaGraphDef +abstract type var"##Abstract#MetaGraphDef" end +abstract type var"##Abstract#SignatureDef" end +abstract type var"##Abstract#TensorInfo" end +abstract type var"##Abstract#AssetFileDef" end +abstract type var"##Abstract#TensorInfo.CompositeTensor" end struct var"CollectionDef.BytesList" @@ -25,14 +23,14 @@ end PB.default_values(::Type{var"CollectionDef.BytesList"}) = (;value = Vector{Vector{UInt8}}()) PB.field_numbers(::Type{var"CollectionDef.BytesList"}) = (;value = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CollectionDef.BytesList"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CollectionDef.BytesList"}, _endpos::Int=0, _group::Bool=false) value = PB.BufferedVector{Vector{UInt8}}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, value) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"CollectionDef.BytesList"(value[]) @@ -55,14 +53,14 @@ end PB.default_values(::Type{var"CollectionDef.Int64List"}) = (;value = Vector{Int64}()) PB.field_numbers(::Type{var"CollectionDef.Int64List"}) = (;value = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CollectionDef.Int64List"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CollectionDef.Int64List"}, _endpos::Int=0, _group::Bool=false) value = PB.BufferedVector{Int64}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, wire_type, value) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"CollectionDef.Int64List"(value[]) @@ -87,11 +85,11 @@ end PB.default_values(::Type{var"TensorInfo.CooSparse"}) = (;values_tensor_name = "", indices_tensor_name = "", dense_shape_tensor_name = "") PB.field_numbers(::Type{var"TensorInfo.CooSparse"}) = (;values_tensor_name = 1, indices_tensor_name = 2, dense_shape_tensor_name = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TensorInfo.CooSparse"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TensorInfo.CooSparse"}, _endpos::Int=0, _group::Bool=false) values_tensor_name = "" indices_tensor_name = "" dense_shape_tensor_name = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 values_tensor_name = PB.decode(d, String) @@ -100,7 +98,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TensorInfo.CooSparse elseif field_number == 3 dense_shape_tensor_name = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"TensorInfo.CooSparse"(values_tensor_name, indices_tensor_name, dense_shape_tensor_name) @@ -127,14 +125,14 @@ end PB.default_values(::Type{var"CollectionDef.NodeList"}) = (;value = Vector{String}()) PB.field_numbers(::Type{var"CollectionDef.NodeList"}) = (;value = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CollectionDef.NodeList"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CollectionDef.NodeList"}, _endpos::Int=0, _group::Bool=false) value = PB.BufferedVector{String}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, value) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"CollectionDef.NodeList"(value[]) @@ -157,14 +155,14 @@ end PB.default_values(::Type{var"CollectionDef.AnyList"}) = (;value = Vector{google.protobuf.var"#Any"}()) PB.field_numbers(::Type{var"CollectionDef.AnyList"}) = (;value = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CollectionDef.AnyList"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CollectionDef.AnyList"}, _endpos::Int=0, _group::Bool=false) value = PB.BufferedVector{google.protobuf.var"#Any"}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, value) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"CollectionDef.AnyList"(value[]) @@ -187,14 +185,14 @@ end PB.default_values(::Type{var"CollectionDef.FloatList"}) = (;value = Vector{Float32}()) PB.field_numbers(::Type{var"CollectionDef.FloatList"}) = (;value = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CollectionDef.FloatList"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CollectionDef.FloatList"}, _endpos::Int=0, _group::Bool=false) value = PB.BufferedVector{Float32}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, wire_type, value) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"CollectionDef.FloatList"(value[]) @@ -224,7 +222,7 @@ end PB.default_values(::Type{var"MetaGraphDef.MetaInfoDef"}) = (;meta_graph_version = "", stripped_op_list = nothing, any_info = nothing, tags = Vector{String}(), tensorflow_version = "", tensorflow_git_version = "", stripped_default_attrs = false, function_aliases = Dict{String,String}()) PB.field_numbers(::Type{var"MetaGraphDef.MetaInfoDef"}) = (;meta_graph_version = 1, stripped_op_list = 2, any_info = 3, tags = 4, tensorflow_version = 5, tensorflow_git_version = 6, stripped_default_attrs = 7, function_aliases = 8) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"MetaGraphDef.MetaInfoDef"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"MetaGraphDef.MetaInfoDef"}, _endpos::Int=0, _group::Bool=false) meta_graph_version = "" stripped_op_list = Ref{Union{Nothing,OpList}}(nothing) any_info = Ref{Union{Nothing,google.protobuf.var"#Any"}}(nothing) @@ -233,7 +231,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"MetaGraphDef.MetaInf tensorflow_git_version = "" stripped_default_attrs = false function_aliases = Dict{String,String}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 meta_graph_version = PB.decode(d, String) @@ -252,7 +250,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"MetaGraphDef.MetaInf elseif field_number == 8 PB.decode!(d, function_aliases) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"MetaGraphDef.MetaInfoDef"(meta_graph_version, stripped_op_list[], any_info[], tags[], tensorflow_version, tensorflow_git_version, stripped_default_attrs, function_aliases) @@ -292,9 +290,9 @@ PB.oneof_field_types(::Type{CollectionDef}) = (; PB.default_values(::Type{CollectionDef}) = (;node_list = nothing, bytes_list = nothing, int64_list = nothing, float_list = nothing, any_list = nothing) PB.field_numbers(::Type{CollectionDef}) = (;node_list = 1, bytes_list = 2, int64_list = 3, float_list = 4, any_list = 5) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CollectionDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CollectionDef}, _endpos::Int=0, _group::Bool=false) kind = nothing - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 kind = OneOf(:node_list, PB.decode(d, Ref{var"CollectionDef.NodeList"})) @@ -307,7 +305,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CollectionDef}) elseif field_number == 5 kind = OneOf(:any_list, PB.decode(d, Ref{var"CollectionDef.AnyList"})) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return CollectionDef(kind) @@ -346,85 +344,83 @@ function PB._encoded_size(x::CollectionDef) return encoded_size end -struct MetaGraphDef{T2<:Union{Nothing,var"##AbstractAssetFileDef"},T1<:Union{Nothing,var"##AbstractSignatureDef"}} <: var"##AbstractMetaGraphDef" +# Stub definitions for cyclic types +struct var"##Stub#AssetFileDef"{T1<:var"##Abstract#TensorInfo"} <: var"##Abstract#AssetFileDef" + tensor_info::Union{Nothing,T1} + filename::String +end + +struct var"##Stub#SignatureDef"{T1<:var"##Abstract#TensorInfo"} <: var"##Abstract#SignatureDef" + inputs::Dict{String,T1} + outputs::Dict{String,T1} + method_name::String + defaults::Dict{String,TensorProto} +end + +struct var"##Stub#TensorInfo"{T1<:var"##Abstract#TensorInfo.CompositeTensor"} <: var"##Abstract#TensorInfo" + encoding::Union{Nothing,OneOf{<:Union{String,var"TensorInfo.CooSparse",T1}}} + dtype::var"#DataType".T + tensor_shape::Union{Nothing,TensorShapeProto} +end + +struct var"##Stub#TensorInfo.CompositeTensor" <: var"##Abstract#TensorInfo.CompositeTensor" + type_spec::Union{Nothing,TypeSpecProto} + components::Vector{var"##Stub#TensorInfo"{var"##Stub#TensorInfo.CompositeTensor"}} +end + +struct var"##Stub#MetaGraphDef" <: var"##Abstract#MetaGraphDef" meta_info_def::Union{Nothing,var"MetaGraphDef.MetaInfoDef"} graph_def::Union{Nothing,GraphDef} saver_def::Union{Nothing,SaverDef} collection_def::Dict{String,CollectionDef} - signature_def::Dict{String,T1} - asset_file_def::Vector{T2} + signature_def::Dict{String,var"##Stub#SignatureDef"{var"##Stub#TensorInfo"{var"##Stub#TensorInfo.CompositeTensor"}}} + asset_file_def::Vector{var"##Stub#AssetFileDef"{var"##Stub#TensorInfo"{var"##Stub#TensorInfo.CompositeTensor"}}} object_graph_def::Union{Nothing,SavedObjectGraph} end -PB.default_values(::Type{MetaGraphDef}) = (;meta_info_def = nothing, graph_def = nothing, saver_def = nothing, collection_def = Dict{String,CollectionDef}(), signature_def = Dict{String,SignatureDef}(), asset_file_def = Vector{AssetFileDef}(), object_graph_def = nothing) -PB.field_numbers(::Type{MetaGraphDef}) = (;meta_info_def = 1, graph_def = 2, saver_def = 3, collection_def = 4, signature_def = 5, asset_file_def = 6, object_graph_def = 7) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MetaGraphDef}) - meta_info_def = Ref{Union{Nothing,var"MetaGraphDef.MetaInfoDef"}}(nothing) - graph_def = Ref{Union{Nothing,GraphDef}}(nothing) - saver_def = Ref{Union{Nothing,SaverDef}}(nothing) - collection_def = Dict{String,CollectionDef}() - signature_def = Dict{String,SignatureDef}() - asset_file_def = PB.BufferedVector{AssetFileDef}() - object_graph_def = Ref{Union{Nothing,SavedObjectGraph}}(nothing) - while !PB.message_done(d) +const AssetFileDef = var"##Stub#AssetFileDef"{var"##Stub#TensorInfo"{var"##Stub#TensorInfo.CompositeTensor"}} +PB.default_values(::Type{AssetFileDef}) = (;tensor_info = nothing, filename = "") +PB.field_numbers(::Type{AssetFileDef}) = (;tensor_info = 1, filename = 2) + +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:AssetFileDef}, _endpos::Int=0, _group::Bool=false) + tensor_info = Ref{Union{Nothing,TensorInfo}}(nothing) + filename = "" + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 - PB.decode!(d, meta_info_def) + PB.decode!(d, tensor_info) elseif field_number == 2 - PB.decode!(d, graph_def) - elseif field_number == 3 - PB.decode!(d, saver_def) - elseif field_number == 4 - PB.decode!(d, collection_def) - elseif field_number == 5 - PB.decode!(d, signature_def) - elseif field_number == 6 - PB.decode!(d, asset_file_def) - elseif field_number == 7 - PB.decode!(d, object_graph_def) + filename = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return MetaGraphDef(meta_info_def[], graph_def[], saver_def[], collection_def, signature_def, asset_file_def[], object_graph_def[]) + return AssetFileDef(tensor_info[], filename) end -function PB.encode(e::PB.AbstractProtoEncoder, x::MetaGraphDef) +function PB.encode(e::PB.AbstractProtoEncoder, x::AssetFileDef) initpos = position(e.io) - !isnothing(x.meta_info_def) && PB.encode(e, 1, x.meta_info_def) - !isnothing(x.graph_def) && PB.encode(e, 2, x.graph_def) - !isnothing(x.saver_def) && PB.encode(e, 3, x.saver_def) - !isempty(x.collection_def) && PB.encode(e, 4, x.collection_def) - !isempty(x.signature_def) && PB.encode(e, 5, x.signature_def) - !isempty(x.asset_file_def) && PB.encode(e, 6, x.asset_file_def) - !isnothing(x.object_graph_def) && PB.encode(e, 7, x.object_graph_def) + !isnothing(x.tensor_info) && PB.encode(e, 1, x.tensor_info) + !isempty(x.filename) && PB.encode(e, 2, x.filename) return position(e.io) - initpos end -function PB._encoded_size(x::MetaGraphDef) +function PB._encoded_size(x::AssetFileDef) encoded_size = 0 - !isnothing(x.meta_info_def) && (encoded_size += PB._encoded_size(x.meta_info_def, 1)) - !isnothing(x.graph_def) && (encoded_size += PB._encoded_size(x.graph_def, 2)) - !isnothing(x.saver_def) && (encoded_size += PB._encoded_size(x.saver_def, 3)) - !isempty(x.collection_def) && (encoded_size += PB._encoded_size(x.collection_def, 4)) - !isempty(x.signature_def) && (encoded_size += PB._encoded_size(x.signature_def, 5)) - !isempty(x.asset_file_def) && (encoded_size += PB._encoded_size(x.asset_file_def, 6)) - !isnothing(x.object_graph_def) && (encoded_size += PB._encoded_size(x.object_graph_def, 7)) + !isnothing(x.tensor_info) && (encoded_size += PB._encoded_size(x.tensor_info, 1)) + !isempty(x.filename) && (encoded_size += PB._encoded_size(x.filename, 2)) return encoded_size end -struct SignatureDef{T2<:Union{Nothing,var"##AbstractTensorInfo"},T1<:Union{Nothing,var"##AbstractTensorInfo"}} <: var"##AbstractSignatureDef" - inputs::Dict{String,T1} - outputs::Dict{String,T2} - method_name::String -end -PB.default_values(::Type{SignatureDef}) = (;inputs = Dict{String,TensorInfo}(), outputs = Dict{String,TensorInfo}(), method_name = "") -PB.field_numbers(::Type{SignatureDef}) = (;inputs = 1, outputs = 2, method_name = 3) +const SignatureDef = var"##Stub#SignatureDef"{var"##Stub#TensorInfo"{var"##Stub#TensorInfo.CompositeTensor"}} +PB.default_values(::Type{SignatureDef}) = (;inputs = Dict{String,TensorInfo}(), outputs = Dict{String,TensorInfo}(), method_name = "", defaults = Dict{String,TensorProto}()) +PB.field_numbers(::Type{SignatureDef}) = (;inputs = 1, outputs = 2, method_name = 3, defaults = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SignatureDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SignatureDef}, _endpos::Int=0, _group::Bool=false) inputs = Dict{String,TensorInfo}() outputs = Dict{String,TensorInfo}() method_name = "" - while !PB.message_done(d) + defaults = Dict{String,TensorProto}() + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, inputs) @@ -432,11 +428,13 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SignatureDef}) PB.decode!(d, outputs) elseif field_number == 3 method_name = PB.decode(d, String) + elseif field_number == 4 + PB.decode!(d, defaults) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return SignatureDef(inputs, outputs, method_name) + return SignatureDef(inputs, outputs, method_name, defaults) end function PB.encode(e::PB.AbstractProtoEncoder, x::SignatureDef) @@ -444,6 +442,7 @@ function PB.encode(e::PB.AbstractProtoEncoder, x::SignatureDef) !isempty(x.inputs) && PB.encode(e, 1, x.inputs) !isempty(x.outputs) && PB.encode(e, 2, x.outputs) !isempty(x.method_name) && PB.encode(e, 3, x.method_name) + !isempty(x.defaults) && PB.encode(e, 4, x.defaults) return position(e.io) - initpos end function PB._encoded_size(x::SignatureDef) @@ -451,25 +450,22 @@ function PB._encoded_size(x::SignatureDef) !isempty(x.inputs) && (encoded_size += PB._encoded_size(x.inputs, 1)) !isempty(x.outputs) && (encoded_size += PB._encoded_size(x.outputs, 2)) !isempty(x.method_name) && (encoded_size += PB._encoded_size(x.method_name, 3)) + !isempty(x.defaults) && (encoded_size += PB._encoded_size(x.defaults, 4)) return encoded_size end -struct TensorInfo <: var"##AbstractTensorInfo" - encoding::Union{Nothing,OneOf{<:Union{String,var"TensorInfo.CooSparse",var"##AbstractTensorInfo.CompositeTensor"}}} - dtype::var"#DataType".T - tensor_shape::Union{Nothing,TensorShapeProto} -end +const TensorInfo = var"##Stub#TensorInfo"{var"##Stub#TensorInfo.CompositeTensor"} PB.oneof_field_types(::Type{TensorInfo}) = (; encoding = (;name=String, coo_sparse=var"TensorInfo.CooSparse", composite_tensor=var"TensorInfo.CompositeTensor"), ) PB.default_values(::Type{TensorInfo}) = (;name = "", coo_sparse = nothing, composite_tensor = nothing, dtype = var"#DataType".DT_INVALID, tensor_shape = nothing) PB.field_numbers(::Type{TensorInfo}) = (;name = 1, coo_sparse = 4, composite_tensor = 5, dtype = 2, tensor_shape = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorInfo}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorInfo}, _endpos::Int=0, _group::Bool=false) encoding = nothing dtype = var"#DataType".DT_INVALID tensor_shape = Ref{Union{Nothing,TensorShapeProto}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 encoding = OneOf(:name, PB.decode(d, String)) @@ -482,7 +478,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorInfo}) elseif field_number == 3 PB.decode!(d, tensor_shape) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return TensorInfo(encoding, dtype, tensor_shape[]) @@ -517,74 +513,93 @@ function PB._encoded_size(x::TensorInfo) return encoded_size end -struct AssetFileDef <: var"##AbstractAssetFileDef" - tensor_info::Union{Nothing,TensorInfo} - filename::String -end -PB.default_values(::Type{AssetFileDef}) = (;tensor_info = nothing, filename = "") -PB.field_numbers(::Type{AssetFileDef}) = (;tensor_info = 1, filename = 2) +const var"TensorInfo.CompositeTensor" = var"##Stub#TensorInfo.CompositeTensor" +PB.default_values(::Type{var"TensorInfo.CompositeTensor"}) = (;type_spec = nothing, components = Vector{TensorInfo}()) +PB.field_numbers(::Type{var"TensorInfo.CompositeTensor"}) = (;type_spec = 1, components = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:AssetFileDef}) - tensor_info = Ref{Union{Nothing,TensorInfo}}(nothing) - filename = "" - while !PB.message_done(d) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TensorInfo.CompositeTensor"}, _endpos::Int=0, _group::Bool=false) + type_spec = Ref{Union{Nothing,TypeSpecProto}}(nothing) + components = PB.BufferedVector{TensorInfo}() + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 - PB.decode!(d, tensor_info) + PB.decode!(d, type_spec) elseif field_number == 2 - filename = PB.decode(d, String) + PB.decode!(d, components) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return AssetFileDef(tensor_info[], filename) + return var"TensorInfo.CompositeTensor"(type_spec[], components[]) end -function PB.encode(e::PB.AbstractProtoEncoder, x::AssetFileDef) +function PB.encode(e::PB.AbstractProtoEncoder, x::var"TensorInfo.CompositeTensor") initpos = position(e.io) - !isnothing(x.tensor_info) && PB.encode(e, 1, x.tensor_info) - !isempty(x.filename) && PB.encode(e, 2, x.filename) + !isnothing(x.type_spec) && PB.encode(e, 1, x.type_spec) + !isempty(x.components) && PB.encode(e, 2, x.components) return position(e.io) - initpos end -function PB._encoded_size(x::AssetFileDef) +function PB._encoded_size(x::var"TensorInfo.CompositeTensor") encoded_size = 0 - !isnothing(x.tensor_info) && (encoded_size += PB._encoded_size(x.tensor_info, 1)) - !isempty(x.filename) && (encoded_size += PB._encoded_size(x.filename, 2)) + !isnothing(x.type_spec) && (encoded_size += PB._encoded_size(x.type_spec, 1)) + !isempty(x.components) && (encoded_size += PB._encoded_size(x.components, 2)) return encoded_size end -struct var"TensorInfo.CompositeTensor" <: var"##AbstractTensorInfo.CompositeTensor" - type_spec::Union{Nothing,TypeSpecProto} - components::Vector{<:TensorInfo} -end -PB.default_values(::Type{var"TensorInfo.CompositeTensor"}) = (;type_spec = nothing, components = Vector{TensorInfo}()) -PB.field_numbers(::Type{var"TensorInfo.CompositeTensor"}) = (;type_spec = 1, components = 2) +const MetaGraphDef = var"##Stub#MetaGraphDef" +PB.default_values(::Type{MetaGraphDef}) = (;meta_info_def = nothing, graph_def = nothing, saver_def = nothing, collection_def = Dict{String,CollectionDef}(), signature_def = Dict{String,SignatureDef}(), asset_file_def = Vector{AssetFileDef}(), object_graph_def = nothing) +PB.field_numbers(::Type{MetaGraphDef}) = (;meta_info_def = 1, graph_def = 2, saver_def = 3, collection_def = 4, signature_def = 5, asset_file_def = 6, object_graph_def = 7) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TensorInfo.CompositeTensor"}) - type_spec = Ref{Union{Nothing,TypeSpecProto}}(nothing) - components = PB.BufferedVector{TensorInfo}() - while !PB.message_done(d) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MetaGraphDef}, _endpos::Int=0, _group::Bool=false) + meta_info_def = Ref{Union{Nothing,var"MetaGraphDef.MetaInfoDef"}}(nothing) + graph_def = Ref{Union{Nothing,GraphDef}}(nothing) + saver_def = Ref{Union{Nothing,SaverDef}}(nothing) + collection_def = Dict{String,CollectionDef}() + signature_def = Dict{String,SignatureDef}() + asset_file_def = PB.BufferedVector{AssetFileDef}() + object_graph_def = Ref{Union{Nothing,SavedObjectGraph}}(nothing) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 - PB.decode!(d, type_spec) + PB.decode!(d, meta_info_def) elseif field_number == 2 - PB.decode!(d, components) + PB.decode!(d, graph_def) + elseif field_number == 3 + PB.decode!(d, saver_def) + elseif field_number == 4 + PB.decode!(d, collection_def) + elseif field_number == 5 + PB.decode!(d, signature_def) + elseif field_number == 6 + PB.decode!(d, asset_file_def) + elseif field_number == 7 + PB.decode!(d, object_graph_def) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return var"TensorInfo.CompositeTensor"(type_spec[], components[]) + return MetaGraphDef(meta_info_def[], graph_def[], saver_def[], collection_def, signature_def, asset_file_def[], object_graph_def[]) end -function PB.encode(e::PB.AbstractProtoEncoder, x::var"TensorInfo.CompositeTensor") +function PB.encode(e::PB.AbstractProtoEncoder, x::MetaGraphDef) initpos = position(e.io) - !isnothing(x.type_spec) && PB.encode(e, 1, x.type_spec) - !isempty(x.components) && PB.encode(e, 2, x.components) + !isnothing(x.meta_info_def) && PB.encode(e, 1, x.meta_info_def) + !isnothing(x.graph_def) && PB.encode(e, 2, x.graph_def) + !isnothing(x.saver_def) && PB.encode(e, 3, x.saver_def) + !isempty(x.collection_def) && PB.encode(e, 4, x.collection_def) + !isempty(x.signature_def) && PB.encode(e, 5, x.signature_def) + !isempty(x.asset_file_def) && PB.encode(e, 6, x.asset_file_def) + !isnothing(x.object_graph_def) && PB.encode(e, 7, x.object_graph_def) return position(e.io) - initpos end -function PB._encoded_size(x::var"TensorInfo.CompositeTensor") +function PB._encoded_size(x::MetaGraphDef) encoded_size = 0 - !isnothing(x.type_spec) && (encoded_size += PB._encoded_size(x.type_spec, 1)) - !isempty(x.components) && (encoded_size += PB._encoded_size(x.components, 2)) + !isnothing(x.meta_info_def) && (encoded_size += PB._encoded_size(x.meta_info_def, 1)) + !isnothing(x.graph_def) && (encoded_size += PB._encoded_size(x.graph_def, 2)) + !isnothing(x.saver_def) && (encoded_size += PB._encoded_size(x.saver_def, 3)) + !isempty(x.collection_def) && (encoded_size += PB._encoded_size(x.collection_def, 4)) + !isempty(x.signature_def) && (encoded_size += PB._encoded_size(x.signature_def, 5)) + !isempty(x.asset_file_def) && (encoded_size += PB._encoded_size(x.asset_file_def, 6)) + !isnothing(x.object_graph_def) && (encoded_size += PB._encoded_size(x.object_graph_def, 7)) return encoded_size end diff --git a/src/protojl/tensorboard/tensorboard/node_def_pb.jl b/src/protojl/tensorboard/tensorboard/node_def_pb.jl index abbd45d9..40ffe4b8 100644 --- a/src/protojl/tensorboard/tensorboard/node_def_pb.jl +++ b/src/protojl/tensorboard/tensorboard/node_def_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.776 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/node_def.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/node_def.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export var"NodeDef.ExperimentalDebugInfo", NodeDef + struct var"NodeDef.ExperimentalDebugInfo" original_node_names::Vector{String} original_func_names::Vector{String} @@ -14,17 +15,17 @@ end PB.default_values(::Type{var"NodeDef.ExperimentalDebugInfo"}) = (;original_node_names = Vector{String}(), original_func_names = Vector{String}()) PB.field_numbers(::Type{var"NodeDef.ExperimentalDebugInfo"}) = (;original_node_names = 1, original_func_names = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"NodeDef.ExperimentalDebugInfo"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"NodeDef.ExperimentalDebugInfo"}, _endpos::Int=0, _group::Bool=false) original_node_names = PB.BufferedVector{String}() original_func_names = PB.BufferedVector{String}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, original_node_names) elseif field_number == 2 PB.decode!(d, original_func_names) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"NodeDef.ExperimentalDebugInfo"(original_node_names[], original_func_names[]) @@ -55,7 +56,7 @@ end PB.default_values(::Type{NodeDef}) = (;name = "", op = "", input = Vector{String}(), device = "", attr = Dict{String,AttrValue}(), experimental_debug_info = nothing, experimental_type = nothing) PB.field_numbers(::Type{NodeDef}) = (;name = 1, op = 2, input = 3, device = 4, attr = 5, experimental_debug_info = 6, experimental_type = 7) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:NodeDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:NodeDef}, _endpos::Int=0, _group::Bool=false) name = "" op = "" input = PB.BufferedVector{String}() @@ -63,7 +64,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:NodeDef}) attr = Dict{String,AttrValue}() experimental_debug_info = Ref{Union{Nothing,var"NodeDef.ExperimentalDebugInfo"}}(nothing) experimental_type = Ref{Union{Nothing,FullTypeDef}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) @@ -80,7 +81,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:NodeDef}) elseif field_number == 7 PB.decode!(d, experimental_type) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return NodeDef(name, op, input[], device, attr, experimental_debug_info[], experimental_type[]) diff --git a/src/protojl/tensorboard/tensorboard/op_def_pb.jl b/src/protojl/tensorboard/tensorboard/op_def_pb.jl index 30ba31df..c07e466f 100644 --- a/src/protojl/tensorboard/tensorboard/op_def_pb.jl +++ b/src/protojl/tensorboard/tensorboard/op_def_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.776 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/op_def.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/op_def.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export var"OpDef.AttrDef", OpDeprecation, var"OpDef.ArgDef", OpDef, OpList + struct var"OpDef.AttrDef" name::String var"#type"::String @@ -19,7 +20,7 @@ end PB.default_values(::Type{var"OpDef.AttrDef"}) = (;name = "", var"#type" = "", default_value = nothing, description = "", has_minimum = false, minimum = zero(Int64), allowed_values = nothing) PB.field_numbers(::Type{var"OpDef.AttrDef"}) = (;name = 1, var"#type" = 2, default_value = 3, description = 4, has_minimum = 5, minimum = 6, allowed_values = 7) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"OpDef.AttrDef"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"OpDef.AttrDef"}, _endpos::Int=0, _group::Bool=false) name = "" var"#type" = "" default_value = Ref{Union{Nothing,AttrValue}}(nothing) @@ -27,7 +28,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"OpDef.AttrDef"}) has_minimum = false minimum = zero(Int64) allowed_values = Ref{Union{Nothing,AttrValue}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) @@ -44,7 +45,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"OpDef.AttrDef"}) elseif field_number == 7 PB.decode!(d, allowed_values) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"OpDef.AttrDef"(name, var"#type", default_value[], description, has_minimum, minimum, allowed_values[]) @@ -80,17 +81,17 @@ end PB.default_values(::Type{OpDeprecation}) = (;version = zero(Int32), explanation = "") PB.field_numbers(::Type{OpDeprecation}) = (;version = 1, explanation = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OpDeprecation}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OpDeprecation}, _endpos::Int=0, _group::Bool=false) version = zero(Int32) explanation = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 version = PB.decode(d, Int32) elseif field_number == 2 explanation = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return OpDeprecation(version, explanation) @@ -123,7 +124,7 @@ end PB.default_values(::Type{var"OpDef.ArgDef"}) = (;name = "", description = "", var"#type" = var"#DataType".DT_INVALID, type_attr = "", number_attr = "", type_list_attr = "", handle_data = Vector{var"ResourceHandleProto.DtypeAndShape"}(), is_ref = false, experimental_full_type = nothing) PB.field_numbers(::Type{var"OpDef.ArgDef"}) = (;name = 1, description = 2, var"#type" = 3, type_attr = 4, number_attr = 5, type_list_attr = 6, handle_data = 7, is_ref = 16, experimental_full_type = 17) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"OpDef.ArgDef"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"OpDef.ArgDef"}, _endpos::Int=0, _group::Bool=false) name = "" description = "" var"#type" = var"#DataType".DT_INVALID @@ -133,7 +134,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"OpDef.ArgDef"}) handle_data = PB.BufferedVector{var"ResourceHandleProto.DtypeAndShape"}() is_ref = false experimental_full_type = Ref{Union{Nothing,FullTypeDef}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) @@ -154,7 +155,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"OpDef.ArgDef"}) elseif field_number == 17 PB.decode!(d, experimental_full_type) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"OpDef.ArgDef"(name, description, var"#type", type_attr, number_attr, type_list_attr, handle_data[], is_ref, experimental_full_type[]) @@ -205,7 +206,7 @@ end PB.default_values(::Type{OpDef}) = (;name = "", input_arg = Vector{var"OpDef.ArgDef"}(), output_arg = Vector{var"OpDef.ArgDef"}(), control_output = Vector{String}(), attr = Vector{var"OpDef.AttrDef"}(), deprecation = nothing, summary = "", description = "", is_commutative = false, is_aggregate = false, is_stateful = false, allows_uninitialized_input = false, is_distributed_communication = false) PB.field_numbers(::Type{OpDef}) = (;name = 1, input_arg = 2, output_arg = 3, control_output = 20, attr = 4, deprecation = 8, summary = 5, description = 6, is_commutative = 18, is_aggregate = 16, is_stateful = 17, allows_uninitialized_input = 19, is_distributed_communication = 21) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OpDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OpDef}, _endpos::Int=0, _group::Bool=false) name = "" input_arg = PB.BufferedVector{var"OpDef.ArgDef"}() output_arg = PB.BufferedVector{var"OpDef.ArgDef"}() @@ -219,7 +220,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OpDef}) is_stateful = false allows_uninitialized_input = false is_distributed_communication = false - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) @@ -248,7 +249,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OpDef}) elseif field_number == 21 is_distributed_communication = PB.decode(d, Bool) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return OpDef(name, input_arg[], output_arg[], control_output[], attr[], deprecation[], summary, description, is_commutative, is_aggregate, is_stateful, allows_uninitialized_input, is_distributed_communication) @@ -295,14 +296,14 @@ end PB.default_values(::Type{OpList}) = (;op = Vector{OpDef}()) PB.field_numbers(::Type{OpList}) = (;op = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OpList}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OpList}, _endpos::Int=0, _group::Bool=false) op = PB.BufferedVector{OpDef}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, op) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return OpList(op[]) diff --git a/src/protojl/tensorboard/tensorboard/resource_handle_pb.jl b/src/protojl/tensorboard/tensorboard/resource_handle_pb.jl index fa46f3b8..6eedad7a 100644 --- a/src/protojl/tensorboard/tensorboard/resource_handle_pb.jl +++ b/src/protojl/tensorboard/tensorboard/resource_handle_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.424 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/resource_handle.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/resource_handle.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export var"ResourceHandleProto.DtypeAndShape", ResourceHandleProto + struct var"ResourceHandleProto.DtypeAndShape" dtype::var"#DataType".T shape::Union{Nothing,TensorShapeProto} @@ -14,17 +15,17 @@ end PB.default_values(::Type{var"ResourceHandleProto.DtypeAndShape"}) = (;dtype = var"#DataType".DT_INVALID, shape = nothing) PB.field_numbers(::Type{var"ResourceHandleProto.DtypeAndShape"}) = (;dtype = 1, shape = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"ResourceHandleProto.DtypeAndShape"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"ResourceHandleProto.DtypeAndShape"}, _endpos::Int=0, _group::Bool=false) dtype = var"#DataType".DT_INVALID shape = Ref{Union{Nothing,TensorShapeProto}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 dtype = PB.decode(d, var"#DataType".T) elseif field_number == 2 PB.decode!(d, shape) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"ResourceHandleProto.DtypeAndShape"(dtype, shape[]) @@ -55,14 +56,14 @@ PB.reserved_fields(::Type{ResourceHandleProto}) = (names = String[], numbers = U PB.default_values(::Type{ResourceHandleProto}) = (;device = "", container = "", name = "", hash_code = zero(UInt64), maybe_type_name = "", dtypes_and_shapes = Vector{var"ResourceHandleProto.DtypeAndShape"}()) PB.field_numbers(::Type{ResourceHandleProto}) = (;device = 1, container = 2, name = 3, hash_code = 4, maybe_type_name = 5, dtypes_and_shapes = 6) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ResourceHandleProto}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ResourceHandleProto}, _endpos::Int=0, _group::Bool=false) device = "" container = "" name = "" hash_code = zero(UInt64) maybe_type_name = "" dtypes_and_shapes = PB.BufferedVector{var"ResourceHandleProto.DtypeAndShape"}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 device = PB.decode(d, String) @@ -77,7 +78,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ResourceHandleProto}) elseif field_number == 6 PB.decode!(d, dtypes_and_shapes) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return ResourceHandleProto(device, container, name, hash_code, maybe_type_name, dtypes_and_shapes[]) diff --git a/src/protojl/tensorboard/tensorboard/rewriter_config_pb.jl b/src/protojl/tensorboard/tensorboard/rewriter_config_pb.jl index 3de7524c..5812fa04 100644 --- a/src/protojl/tensorboard/tensorboard/rewriter_config_pb.jl +++ b/src/protojl/tensorboard/tensorboard/rewriter_config_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.775 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/rewriter_config.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/rewriter_config.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -10,6 +10,7 @@ export var"RewriterConfig.CpuLayout", var"RewriterConfig.Toggle" export var"RewriterConfig.NumIterationsType", var"RewriterConfig.MemOptType" export AutoParallelOptions, RewriterConfig + struct var"RewriterConfig.CustomGraphOptimizer" name::String parameter_map::Dict{String,AttrValue} @@ -17,17 +18,17 @@ end PB.default_values(::Type{var"RewriterConfig.CustomGraphOptimizer"}) = (;name = "", parameter_map = Dict{String,AttrValue}()) PB.field_numbers(::Type{var"RewriterConfig.CustomGraphOptimizer"}) = (;name = 1, parameter_map = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"RewriterConfig.CustomGraphOptimizer"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"RewriterConfig.CustomGraphOptimizer"}, _endpos::Int=0, _group::Bool=false) name = "" parameter_map = Dict{String,AttrValue}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) elseif field_number == 2 PB.decode!(d, parameter_map) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"RewriterConfig.CustomGraphOptimizer"(name, parameter_map) @@ -52,14 +53,14 @@ end PB.default_values(::Type{ScopedAllocatorOptions}) = (;enable_op = Vector{String}()) PB.field_numbers(::Type{ScopedAllocatorOptions}) = (;enable_op = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ScopedAllocatorOptions}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ScopedAllocatorOptions}, _endpos::Int=0, _group::Bool=false) enable_op = PB.BufferedVector{String}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, enable_op) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return ScopedAllocatorOptions(enable_op[]) @@ -91,17 +92,17 @@ end PB.default_values(::Type{AutoParallelOptions}) = (;enable = false, num_replicas = zero(Int32)) PB.field_numbers(::Type{AutoParallelOptions}) = (;enable = 1, num_replicas = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:AutoParallelOptions}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:AutoParallelOptions}, _endpos::Int=0, _group::Bool=false) enable = false num_replicas = zero(Int32) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 enable = PB.decode(d, Bool) elseif field_number == 2 num_replicas = PB.decode(d, Int32) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return AutoParallelOptions(enable, num_replicas) @@ -141,6 +142,7 @@ struct RewriterConfig auto_mixed_precision_onednn_bfloat16::var"RewriterConfig.Toggle".T auto_mixed_precision_cpu::var"RewriterConfig.Toggle".T disable_meta_optimizer::Bool + disable_tfg_optimizer::Bool use_plugin_optimizers::var"RewriterConfig.Toggle".T experimental_conditional_code_motion::var"RewriterConfig.Toggle".T meta_optimizer_iterations::var"RewriterConfig.NumIterationsType".T @@ -158,10 +160,10 @@ struct RewriterConfig inter_optimizer_verifier_config::Union{Nothing,VerifierConfig} post_optimization_verifier_config::Union{Nothing,VerifierConfig} end -PB.default_values(::Type{RewriterConfig}) = (;cpu_layout_conversion = var"RewriterConfig.CpuLayout".NO_CONVERSION_ON_CPU, layout_optimizer = var"RewriterConfig.Toggle".DEFAULT, constant_folding = var"RewriterConfig.Toggle".DEFAULT, shape_optimization = var"RewriterConfig.Toggle".DEFAULT, remapping = var"RewriterConfig.Toggle".DEFAULT, common_subgraph_elimination = var"RewriterConfig.Toggle".DEFAULT, arithmetic_optimization = var"RewriterConfig.Toggle".DEFAULT, dependency_optimization = var"RewriterConfig.Toggle".DEFAULT, loop_optimization = var"RewriterConfig.Toggle".DEFAULT, function_optimization = var"RewriterConfig.Toggle".DEFAULT, debug_stripper = var"RewriterConfig.Toggle".DEFAULT, disable_model_pruning = false, scoped_allocator_optimization = var"RewriterConfig.Toggle".DEFAULT, pin_to_host_optimization = var"RewriterConfig.Toggle".DEFAULT, implementation_selector = var"RewriterConfig.Toggle".DEFAULT, auto_mixed_precision = var"RewriterConfig.Toggle".DEFAULT, auto_mixed_precision_mkl = var"RewriterConfig.Toggle".DEFAULT, auto_mixed_precision_onednn_bfloat16 = var"RewriterConfig.Toggle".DEFAULT, auto_mixed_precision_cpu = var"RewriterConfig.Toggle".DEFAULT, disable_meta_optimizer = false, use_plugin_optimizers = var"RewriterConfig.Toggle".DEFAULT, experimental_conditional_code_motion = var"RewriterConfig.Toggle".DEFAULT, meta_optimizer_iterations = var"RewriterConfig.NumIterationsType".DEFAULT_NUM_ITERS, min_graph_nodes = zero(Int32), experimental_disable_compressed_tensor_optimization = false, experimental_disable_folding_quantization_emulation = false, memory_optimization = var"RewriterConfig.MemOptType".DEFAULT_MEM_OPT, memory_optimizer_target_node_name_scope = "", meta_optimizer_timeout_ms = zero(Int64), auto_parallel = nothing, fail_on_optimizer_errors = false, scoped_allocator_opts = nothing, optimizers = Vector{String}(), custom_optimizers = Vector{var"RewriterConfig.CustomGraphOptimizer"}(), inter_optimizer_verifier_config = nothing, post_optimization_verifier_config = nothing) -PB.field_numbers(::Type{RewriterConfig}) = (;cpu_layout_conversion = 50, layout_optimizer = 1, constant_folding = 3, shape_optimization = 13, remapping = 14, common_subgraph_elimination = 24, arithmetic_optimization = 7, dependency_optimization = 8, loop_optimization = 9, function_optimization = 10, debug_stripper = 11, disable_model_pruning = 2, scoped_allocator_optimization = 15, pin_to_host_optimization = 18, implementation_selector = 22, auto_mixed_precision = 23, auto_mixed_precision_mkl = 25, auto_mixed_precision_onednn_bfloat16 = 31, auto_mixed_precision_cpu = 29, disable_meta_optimizer = 19, use_plugin_optimizers = 28, experimental_conditional_code_motion = 30, meta_optimizer_iterations = 12, min_graph_nodes = 17, experimental_disable_compressed_tensor_optimization = 26, experimental_disable_folding_quantization_emulation = 27, memory_optimization = 4, memory_optimizer_target_node_name_scope = 6, meta_optimizer_timeout_ms = 20, auto_parallel = 5, fail_on_optimizer_errors = 21, scoped_allocator_opts = 16, optimizers = 100, custom_optimizers = 200, inter_optimizer_verifier_config = 300, post_optimization_verifier_config = 301) +PB.default_values(::Type{RewriterConfig}) = (;cpu_layout_conversion = var"RewriterConfig.CpuLayout".NO_CONVERSION_ON_CPU, layout_optimizer = var"RewriterConfig.Toggle".DEFAULT, constant_folding = var"RewriterConfig.Toggle".DEFAULT, shape_optimization = var"RewriterConfig.Toggle".DEFAULT, remapping = var"RewriterConfig.Toggle".DEFAULT, common_subgraph_elimination = var"RewriterConfig.Toggle".DEFAULT, arithmetic_optimization = var"RewriterConfig.Toggle".DEFAULT, dependency_optimization = var"RewriterConfig.Toggle".DEFAULT, loop_optimization = var"RewriterConfig.Toggle".DEFAULT, function_optimization = var"RewriterConfig.Toggle".DEFAULT, debug_stripper = var"RewriterConfig.Toggle".DEFAULT, disable_model_pruning = false, scoped_allocator_optimization = var"RewriterConfig.Toggle".DEFAULT, pin_to_host_optimization = var"RewriterConfig.Toggle".DEFAULT, implementation_selector = var"RewriterConfig.Toggle".DEFAULT, auto_mixed_precision = var"RewriterConfig.Toggle".DEFAULT, auto_mixed_precision_mkl = var"RewriterConfig.Toggle".DEFAULT, auto_mixed_precision_onednn_bfloat16 = var"RewriterConfig.Toggle".DEFAULT, auto_mixed_precision_cpu = var"RewriterConfig.Toggle".DEFAULT, disable_meta_optimizer = false, disable_tfg_optimizer = false, use_plugin_optimizers = var"RewriterConfig.Toggle".DEFAULT, experimental_conditional_code_motion = var"RewriterConfig.Toggle".DEFAULT, meta_optimizer_iterations = var"RewriterConfig.NumIterationsType".DEFAULT_NUM_ITERS, min_graph_nodes = zero(Int32), experimental_disable_compressed_tensor_optimization = false, experimental_disable_folding_quantization_emulation = false, memory_optimization = var"RewriterConfig.MemOptType".DEFAULT_MEM_OPT, memory_optimizer_target_node_name_scope = "", meta_optimizer_timeout_ms = zero(Int64), auto_parallel = nothing, fail_on_optimizer_errors = false, scoped_allocator_opts = nothing, optimizers = Vector{String}(), custom_optimizers = Vector{var"RewriterConfig.CustomGraphOptimizer"}(), inter_optimizer_verifier_config = nothing, post_optimization_verifier_config = nothing) +PB.field_numbers(::Type{RewriterConfig}) = (;cpu_layout_conversion = 50, layout_optimizer = 1, constant_folding = 3, shape_optimization = 13, remapping = 14, common_subgraph_elimination = 24, arithmetic_optimization = 7, dependency_optimization = 8, loop_optimization = 9, function_optimization = 10, debug_stripper = 11, disable_model_pruning = 2, scoped_allocator_optimization = 15, pin_to_host_optimization = 18, implementation_selector = 22, auto_mixed_precision = 23, auto_mixed_precision_mkl = 25, auto_mixed_precision_onednn_bfloat16 = 31, auto_mixed_precision_cpu = 29, disable_meta_optimizer = 19, disable_tfg_optimizer = 32, use_plugin_optimizers = 28, experimental_conditional_code_motion = 30, meta_optimizer_iterations = 12, min_graph_nodes = 17, experimental_disable_compressed_tensor_optimization = 26, experimental_disable_folding_quantization_emulation = 27, memory_optimization = 4, memory_optimizer_target_node_name_scope = 6, meta_optimizer_timeout_ms = 20, auto_parallel = 5, fail_on_optimizer_errors = 21, scoped_allocator_opts = 16, optimizers = 100, custom_optimizers = 200, inter_optimizer_verifier_config = 300, post_optimization_verifier_config = 301) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RewriterConfig}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RewriterConfig}, _endpos::Int=0, _group::Bool=false) cpu_layout_conversion = var"RewriterConfig.CpuLayout".NO_CONVERSION_ON_CPU layout_optimizer = var"RewriterConfig.Toggle".DEFAULT constant_folding = var"RewriterConfig.Toggle".DEFAULT @@ -182,6 +184,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RewriterConfig}) auto_mixed_precision_onednn_bfloat16 = var"RewriterConfig.Toggle".DEFAULT auto_mixed_precision_cpu = var"RewriterConfig.Toggle".DEFAULT disable_meta_optimizer = false + disable_tfg_optimizer = false use_plugin_optimizers = var"RewriterConfig.Toggle".DEFAULT experimental_conditional_code_motion = var"RewriterConfig.Toggle".DEFAULT meta_optimizer_iterations = var"RewriterConfig.NumIterationsType".DEFAULT_NUM_ITERS @@ -198,7 +201,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RewriterConfig}) custom_optimizers = PB.BufferedVector{var"RewriterConfig.CustomGraphOptimizer"}() inter_optimizer_verifier_config = Ref{Union{Nothing,VerifierConfig}}(nothing) post_optimization_verifier_config = Ref{Union{Nothing,VerifierConfig}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 50 cpu_layout_conversion = PB.decode(d, var"RewriterConfig.CpuLayout".T) @@ -240,6 +243,8 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RewriterConfig}) auto_mixed_precision_cpu = PB.decode(d, var"RewriterConfig.Toggle".T) elseif field_number == 19 disable_meta_optimizer = PB.decode(d, Bool) + elseif field_number == 32 + disable_tfg_optimizer = PB.decode(d, Bool) elseif field_number == 28 use_plugin_optimizers = PB.decode(d, var"RewriterConfig.Toggle".T) elseif field_number == 30 @@ -273,10 +278,10 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RewriterConfig}) elseif field_number == 301 PB.decode!(d, post_optimization_verifier_config) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return RewriterConfig(cpu_layout_conversion, layout_optimizer, constant_folding, shape_optimization, remapping, common_subgraph_elimination, arithmetic_optimization, dependency_optimization, loop_optimization, function_optimization, debug_stripper, disable_model_pruning, scoped_allocator_optimization, pin_to_host_optimization, implementation_selector, auto_mixed_precision, auto_mixed_precision_mkl, auto_mixed_precision_onednn_bfloat16, auto_mixed_precision_cpu, disable_meta_optimizer, use_plugin_optimizers, experimental_conditional_code_motion, meta_optimizer_iterations, min_graph_nodes, experimental_disable_compressed_tensor_optimization, experimental_disable_folding_quantization_emulation, memory_optimization, memory_optimizer_target_node_name_scope, meta_optimizer_timeout_ms, auto_parallel[], fail_on_optimizer_errors, scoped_allocator_opts[], optimizers[], custom_optimizers[], inter_optimizer_verifier_config[], post_optimization_verifier_config[]) + return RewriterConfig(cpu_layout_conversion, layout_optimizer, constant_folding, shape_optimization, remapping, common_subgraph_elimination, arithmetic_optimization, dependency_optimization, loop_optimization, function_optimization, debug_stripper, disable_model_pruning, scoped_allocator_optimization, pin_to_host_optimization, implementation_selector, auto_mixed_precision, auto_mixed_precision_mkl, auto_mixed_precision_onednn_bfloat16, auto_mixed_precision_cpu, disable_meta_optimizer, disable_tfg_optimizer, use_plugin_optimizers, experimental_conditional_code_motion, meta_optimizer_iterations, min_graph_nodes, experimental_disable_compressed_tensor_optimization, experimental_disable_folding_quantization_emulation, memory_optimization, memory_optimizer_target_node_name_scope, meta_optimizer_timeout_ms, auto_parallel[], fail_on_optimizer_errors, scoped_allocator_opts[], optimizers[], custom_optimizers[], inter_optimizer_verifier_config[], post_optimization_verifier_config[]) end function PB.encode(e::PB.AbstractProtoEncoder, x::RewriterConfig) @@ -301,6 +306,7 @@ function PB.encode(e::PB.AbstractProtoEncoder, x::RewriterConfig) x.auto_mixed_precision_onednn_bfloat16 != var"RewriterConfig.Toggle".DEFAULT && PB.encode(e, 31, x.auto_mixed_precision_onednn_bfloat16) x.auto_mixed_precision_cpu != var"RewriterConfig.Toggle".DEFAULT && PB.encode(e, 29, x.auto_mixed_precision_cpu) x.disable_meta_optimizer != false && PB.encode(e, 19, x.disable_meta_optimizer) + x.disable_tfg_optimizer != false && PB.encode(e, 32, x.disable_tfg_optimizer) x.use_plugin_optimizers != var"RewriterConfig.Toggle".DEFAULT && PB.encode(e, 28, x.use_plugin_optimizers) x.experimental_conditional_code_motion != var"RewriterConfig.Toggle".DEFAULT && PB.encode(e, 30, x.experimental_conditional_code_motion) x.meta_optimizer_iterations != var"RewriterConfig.NumIterationsType".DEFAULT_NUM_ITERS && PB.encode(e, 12, x.meta_optimizer_iterations) @@ -341,6 +347,7 @@ function PB._encoded_size(x::RewriterConfig) x.auto_mixed_precision_onednn_bfloat16 != var"RewriterConfig.Toggle".DEFAULT && (encoded_size += PB._encoded_size(x.auto_mixed_precision_onednn_bfloat16, 31)) x.auto_mixed_precision_cpu != var"RewriterConfig.Toggle".DEFAULT && (encoded_size += PB._encoded_size(x.auto_mixed_precision_cpu, 29)) x.disable_meta_optimizer != false && (encoded_size += PB._encoded_size(x.disable_meta_optimizer, 19)) + x.disable_tfg_optimizer != false && (encoded_size += PB._encoded_size(x.disable_tfg_optimizer, 32)) x.use_plugin_optimizers != var"RewriterConfig.Toggle".DEFAULT && (encoded_size += PB._encoded_size(x.use_plugin_optimizers, 28)) x.experimental_conditional_code_motion != var"RewriterConfig.Toggle".DEFAULT && (encoded_size += PB._encoded_size(x.experimental_conditional_code_motion, 30)) x.meta_optimizer_iterations != var"RewriterConfig.NumIterationsType".DEFAULT_NUM_ITERS && (encoded_size += PB._encoded_size(x.meta_optimizer_iterations, 12)) diff --git a/src/protojl/tensorboard/tensorboard/rpc_options_pb.jl b/src/protojl/tensorboard/tensorboard/rpc_options_pb.jl index 75371850..aad1963e 100644 --- a/src/protojl/tensorboard/tensorboard/rpc_options_pb.jl +++ b/src/protojl/tensorboard/tensorboard/rpc_options_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.224 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/rpc_options.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/rpc_options.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export RPCOptions + struct RPCOptions use_rpc_for_inprocess_master::Bool compression_algorithm::String @@ -18,14 +19,14 @@ end PB.default_values(::Type{RPCOptions}) = (;use_rpc_for_inprocess_master = false, compression_algorithm = "", compression_level = zero(Int32), cache_rpc_response = false, disable_session_connection_sharing = false, num_channels_per_target = zero(Int32)) PB.field_numbers(::Type{RPCOptions}) = (;use_rpc_for_inprocess_master = 1, compression_algorithm = 2, compression_level = 3, cache_rpc_response = 4, disable_session_connection_sharing = 5, num_channels_per_target = 6) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RPCOptions}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RPCOptions}, _endpos::Int=0, _group::Bool=false) use_rpc_for_inprocess_master = false compression_algorithm = "" compression_level = zero(Int32) cache_rpc_response = false disable_session_connection_sharing = false num_channels_per_target = zero(Int32) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 use_rpc_for_inprocess_master = PB.decode(d, Bool) @@ -40,7 +41,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RPCOptions}) elseif field_number == 6 num_channels_per_target = PB.decode(d, Int32) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return RPCOptions(use_rpc_for_inprocess_master, compression_algorithm, compression_level, cache_rpc_response, disable_session_connection_sharing, num_channels_per_target) diff --git a/src/protojl/tensorboard/tensorboard/saved_object_graph_pb.jl b/src/protojl/tensorboard/tensorboard/saved_object_graph_pb.jl index 9e50ed4d..8e1cff7d 100644 --- a/src/protojl/tensorboard/tensorboard/saved_object_graph_pb.jl +++ b/src/protojl/tensorboard/tensorboard/saved_object_graph_pb.jl @@ -1,19 +1,14 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.775 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/saved_object_graph.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/saved_object_graph.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf using ProtoBuf.EnumX: @enumx export SavedAsset, CapturedTensor, SavedUserObject, SavedConcreteFunction, SaveableObject -export SavedResource, var"FunctionSpec.JitCompile", SavedConstant, FunctionSpec -export SavedBareConcreteFunction, SavedFunction, SavedObjectGraph, SavedVariable -export SavedObject - -# Abstract types to help resolve mutually recursive definitions -abstract type var"##AbstractSavedObjectGraph" end -abstract type var"##AbstractSavedVariable" end -abstract type var"##AbstractSavedObject" end +export SavedResource, SavedVariable, var"FunctionSpec.JitCompile", SavedConstant +export FunctionSpec, SavedBareConcreteFunction, SavedFunction, SavedObject +export SavedObjectGraph struct SavedAsset @@ -22,14 +17,14 @@ end PB.default_values(::Type{SavedAsset}) = (;asset_file_def_index = zero(Int32)) PB.field_numbers(::Type{SavedAsset}) = (;asset_file_def_index = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedAsset}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedAsset}, _endpos::Int=0, _group::Bool=false) asset_file_def_index = zero(Int32) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 asset_file_def_index = PB.decode(d, Int32) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SavedAsset(asset_file_def_index) @@ -53,17 +48,17 @@ end PB.default_values(::Type{CapturedTensor}) = (;name = "", concrete_function = "") PB.field_numbers(::Type{CapturedTensor}) = (;name = 1, concrete_function = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CapturedTensor}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CapturedTensor}, _endpos::Int=0, _group::Bool=false) name = "" concrete_function = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) elseif field_number == 2 concrete_function = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return CapturedTensor(name, concrete_function) @@ -90,11 +85,11 @@ end PB.default_values(::Type{SavedUserObject}) = (;identifier = "", version = nothing, metadata = "") PB.field_numbers(::Type{SavedUserObject}) = (;identifier = 1, version = 2, metadata = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedUserObject}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedUserObject}, _endpos::Int=0, _group::Bool=false) identifier = "" version = Ref{Union{Nothing,VersionDef}}(nothing) metadata = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 identifier = PB.decode(d, String) @@ -103,7 +98,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedUserObject}) elseif field_number == 3 metadata = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SavedUserObject(identifier, version[], metadata) @@ -132,11 +127,11 @@ end PB.default_values(::Type{SavedConcreteFunction}) = (;bound_inputs = Vector{Int32}(), canonicalized_input_signature = nothing, output_signature = nothing) PB.field_numbers(::Type{SavedConcreteFunction}) = (;bound_inputs = 2, canonicalized_input_signature = 3, output_signature = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedConcreteFunction}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedConcreteFunction}, _endpos::Int=0, _group::Bool=false) bound_inputs = PB.BufferedVector{Int32}() canonicalized_input_signature = Ref{Union{Nothing,StructuredValue}}(nothing) output_signature = Ref{Union{Nothing,StructuredValue}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 2 PB.decode!(d, wire_type, bound_inputs) @@ -145,7 +140,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedConcreteFunction}) elseif field_number == 4 PB.decode!(d, output_signature) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SavedConcreteFunction(bound_inputs[], canonicalized_input_signature[], output_signature[]) @@ -173,17 +168,17 @@ end PB.default_values(::Type{SaveableObject}) = (;save_function = zero(Int32), restore_function = zero(Int32)) PB.field_numbers(::Type{SaveableObject}) = (;save_function = 2, restore_function = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SaveableObject}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SaveableObject}, _endpos::Int=0, _group::Bool=false) save_function = zero(Int32) restore_function = zero(Int32) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 2 save_function = PB.decode(d, Int32) elseif field_number == 3 restore_function = PB.decode(d, Int32) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SaveableObject(save_function, restore_function) @@ -208,14 +203,14 @@ end PB.default_values(::Type{SavedResource}) = (;device = "") PB.field_numbers(::Type{SavedResource}) = (;device = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedResource}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedResource}, _endpos::Int=0, _group::Bool=false) device = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 device = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SavedResource(device) @@ -232,6 +227,78 @@ function PB._encoded_size(x::SavedResource) return encoded_size end +struct SavedVariable + dtype::var"#DataType".T + shape::Union{Nothing,TensorShapeProto} + trainable::Bool + synchronization::VariableSynchronization.T + aggregation::VariableAggregation.T + name::String + device::String + experimental_distributed_variable_components::Vector{SavedVariable} +end +PB.default_values(::Type{SavedVariable}) = (;dtype = var"#DataType".DT_INVALID, shape = nothing, trainable = false, synchronization = VariableSynchronization.VARIABLE_SYNCHRONIZATION_AUTO, aggregation = VariableAggregation.VARIABLE_AGGREGATION_NONE, name = "", device = "", experimental_distributed_variable_components = Vector{SavedVariable}()) +PB.field_numbers(::Type{SavedVariable}) = (;dtype = 1, shape = 2, trainable = 3, synchronization = 4, aggregation = 5, name = 6, device = 7, experimental_distributed_variable_components = 8) + +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedVariable}, _endpos::Int=0, _group::Bool=false) + dtype = var"#DataType".DT_INVALID + shape = Ref{Union{Nothing,TensorShapeProto}}(nothing) + trainable = false + synchronization = VariableSynchronization.VARIABLE_SYNCHRONIZATION_AUTO + aggregation = VariableAggregation.VARIABLE_AGGREGATION_NONE + name = "" + device = "" + experimental_distributed_variable_components = PB.BufferedVector{SavedVariable}() + while !PB.message_done(d, _endpos, _group) + field_number, wire_type = PB.decode_tag(d) + if field_number == 1 + dtype = PB.decode(d, var"#DataType".T) + elseif field_number == 2 + PB.decode!(d, shape) + elseif field_number == 3 + trainable = PB.decode(d, Bool) + elseif field_number == 4 + synchronization = PB.decode(d, VariableSynchronization.T) + elseif field_number == 5 + aggregation = PB.decode(d, VariableAggregation.T) + elseif field_number == 6 + name = PB.decode(d, String) + elseif field_number == 7 + device = PB.decode(d, String) + elseif field_number == 8 + PB.decode!(d, experimental_distributed_variable_components) + else + Base.skip(d, wire_type) + end + end + return SavedVariable(dtype, shape[], trainable, synchronization, aggregation, name, device, experimental_distributed_variable_components[]) +end + +function PB.encode(e::PB.AbstractProtoEncoder, x::SavedVariable) + initpos = position(e.io) + x.dtype != var"#DataType".DT_INVALID && PB.encode(e, 1, x.dtype) + !isnothing(x.shape) && PB.encode(e, 2, x.shape) + x.trainable != false && PB.encode(e, 3, x.trainable) + x.synchronization != VariableSynchronization.VARIABLE_SYNCHRONIZATION_AUTO && PB.encode(e, 4, x.synchronization) + x.aggregation != VariableAggregation.VARIABLE_AGGREGATION_NONE && PB.encode(e, 5, x.aggregation) + !isempty(x.name) && PB.encode(e, 6, x.name) + !isempty(x.device) && PB.encode(e, 7, x.device) + !isempty(x.experimental_distributed_variable_components) && PB.encode(e, 8, x.experimental_distributed_variable_components) + return position(e.io) - initpos +end +function PB._encoded_size(x::SavedVariable) + encoded_size = 0 + x.dtype != var"#DataType".DT_INVALID && (encoded_size += PB._encoded_size(x.dtype, 1)) + !isnothing(x.shape) && (encoded_size += PB._encoded_size(x.shape, 2)) + x.trainable != false && (encoded_size += PB._encoded_size(x.trainable, 3)) + x.synchronization != VariableSynchronization.VARIABLE_SYNCHRONIZATION_AUTO && (encoded_size += PB._encoded_size(x.synchronization, 4)) + x.aggregation != VariableAggregation.VARIABLE_AGGREGATION_NONE && (encoded_size += PB._encoded_size(x.aggregation, 5)) + !isempty(x.name) && (encoded_size += PB._encoded_size(x.name, 6)) + !isempty(x.device) && (encoded_size += PB._encoded_size(x.device, 7)) + !isempty(x.experimental_distributed_variable_components) && (encoded_size += PB._encoded_size(x.experimental_distributed_variable_components, 8)) + return encoded_size +end + @enumx var"FunctionSpec.JitCompile" DEFAULT=0 ON=1 OFF=2 struct SavedConstant @@ -240,14 +307,14 @@ end PB.default_values(::Type{SavedConstant}) = (;operation = "") PB.field_numbers(::Type{SavedConstant}) = (;operation = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedConstant}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedConstant}, _endpos::Int=0, _group::Bool=false) operation = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 operation = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SavedConstant(operation) @@ -274,12 +341,12 @@ PB.reserved_fields(::Type{FunctionSpec}) = (names = String[], numbers = Union{In PB.default_values(::Type{FunctionSpec}) = (;fullargspec = nothing, is_method = false, input_signature = nothing, jit_compile = var"FunctionSpec.JitCompile".DEFAULT) PB.field_numbers(::Type{FunctionSpec}) = (;fullargspec = 1, is_method = 2, input_signature = 5, jit_compile = 6) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:FunctionSpec}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:FunctionSpec}, _endpos::Int=0, _group::Bool=false) fullargspec = Ref{Union{Nothing,StructuredValue}}(nothing) is_method = false input_signature = Ref{Union{Nothing,StructuredValue}}(nothing) jit_compile = var"FunctionSpec.JitCompile".DEFAULT - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, fullargspec) @@ -290,7 +357,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:FunctionSpec}) elseif field_number == 6 jit_compile = PB.decode(d, var"FunctionSpec.JitCompile".T) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return FunctionSpec(fullargspec[], is_method, input_signature[], jit_compile) @@ -322,12 +389,12 @@ end PB.default_values(::Type{SavedBareConcreteFunction}) = (;concrete_function_name = "", argument_keywords = Vector{String}(), allowed_positional_arguments = zero(Int64), function_spec = nothing) PB.field_numbers(::Type{SavedBareConcreteFunction}) = (;concrete_function_name = 1, argument_keywords = 2, allowed_positional_arguments = 3, function_spec = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedBareConcreteFunction}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedBareConcreteFunction}, _endpos::Int=0, _group::Bool=false) concrete_function_name = "" argument_keywords = PB.BufferedVector{String}() allowed_positional_arguments = zero(Int64) function_spec = Ref{Union{Nothing,FunctionSpec}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 concrete_function_name = PB.decode(d, String) @@ -338,7 +405,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedBareConcreteFunctio elseif field_number == 4 PB.decode!(d, function_spec) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SavedBareConcreteFunction(concrete_function_name, argument_keywords[], allowed_positional_arguments, function_spec[]) @@ -368,17 +435,17 @@ end PB.default_values(::Type{SavedFunction}) = (;concrete_functions = Vector{String}(), function_spec = nothing) PB.field_numbers(::Type{SavedFunction}) = (;concrete_functions = 1, function_spec = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedFunction}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedFunction}, _endpos::Int=0, _group::Bool=false) concrete_functions = PB.BufferedVector{String}() function_spec = Ref{Union{Nothing,FunctionSpec}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, concrete_functions) elseif field_number == 2 PB.decode!(d, function_spec) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SavedFunction(concrete_functions[], function_spec[]) @@ -397,119 +464,11 @@ function PB._encoded_size(x::SavedFunction) return encoded_size end -struct SavedObjectGraph{T1<:Union{Nothing,var"##AbstractSavedObject"}} <: var"##AbstractSavedObjectGraph" - nodes::Vector{T1} - concrete_functions::Dict{String,SavedConcreteFunction} -end -PB.default_values(::Type{SavedObjectGraph}) = (;nodes = Vector{SavedObject}(), concrete_functions = Dict{String,SavedConcreteFunction}()) -PB.field_numbers(::Type{SavedObjectGraph}) = (;nodes = 1, concrete_functions = 2) - -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedObjectGraph}) - nodes = PB.BufferedVector{SavedObject}() - concrete_functions = Dict{String,SavedConcreteFunction}() - while !PB.message_done(d) - field_number, wire_type = PB.decode_tag(d) - if field_number == 1 - PB.decode!(d, nodes) - elseif field_number == 2 - PB.decode!(d, concrete_functions) - else - PB.skip(d, wire_type) - end - end - return SavedObjectGraph(nodes[], concrete_functions) -end - -function PB.encode(e::PB.AbstractProtoEncoder, x::SavedObjectGraph) - initpos = position(e.io) - !isempty(x.nodes) && PB.encode(e, 1, x.nodes) - !isempty(x.concrete_functions) && PB.encode(e, 2, x.concrete_functions) - return position(e.io) - initpos -end -function PB._encoded_size(x::SavedObjectGraph) - encoded_size = 0 - !isempty(x.nodes) && (encoded_size += PB._encoded_size(x.nodes, 1)) - !isempty(x.concrete_functions) && (encoded_size += PB._encoded_size(x.concrete_functions, 2)) - return encoded_size -end - -struct SavedVariable <: var"##AbstractSavedVariable" - dtype::var"#DataType".T - shape::Union{Nothing,TensorShapeProto} - trainable::Bool - synchronization::VariableSynchronization.T - aggregation::VariableAggregation.T - name::String - device::String - experimental_distributed_variable_components::Vector{<:SavedVariable} -end -PB.default_values(::Type{SavedVariable}) = (;dtype = var"#DataType".DT_INVALID, shape = nothing, trainable = false, synchronization = VariableSynchronization.VARIABLE_SYNCHRONIZATION_AUTO, aggregation = VariableAggregation.VARIABLE_AGGREGATION_NONE, name = "", device = "", experimental_distributed_variable_components = Vector{SavedVariable}()) -PB.field_numbers(::Type{SavedVariable}) = (;dtype = 1, shape = 2, trainable = 3, synchronization = 4, aggregation = 5, name = 6, device = 7, experimental_distributed_variable_components = 8) - -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedVariable}) - dtype = var"#DataType".DT_INVALID - shape = Ref{Union{Nothing,TensorShapeProto}}(nothing) - trainable = false - synchronization = VariableSynchronization.VARIABLE_SYNCHRONIZATION_AUTO - aggregation = VariableAggregation.VARIABLE_AGGREGATION_NONE - name = "" - device = "" - experimental_distributed_variable_components = PB.BufferedVector{SavedVariable}() - while !PB.message_done(d) - field_number, wire_type = PB.decode_tag(d) - if field_number == 1 - dtype = PB.decode(d, var"#DataType".T) - elseif field_number == 2 - PB.decode!(d, shape) - elseif field_number == 3 - trainable = PB.decode(d, Bool) - elseif field_number == 4 - synchronization = PB.decode(d, VariableSynchronization.T) - elseif field_number == 5 - aggregation = PB.decode(d, VariableAggregation.T) - elseif field_number == 6 - name = PB.decode(d, String) - elseif field_number == 7 - device = PB.decode(d, String) - elseif field_number == 8 - PB.decode!(d, experimental_distributed_variable_components) - else - PB.skip(d, wire_type) - end - end - return SavedVariable(dtype, shape[], trainable, synchronization, aggregation, name, device, experimental_distributed_variable_components[]) -end - -function PB.encode(e::PB.AbstractProtoEncoder, x::SavedVariable) - initpos = position(e.io) - x.dtype != var"#DataType".DT_INVALID && PB.encode(e, 1, x.dtype) - !isnothing(x.shape) && PB.encode(e, 2, x.shape) - x.trainable != false && PB.encode(e, 3, x.trainable) - x.synchronization != VariableSynchronization.VARIABLE_SYNCHRONIZATION_AUTO && PB.encode(e, 4, x.synchronization) - x.aggregation != VariableAggregation.VARIABLE_AGGREGATION_NONE && PB.encode(e, 5, x.aggregation) - !isempty(x.name) && PB.encode(e, 6, x.name) - !isempty(x.device) && PB.encode(e, 7, x.device) - !isempty(x.experimental_distributed_variable_components) && PB.encode(e, 8, x.experimental_distributed_variable_components) - return position(e.io) - initpos -end -function PB._encoded_size(x::SavedVariable) - encoded_size = 0 - x.dtype != var"#DataType".DT_INVALID && (encoded_size += PB._encoded_size(x.dtype, 1)) - !isnothing(x.shape) && (encoded_size += PB._encoded_size(x.shape, 2)) - x.trainable != false && (encoded_size += PB._encoded_size(x.trainable, 3)) - x.synchronization != VariableSynchronization.VARIABLE_SYNCHRONIZATION_AUTO && (encoded_size += PB._encoded_size(x.synchronization, 4)) - x.aggregation != VariableAggregation.VARIABLE_AGGREGATION_NONE && (encoded_size += PB._encoded_size(x.aggregation, 5)) - !isempty(x.name) && (encoded_size += PB._encoded_size(x.name, 6)) - !isempty(x.device) && (encoded_size += PB._encoded_size(x.device, 7)) - !isempty(x.experimental_distributed_variable_components) && (encoded_size += PB._encoded_size(x.experimental_distributed_variable_components, 8)) - return encoded_size -end - -struct SavedObject <: var"##AbstractSavedObject" +struct SavedObject children::Vector{var"TrackableObjectGraph.TrackableObject.ObjectReference"} dependencies::Vector{var"TrackableObjectGraph.TrackableObject.ObjectReference"} slot_variables::Vector{var"TrackableObjectGraph.TrackableObject.SlotVariableReference"} - kind::Union{Nothing,OneOf{<:Union{SavedUserObject,SavedAsset,SavedFunction,var"##AbstractSavedVariable",SavedBareConcreteFunction,SavedConstant,SavedResource,CapturedTensor}}} + kind::Union{Nothing,OneOf{<:Union{SavedUserObject,SavedAsset,SavedFunction,SavedVariable,SavedBareConcreteFunction,SavedConstant,SavedResource,CapturedTensor}}} saveable_objects::Dict{String,SaveableObject} registered_name::String serialized_user_proto::Union{Nothing,google.protobuf.var"#Any"} @@ -522,7 +481,7 @@ PB.oneof_field_types(::Type{SavedObject}) = (; PB.default_values(::Type{SavedObject}) = (;children = Vector{var"TrackableObjectGraph.TrackableObject.ObjectReference"}(), dependencies = Vector{var"TrackableObjectGraph.TrackableObject.ObjectReference"}(), slot_variables = Vector{var"TrackableObjectGraph.TrackableObject.SlotVariableReference"}(), user_object = nothing, asset = nothing, var"#function" = nothing, variable = nothing, bare_concrete_function = nothing, constant = nothing, resource = nothing, captured_tensor = nothing, saveable_objects = Dict{String,SaveableObject}(), registered_name = "", serialized_user_proto = nothing, registered_saver = "") PB.field_numbers(::Type{SavedObject}) = (;children = 1, dependencies = 15, slot_variables = 3, user_object = 4, asset = 5, var"#function" = 6, variable = 7, bare_concrete_function = 8, constant = 9, resource = 10, captured_tensor = 12, saveable_objects = 11, registered_name = 13, serialized_user_proto = 14, registered_saver = 16) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedObject}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedObject}, _endpos::Int=0, _group::Bool=false) children = PB.BufferedVector{var"TrackableObjectGraph.TrackableObject.ObjectReference"}() dependencies = PB.BufferedVector{var"TrackableObjectGraph.TrackableObject.ObjectReference"}() slot_variables = PB.BufferedVector{var"TrackableObjectGraph.TrackableObject.SlotVariableReference"}() @@ -531,7 +490,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedObject}) registered_name = "" serialized_user_proto = Ref{Union{Nothing,google.protobuf.var"#Any"}}(nothing) registered_saver = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, children) @@ -564,7 +523,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedObject}) elseif field_number == 16 registered_saver = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SavedObject(children[], dependencies[], slot_variables[], kind, saveable_objects, registered_name, serialized_user_proto[], registered_saver) @@ -628,3 +587,39 @@ function PB._encoded_size(x::SavedObject) !isempty(x.registered_saver) && (encoded_size += PB._encoded_size(x.registered_saver, 16)) return encoded_size end + +struct SavedObjectGraph + nodes::Vector{SavedObject} + concrete_functions::Dict{String,SavedConcreteFunction} +end +PB.default_values(::Type{SavedObjectGraph}) = (;nodes = Vector{SavedObject}(), concrete_functions = Dict{String,SavedConcreteFunction}()) +PB.field_numbers(::Type{SavedObjectGraph}) = (;nodes = 1, concrete_functions = 2) + +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SavedObjectGraph}, _endpos::Int=0, _group::Bool=false) + nodes = PB.BufferedVector{SavedObject}() + concrete_functions = Dict{String,SavedConcreteFunction}() + while !PB.message_done(d, _endpos, _group) + field_number, wire_type = PB.decode_tag(d) + if field_number == 1 + PB.decode!(d, nodes) + elseif field_number == 2 + PB.decode!(d, concrete_functions) + else + Base.skip(d, wire_type) + end + end + return SavedObjectGraph(nodes[], concrete_functions) +end + +function PB.encode(e::PB.AbstractProtoEncoder, x::SavedObjectGraph) + initpos = position(e.io) + !isempty(x.nodes) && PB.encode(e, 1, x.nodes) + !isempty(x.concrete_functions) && PB.encode(e, 2, x.concrete_functions) + return position(e.io) - initpos +end +function PB._encoded_size(x::SavedObjectGraph) + encoded_size = 0 + !isempty(x.nodes) && (encoded_size += PB._encoded_size(x.nodes, 1)) + !isempty(x.concrete_functions) && (encoded_size += PB._encoded_size(x.concrete_functions, 2)) + return encoded_size +end diff --git a/src/protojl/tensorboard/tensorboard/saver_pb.jl b/src/protojl/tensorboard/tensorboard/saver_pb.jl index 2b0b6587..3c22a1b8 100644 --- a/src/protojl/tensorboard/tensorboard/saver_pb.jl +++ b/src/protojl/tensorboard/tensorboard/saver_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:23.598 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/saver.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/saver.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export var"SaverDef.CheckpointFormatVersion", SaverDef + @enumx var"SaverDef.CheckpointFormatVersion" LEGACY=0 V1=1 V2=2 struct SaverDef @@ -21,7 +22,7 @@ end PB.default_values(::Type{SaverDef}) = (;filename_tensor_name = "", save_tensor_name = "", restore_op_name = "", max_to_keep = zero(Int32), sharded = false, keep_checkpoint_every_n_hours = zero(Float32), version = var"SaverDef.CheckpointFormatVersion".LEGACY) PB.field_numbers(::Type{SaverDef}) = (;filename_tensor_name = 1, save_tensor_name = 2, restore_op_name = 3, max_to_keep = 4, sharded = 5, keep_checkpoint_every_n_hours = 6, version = 7) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SaverDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SaverDef}, _endpos::Int=0, _group::Bool=false) filename_tensor_name = "" save_tensor_name = "" restore_op_name = "" @@ -29,7 +30,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SaverDef}) sharded = false keep_checkpoint_every_n_hours = zero(Float32) version = var"SaverDef.CheckpointFormatVersion".LEGACY - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 filename_tensor_name = PB.decode(d, String) @@ -46,7 +47,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SaverDef}) elseif field_number == 7 version = PB.decode(d, var"SaverDef.CheckpointFormatVersion".T) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SaverDef(filename_tensor_name, save_tensor_name, restore_op_name, max_to_keep, sharded, keep_checkpoint_every_n_hours, version) @@ -59,7 +60,7 @@ function PB.encode(e::PB.AbstractProtoEncoder, x::SaverDef) !isempty(x.restore_op_name) && PB.encode(e, 3, x.restore_op_name) x.max_to_keep != zero(Int32) && PB.encode(e, 4, x.max_to_keep) x.sharded != false && PB.encode(e, 5, x.sharded) - x.keep_checkpoint_every_n_hours != zero(Float32) && PB.encode(e, 6, x.keep_checkpoint_every_n_hours) + x.keep_checkpoint_every_n_hours !== zero(Float32) && PB.encode(e, 6, x.keep_checkpoint_every_n_hours) x.version != var"SaverDef.CheckpointFormatVersion".LEGACY && PB.encode(e, 7, x.version) return position(e.io) - initpos end @@ -70,7 +71,7 @@ function PB._encoded_size(x::SaverDef) !isempty(x.restore_op_name) && (encoded_size += PB._encoded_size(x.restore_op_name, 3)) x.max_to_keep != zero(Int32) && (encoded_size += PB._encoded_size(x.max_to_keep, 4)) x.sharded != false && (encoded_size += PB._encoded_size(x.sharded, 5)) - x.keep_checkpoint_every_n_hours != zero(Float32) && (encoded_size += PB._encoded_size(x.keep_checkpoint_every_n_hours, 6)) + x.keep_checkpoint_every_n_hours !== zero(Float32) && (encoded_size += PB._encoded_size(x.keep_checkpoint_every_n_hours, 6)) x.version != var"SaverDef.CheckpointFormatVersion".LEGACY && (encoded_size += PB._encoded_size(x.version, 7)) return encoded_size end diff --git a/src/protojl/tensorboard/tensorboard/step_stats_pb.jl b/src/protojl/tensorboard/tensorboard/step_stats_pb.jl index c0243376..4a5d2bff 100644 --- a/src/protojl/tensorboard/tensorboard/step_stats_pb.jl +++ b/src/protojl/tensorboard/tensorboard/step_stats_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.424 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/step_stats.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/step_stats.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -8,6 +8,7 @@ using ProtoBuf.EnumX: @enumx export MemoryStats, AllocationRecord, NodeOutput, AllocatorMemoryUsed, NodeExecStats export DeviceStepStats, StepStats + struct MemoryStats temp_memory_size::Int64 persistent_memory_size::Int64 @@ -19,14 +20,14 @@ end PB.default_values(::Type{MemoryStats}) = (;temp_memory_size = zero(Int64), persistent_memory_size = zero(Int64), persistent_tensor_alloc_ids = Vector{Int64}(), device_temp_memory_size = zero(Int64), device_persistent_memory_size = zero(Int64), device_persistent_tensor_alloc_ids = Vector{Int64}()) PB.field_numbers(::Type{MemoryStats}) = (;temp_memory_size = 1, persistent_memory_size = 3, persistent_tensor_alloc_ids = 5, device_temp_memory_size = 2, device_persistent_memory_size = 4, device_persistent_tensor_alloc_ids = 6) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MemoryStats}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MemoryStats}, _endpos::Int=0, _group::Bool=false) temp_memory_size = zero(Int64) persistent_memory_size = zero(Int64) persistent_tensor_alloc_ids = PB.BufferedVector{Int64}() device_temp_memory_size = zero(Int64) device_persistent_memory_size = zero(Int64) device_persistent_tensor_alloc_ids = PB.BufferedVector{Int64}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 temp_memory_size = PB.decode(d, Int64) @@ -41,7 +42,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:MemoryStats}) elseif field_number == 6 PB.decode!(d, wire_type, device_persistent_tensor_alloc_ids) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return MemoryStats(temp_memory_size, persistent_memory_size, persistent_tensor_alloc_ids[], device_temp_memory_size, device_persistent_memory_size, device_persistent_tensor_alloc_ids[]) @@ -75,17 +76,17 @@ end PB.default_values(::Type{AllocationRecord}) = (;alloc_micros = zero(Int64), alloc_bytes = zero(Int64)) PB.field_numbers(::Type{AllocationRecord}) = (;alloc_micros = 1, alloc_bytes = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:AllocationRecord}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:AllocationRecord}, _endpos::Int=0, _group::Bool=false) alloc_micros = zero(Int64) alloc_bytes = zero(Int64) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 alloc_micros = PB.decode(d, Int64) elseif field_number == 2 alloc_bytes = PB.decode(d, Int64) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return AllocationRecord(alloc_micros, alloc_bytes) @@ -111,17 +112,17 @@ end PB.default_values(::Type{NodeOutput}) = (;slot = zero(Int32), tensor_description = nothing) PB.field_numbers(::Type{NodeOutput}) = (;slot = 1, tensor_description = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:NodeOutput}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:NodeOutput}, _endpos::Int=0, _group::Bool=false) slot = zero(Int32) tensor_description = Ref{Union{Nothing,TensorDescription}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 slot = PB.decode(d, Int32) elseif field_number == 3 PB.decode!(d, tensor_description) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return NodeOutput(slot, tensor_description[]) @@ -151,14 +152,14 @@ end PB.default_values(::Type{AllocatorMemoryUsed}) = (;allocator_name = "", total_bytes = zero(Int64), peak_bytes = zero(Int64), live_bytes = zero(Int64), allocation_records = Vector{AllocationRecord}(), allocator_bytes_in_use = zero(Int64)) PB.field_numbers(::Type{AllocatorMemoryUsed}) = (;allocator_name = 1, total_bytes = 2, peak_bytes = 3, live_bytes = 4, allocation_records = 6, allocator_bytes_in_use = 5) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:AllocatorMemoryUsed}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:AllocatorMemoryUsed}, _endpos::Int=0, _group::Bool=false) allocator_name = "" total_bytes = zero(Int64) peak_bytes = zero(Int64) live_bytes = zero(Int64) allocation_records = PB.BufferedVector{AllocationRecord}() allocator_bytes_in_use = zero(Int64) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 allocator_name = PB.decode(d, String) @@ -173,7 +174,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:AllocatorMemoryUsed}) elseif field_number == 5 allocator_bytes_in_use = PB.decode(d, Int64) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return AllocatorMemoryUsed(allocator_name, total_bytes, peak_bytes, live_bytes, allocation_records[], allocator_bytes_in_use) @@ -222,7 +223,7 @@ end PB.default_values(::Type{NodeExecStats}) = (;node_name = "", all_start_micros = zero(Int64), op_start_rel_micros = zero(Int64), op_end_rel_micros = zero(Int64), all_end_rel_micros = zero(Int64), memory = Vector{AllocatorMemoryUsed}(), output = Vector{NodeOutput}(), timeline_label = "", scheduled_micros = zero(Int64), thread_id = zero(UInt32), referenced_tensor = Vector{AllocationDescription}(), memory_stats = nothing, all_start_nanos = zero(Int64), op_start_rel_nanos = zero(Int64), op_end_rel_nanos = zero(Int64), all_end_rel_nanos = zero(Int64), scheduled_nanos = zero(Int64)) PB.field_numbers(::Type{NodeExecStats}) = (;node_name = 1, all_start_micros = 2, op_start_rel_micros = 3, op_end_rel_micros = 4, all_end_rel_micros = 5, memory = 6, output = 7, timeline_label = 8, scheduled_micros = 9, thread_id = 10, referenced_tensor = 11, memory_stats = 12, all_start_nanos = 13, op_start_rel_nanos = 14, op_end_rel_nanos = 15, all_end_rel_nanos = 16, scheduled_nanos = 17) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:NodeExecStats}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:NodeExecStats}, _endpos::Int=0, _group::Bool=false) node_name = "" all_start_micros = zero(Int64) op_start_rel_micros = zero(Int64) @@ -240,7 +241,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:NodeExecStats}) op_end_rel_nanos = zero(Int64) all_end_rel_nanos = zero(Int64) scheduled_nanos = zero(Int64) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 node_name = PB.decode(d, String) @@ -277,7 +278,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:NodeExecStats}) elseif field_number == 17 scheduled_nanos = PB.decode(d, Int64) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return NodeExecStats(node_name, all_start_micros, op_start_rel_micros, op_end_rel_micros, all_end_rel_micros, memory[], output[], timeline_label, scheduled_micros, thread_id, referenced_tensor[], memory_stats[], all_start_nanos, op_start_rel_nanos, op_end_rel_nanos, all_end_rel_nanos, scheduled_nanos) @@ -334,11 +335,11 @@ end PB.default_values(::Type{DeviceStepStats}) = (;device = "", node_stats = Vector{NodeExecStats}(), thread_names = Dict{UInt32,String}()) PB.field_numbers(::Type{DeviceStepStats}) = (;device = 1, node_stats = 2, thread_names = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DeviceStepStats}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DeviceStepStats}, _endpos::Int=0, _group::Bool=false) device = "" node_stats = PB.BufferedVector{NodeExecStats}() thread_names = Dict{UInt32,String}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 device = PB.decode(d, String) @@ -347,7 +348,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DeviceStepStats}) elseif field_number == 3 PB.decode!(d, thread_names) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return DeviceStepStats(device, node_stats[], thread_names) @@ -374,14 +375,14 @@ end PB.default_values(::Type{StepStats}) = (;dev_stats = Vector{DeviceStepStats}()) PB.field_numbers(::Type{StepStats}) = (;dev_stats = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:StepStats}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:StepStats}, _endpos::Int=0, _group::Bool=false) dev_stats = PB.BufferedVector{DeviceStepStats}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, dev_stats) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return StepStats(dev_stats[]) diff --git a/src/protojl/tensorboard/tensorboard/struct_tb_pb.jl b/src/protojl/tensorboard/tensorboard/struct_tb_pb.jl index 02cb46ef..bb7b3551 100644 --- a/src/protojl/tensorboard/tensorboard/struct_tb_pb.jl +++ b/src/protojl/tensorboard/tensorboard/struct_tb_pb.jl @@ -1,30 +1,28 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.578 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/struct_tb.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/struct_tb.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf using ProtoBuf.EnumX: @enumx export NoneValue, var"TypeSpecProto.TypeSpecClass", BoundedTensorSpecProto, TensorSpecProto -export ListValue, TypeSpecProto, NamedTupleValue, PairValue, DictValue, StructuredValue -export TupleValue +export DictValue, ListValue, NamedTupleValue, PairValue, TupleValue, TypeSpecProto +export StructuredValue +abstract type var"##Abstract#ListValue" end +abstract type var"##Abstract#TypeSpecProto" end +abstract type var"##Abstract#NamedTupleValue" end +abstract type var"##Abstract#PairValue" end +abstract type var"##Abstract#DictValue" end +abstract type var"##Abstract#StructuredValue" end +abstract type var"##Abstract#TupleValue" end -# Abstract types to help resolve mutually recursive definitions -abstract type var"##AbstractListValue" end -abstract type var"##AbstractTypeSpecProto" end -abstract type var"##AbstractNamedTupleValue" end -abstract type var"##AbstractPairValue" end -abstract type var"##AbstractDictValue" end -abstract type var"##AbstractStructuredValue" end -abstract type var"##AbstractTupleValue" end +struct NoneValue end -struct NoneValue end - -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:NoneValue}) - while !PB.message_done(d) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:NoneValue}, _endpos::Int=0, _group::Bool=false) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) - PB.skip(d, wire_type) + Base.skip(d, wire_type) end return NoneValue() end @@ -51,13 +49,13 @@ end PB.default_values(::Type{BoundedTensorSpecProto}) = (;name = "", shape = nothing, dtype = var"#DataType".DT_INVALID, minimum = nothing, maximum = nothing) PB.field_numbers(::Type{BoundedTensorSpecProto}) = (;name = 1, shape = 2, dtype = 3, minimum = 4, maximum = 5) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:BoundedTensorSpecProto}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:BoundedTensorSpecProto}, _endpos::Int=0, _group::Bool=false) name = "" shape = Ref{Union{Nothing,TensorShapeProto}}(nothing) dtype = var"#DataType".DT_INVALID minimum = Ref{Union{Nothing,TensorProto}}(nothing) maximum = Ref{Union{Nothing,TensorProto}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) @@ -70,7 +68,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:BoundedTensorSpecProto}) elseif field_number == 5 PB.decode!(d, maximum) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return BoundedTensorSpecProto(name, shape[], dtype, minimum[], maximum[]) @@ -103,11 +101,11 @@ end PB.default_values(::Type{TensorSpecProto}) = (;name = "", shape = nothing, dtype = var"#DataType".DT_INVALID) PB.field_numbers(::Type{TensorSpecProto}) = (;name = 1, shape = 2, dtype = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorSpecProto}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorSpecProto}, _endpos::Int=0, _group::Bool=false) name = "" shape = Ref{Union{Nothing,TensorShapeProto}}(nothing) dtype = var"#DataType".DT_INVALID - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) @@ -116,7 +114,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorSpecProto}) elseif field_number == 3 dtype = PB.decode(d, var"#DataType".T) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return TensorSpecProto(name, shape[], dtype) @@ -137,102 +135,111 @@ function PB._encoded_size(x::TensorSpecProto) return encoded_size end -struct ListValue{T1<:Union{Nothing,var"##AbstractStructuredValue"}} <: var"##AbstractListValue" +# Stub definitions for cyclic types +struct var"##Stub#DictValue"{T1<:var"##Abstract#StructuredValue"} <: var"##Abstract#DictValue" + fields::Dict{String,T1} +end + +struct var"##Stub#ListValue"{T1<:var"##Abstract#StructuredValue"} <: var"##Abstract#ListValue" values::Vector{T1} end -PB.default_values(::Type{ListValue}) = (;values = Vector{StructuredValue}()) -PB.field_numbers(::Type{ListValue}) = (;values = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ListValue}) - values = PB.BufferedVector{StructuredValue}() - while !PB.message_done(d) +struct var"##Stub#NamedTupleValue"{T1<:var"##Abstract#PairValue"} <: var"##Abstract#NamedTupleValue" + name::String + values::Vector{T1} +end + +struct var"##Stub#PairValue"{T1<:var"##Abstract#StructuredValue"} <: var"##Abstract#PairValue" + key::String + value::Union{Nothing,T1} +end + +struct var"##Stub#TupleValue"{T1<:var"##Abstract#StructuredValue"} <: var"##Abstract#TupleValue" + values::Vector{T1} +end + +struct var"##Stub#TypeSpecProto"{T1<:var"##Abstract#StructuredValue"} <: var"##Abstract#TypeSpecProto" + type_spec_class::var"TypeSpecProto.TypeSpecClass".T + type_state::Union{Nothing,T1} + type_spec_class_name::String + num_flat_components::Int32 +end + +struct var"##Stub#StructuredValue" <: var"##Abstract#StructuredValue" + kind::Union{Nothing,OneOf{<:Union{NoneValue,Float64,Int64,String,Bool,TensorShapeProto,var"#DataType".T,TensorSpecProto,var"##Stub#TypeSpecProto"{var"##Stub#StructuredValue"},BoundedTensorSpecProto,var"##Stub#ListValue"{var"##Stub#StructuredValue"},var"##Stub#TupleValue"{var"##Stub#StructuredValue"},var"##Stub#DictValue"{var"##Stub#StructuredValue"},var"##Stub#NamedTupleValue"{var"##Stub#PairValue"{var"##Stub#StructuredValue"}},TensorProto}}} +end + +const DictValue = var"##Stub#DictValue"{var"##Stub#StructuredValue"} +PB.default_values(::Type{DictValue}) = (;fields = Dict{String,StructuredValue}()) +PB.field_numbers(::Type{DictValue}) = (;fields = 1) + +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DictValue}, _endpos::Int=0, _group::Bool=false) + fields = Dict{String,StructuredValue}() + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 - PB.decode!(d, values) + PB.decode!(d, fields) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return ListValue(values[]) + return DictValue(fields) end -function PB.encode(e::PB.AbstractProtoEncoder, x::ListValue) +function PB.encode(e::PB.AbstractProtoEncoder, x::DictValue) initpos = position(e.io) - !isempty(x.values) && PB.encode(e, 1, x.values) + !isempty(x.fields) && PB.encode(e, 1, x.fields) return position(e.io) - initpos end -function PB._encoded_size(x::ListValue) +function PB._encoded_size(x::DictValue) encoded_size = 0 - !isempty(x.values) && (encoded_size += PB._encoded_size(x.values, 1)) + !isempty(x.fields) && (encoded_size += PB._encoded_size(x.fields, 1)) return encoded_size end -struct TypeSpecProto{T1<:Union{Nothing,var"##AbstractStructuredValue"}} <: var"##AbstractTypeSpecProto" - type_spec_class::var"TypeSpecProto.TypeSpecClass".T - type_state::T1 - type_spec_class_name::String - num_flat_components::Int32 -end -PB.default_values(::Type{TypeSpecProto}) = (;type_spec_class = var"TypeSpecProto.TypeSpecClass".UNKNOWN, type_state = nothing, type_spec_class_name = "", num_flat_components = zero(Int32)) -PB.field_numbers(::Type{TypeSpecProto}) = (;type_spec_class = 1, type_state = 2, type_spec_class_name = 3, num_flat_components = 4) +const ListValue = var"##Stub#ListValue"{var"##Stub#StructuredValue"} +PB.default_values(::Type{ListValue}) = (;values = Vector{StructuredValue}()) +PB.field_numbers(::Type{ListValue}) = (;values = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TypeSpecProto}) - type_spec_class = var"TypeSpecProto.TypeSpecClass".UNKNOWN - type_state = Ref{Union{Nothing,StructuredValue}}(nothing) - type_spec_class_name = "" - num_flat_components = zero(Int32) - while !PB.message_done(d) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ListValue}, _endpos::Int=0, _group::Bool=false) + values = PB.BufferedVector{StructuredValue}() + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 - type_spec_class = PB.decode(d, var"TypeSpecProto.TypeSpecClass".T) - elseif field_number == 2 - PB.decode!(d, type_state) - elseif field_number == 3 - type_spec_class_name = PB.decode(d, String) - elseif field_number == 4 - num_flat_components = PB.decode(d, Int32) + PB.decode!(d, values) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return TypeSpecProto(type_spec_class, type_state[], type_spec_class_name, num_flat_components) + return ListValue(values[]) end -function PB.encode(e::PB.AbstractProtoEncoder, x::TypeSpecProto) +function PB.encode(e::PB.AbstractProtoEncoder, x::ListValue) initpos = position(e.io) - x.type_spec_class != var"TypeSpecProto.TypeSpecClass".UNKNOWN && PB.encode(e, 1, x.type_spec_class) - !isnothing(x.type_state) && PB.encode(e, 2, x.type_state) - !isempty(x.type_spec_class_name) && PB.encode(e, 3, x.type_spec_class_name) - x.num_flat_components != zero(Int32) && PB.encode(e, 4, x.num_flat_components) + !isempty(x.values) && PB.encode(e, 1, x.values) return position(e.io) - initpos end -function PB._encoded_size(x::TypeSpecProto) +function PB._encoded_size(x::ListValue) encoded_size = 0 - x.type_spec_class != var"TypeSpecProto.TypeSpecClass".UNKNOWN && (encoded_size += PB._encoded_size(x.type_spec_class, 1)) - !isnothing(x.type_state) && (encoded_size += PB._encoded_size(x.type_state, 2)) - !isempty(x.type_spec_class_name) && (encoded_size += PB._encoded_size(x.type_spec_class_name, 3)) - x.num_flat_components != zero(Int32) && (encoded_size += PB._encoded_size(x.num_flat_components, 4)) + !isempty(x.values) && (encoded_size += PB._encoded_size(x.values, 1)) return encoded_size end -struct NamedTupleValue{T1<:Union{Nothing,var"##AbstractPairValue"}} <: var"##AbstractNamedTupleValue" - name::String - values::Vector{T1} -end +const NamedTupleValue = var"##Stub#NamedTupleValue"{var"##Stub#PairValue"{var"##Stub#StructuredValue"}} PB.default_values(::Type{NamedTupleValue}) = (;name = "", values = Vector{PairValue}()) PB.field_numbers(::Type{NamedTupleValue}) = (;name = 1, values = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:NamedTupleValue}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:NamedTupleValue}, _endpos::Int=0, _group::Bool=false) name = "" values = PB.BufferedVector{PairValue}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) elseif field_number == 2 PB.decode!(d, values) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return NamedTupleValue(name, values[]) @@ -251,24 +258,21 @@ function PB._encoded_size(x::NamedTupleValue) return encoded_size end -struct PairValue{T1<:Union{Nothing,var"##AbstractStructuredValue"}} <: var"##AbstractPairValue" - key::String - value::T1 -end +const PairValue = var"##Stub#PairValue"{var"##Stub#StructuredValue"} PB.default_values(::Type{PairValue}) = (;key = "", value = nothing) PB.field_numbers(::Type{PairValue}) = (;key = 1, value = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:PairValue}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:PairValue}, _endpos::Int=0, _group::Bool=false) key = "" value = Ref{Union{Nothing,StructuredValue}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 key = PB.decode(d, String) elseif field_number == 2 PB.decode!(d, value) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return PairValue(key, value[]) @@ -287,48 +291,87 @@ function PB._encoded_size(x::PairValue) return encoded_size end -struct DictValue{T1<:Union{Nothing,var"##AbstractStructuredValue"}} <: var"##AbstractDictValue" - fields::Dict{String,T1} -end -PB.default_values(::Type{DictValue}) = (;fields = Dict{String,StructuredValue}()) -PB.field_numbers(::Type{DictValue}) = (;fields = 1) +const TupleValue = var"##Stub#TupleValue"{var"##Stub#StructuredValue"} +PB.default_values(::Type{TupleValue}) = (;values = Vector{StructuredValue}()) +PB.field_numbers(::Type{TupleValue}) = (;values = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:DictValue}) - fields = Dict{String,StructuredValue}() - while !PB.message_done(d) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TupleValue}, _endpos::Int=0, _group::Bool=false) + values = PB.BufferedVector{StructuredValue}() + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 - PB.decode!(d, fields) + PB.decode!(d, values) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return DictValue(fields) + return TupleValue(values[]) end -function PB.encode(e::PB.AbstractProtoEncoder, x::DictValue) +function PB.encode(e::PB.AbstractProtoEncoder, x::TupleValue) initpos = position(e.io) - !isempty(x.fields) && PB.encode(e, 1, x.fields) + !isempty(x.values) && PB.encode(e, 1, x.values) return position(e.io) - initpos end -function PB._encoded_size(x::DictValue) +function PB._encoded_size(x::TupleValue) encoded_size = 0 - !isempty(x.fields) && (encoded_size += PB._encoded_size(x.fields, 1)) + !isempty(x.values) && (encoded_size += PB._encoded_size(x.values, 1)) return encoded_size end -struct StructuredValue <: var"##AbstractStructuredValue" - kind::Union{Nothing,OneOf{<:Union{NoneValue,Float64,Int64,String,Bool,TensorShapeProto,var"#DataType".T,TensorSpecProto,var"##AbstractTypeSpecProto",BoundedTensorSpecProto,var"##AbstractListValue",var"##AbstractTupleValue",var"##AbstractDictValue",var"##AbstractNamedTupleValue",TensorProto}}} +const TypeSpecProto = var"##Stub#TypeSpecProto"{var"##Stub#StructuredValue"} +PB.default_values(::Type{TypeSpecProto}) = (;type_spec_class = var"TypeSpecProto.TypeSpecClass".UNKNOWN, type_state = nothing, type_spec_class_name = "", num_flat_components = zero(Int32)) +PB.field_numbers(::Type{TypeSpecProto}) = (;type_spec_class = 1, type_state = 2, type_spec_class_name = 3, num_flat_components = 4) + +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TypeSpecProto}, _endpos::Int=0, _group::Bool=false) + type_spec_class = var"TypeSpecProto.TypeSpecClass".UNKNOWN + type_state = Ref{Union{Nothing,StructuredValue}}(nothing) + type_spec_class_name = "" + num_flat_components = zero(Int32) + while !PB.message_done(d, _endpos, _group) + field_number, wire_type = PB.decode_tag(d) + if field_number == 1 + type_spec_class = PB.decode(d, var"TypeSpecProto.TypeSpecClass".T) + elseif field_number == 2 + PB.decode!(d, type_state) + elseif field_number == 3 + type_spec_class_name = PB.decode(d, String) + elseif field_number == 4 + num_flat_components = PB.decode(d, Int32) + else + Base.skip(d, wire_type) + end + end + return TypeSpecProto(type_spec_class, type_state[], type_spec_class_name, num_flat_components) +end + +function PB.encode(e::PB.AbstractProtoEncoder, x::TypeSpecProto) + initpos = position(e.io) + x.type_spec_class != var"TypeSpecProto.TypeSpecClass".UNKNOWN && PB.encode(e, 1, x.type_spec_class) + !isnothing(x.type_state) && PB.encode(e, 2, x.type_state) + !isempty(x.type_spec_class_name) && PB.encode(e, 3, x.type_spec_class_name) + x.num_flat_components != zero(Int32) && PB.encode(e, 4, x.num_flat_components) + return position(e.io) - initpos end +function PB._encoded_size(x::TypeSpecProto) + encoded_size = 0 + x.type_spec_class != var"TypeSpecProto.TypeSpecClass".UNKNOWN && (encoded_size += PB._encoded_size(x.type_spec_class, 1)) + !isnothing(x.type_state) && (encoded_size += PB._encoded_size(x.type_state, 2)) + !isempty(x.type_spec_class_name) && (encoded_size += PB._encoded_size(x.type_spec_class_name, 3)) + x.num_flat_components != zero(Int32) && (encoded_size += PB._encoded_size(x.num_flat_components, 4)) + return encoded_size +end + +const StructuredValue = var"##Stub#StructuredValue" PB.oneof_field_types(::Type{StructuredValue}) = (; - kind = (;none_value=NoneValue, float64_value=Float64, int64_value=Int64, string_value=String, bool_value=Bool, tensor_shape_value=TensorShapeProto, tensor_dtype_value=var"#DataType".T, tensor_spec_value=TensorSpecProto, type_spec_value=TypeSpecProto, bounded_tensor_spec_value=BoundedTensorSpecProto, list_value=ListValue, tuple_value=TupleValue, dict_value=DictValue, named_tuple_value=NamedTupleValue, tensor_value=TensorProto), + kind = (;none_value=NoneValue, float64_value=Float64, int64_value=Int64, string_value=String, bool_value=Bool, tensor_shape_value=TensorShapeProto, tensor_dtype_value=var"#DataType".T, tensor_spec_value=TensorSpecProto, type_spec_value=TypeSpecProto, bounded_tensor_spec_value=BoundedTensorSpecProto, list_value=ListValue, tuple_value=TupleValue, dict_value=DictValue, named_tuple_value=NamedTupleValue, tensor_value=TensorProto, numpy_value=TensorProto), ) -PB.default_values(::Type{StructuredValue}) = (;none_value = nothing, float64_value = zero(Float64), int64_value = zero(Int64), string_value = "", bool_value = false, tensor_shape_value = nothing, tensor_dtype_value = var"#DataType".DT_INVALID, tensor_spec_value = nothing, type_spec_value = nothing, bounded_tensor_spec_value = nothing, list_value = nothing, tuple_value = nothing, dict_value = nothing, named_tuple_value = nothing, tensor_value = nothing) -PB.field_numbers(::Type{StructuredValue}) = (;none_value = 1, float64_value = 11, int64_value = 12, string_value = 13, bool_value = 14, tensor_shape_value = 31, tensor_dtype_value = 32, tensor_spec_value = 33, type_spec_value = 34, bounded_tensor_spec_value = 35, list_value = 51, tuple_value = 52, dict_value = 53, named_tuple_value = 54, tensor_value = 55) +PB.default_values(::Type{StructuredValue}) = (;none_value = nothing, float64_value = zero(Float64), int64_value = zero(Int64), string_value = "", bool_value = false, tensor_shape_value = nothing, tensor_dtype_value = var"#DataType".DT_INVALID, tensor_spec_value = nothing, type_spec_value = nothing, bounded_tensor_spec_value = nothing, list_value = nothing, tuple_value = nothing, dict_value = nothing, named_tuple_value = nothing, tensor_value = nothing, numpy_value = nothing) +PB.field_numbers(::Type{StructuredValue}) = (;none_value = 1, float64_value = 11, int64_value = 12, string_value = 13, bool_value = 14, tensor_shape_value = 31, tensor_dtype_value = 32, tensor_spec_value = 33, type_spec_value = 34, bounded_tensor_spec_value = 35, list_value = 51, tuple_value = 52, dict_value = 53, named_tuple_value = 54, tensor_value = 55, numpy_value = 56) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:StructuredValue}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:StructuredValue}, _endpos::Int=0, _group::Bool=false) kind = nothing - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 kind = OneOf(:none_value, PB.decode(d, Ref{NoneValue})) @@ -360,8 +403,10 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:StructuredValue}) kind = OneOf(:named_tuple_value, PB.decode(d, Ref{NamedTupleValue})) elseif field_number == 55 kind = OneOf(:tensor_value, PB.decode(d, Ref{TensorProto})) + elseif field_number == 56 + kind = OneOf(:numpy_value, PB.decode(d, Ref{TensorProto})) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return StructuredValue(kind) @@ -400,6 +445,8 @@ function PB.encode(e::PB.AbstractProtoEncoder, x::StructuredValue) PB.encode(e, 54, x.kind[]::NamedTupleValue) elseif x.kind.name === :tensor_value PB.encode(e, 55, x.kind[]::TensorProto) + elseif x.kind.name === :numpy_value + PB.encode(e, 56, x.kind[]::TensorProto) end return position(e.io) - initpos end @@ -436,36 +483,8 @@ function PB._encoded_size(x::StructuredValue) encoded_size += PB._encoded_size(x.kind[]::NamedTupleValue, 54) elseif x.kind.name === :tensor_value encoded_size += PB._encoded_size(x.kind[]::TensorProto, 55) + elseif x.kind.name === :numpy_value + encoded_size += PB._encoded_size(x.kind[]::TensorProto, 56) end return encoded_size end - -struct TupleValue <: var"##AbstractTupleValue" - values::Vector{<:StructuredValue} -end -PB.default_values(::Type{TupleValue}) = (;values = Vector{StructuredValue}()) -PB.field_numbers(::Type{TupleValue}) = (;values = 1) - -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TupleValue}) - values = PB.BufferedVector{StructuredValue}() - while !PB.message_done(d) - field_number, wire_type = PB.decode_tag(d) - if field_number == 1 - PB.decode!(d, values) - else - PB.skip(d, wire_type) - end - end - return TupleValue(values[]) -end - -function PB.encode(e::PB.AbstractProtoEncoder, x::TupleValue) - initpos = position(e.io) - !isempty(x.values) && PB.encode(e, 1, x.values) - return position(e.io) - initpos -end -function PB._encoded_size(x::TupleValue) - encoded_size = 0 - !isempty(x.values) && (encoded_size += PB._encoded_size(x.values, 1)) - return encoded_size -end diff --git a/src/protojl/tensorboard/tensorboard/summary_pb.jl b/src/protojl/tensorboard/tensorboard/summary_pb.jl index c1742e67..869c3a98 100644 --- a/src/protojl/tensorboard/tensorboard/summary_pb.jl +++ b/src/protojl/tensorboard/tensorboard/summary_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.774 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/summary.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/summary.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -8,6 +8,7 @@ using ProtoBuf.EnumX: @enumx export var"SummaryMetadata.PluginData", DataClass, var"Summary.Audio", var"Summary.Image" export SummaryDescription, SummaryMetadata, var"Summary.Value", Summary + struct var"SummaryMetadata.PluginData" plugin_name::String content::Vector{UInt8} @@ -15,17 +16,17 @@ end PB.default_values(::Type{var"SummaryMetadata.PluginData"}) = (;plugin_name = "", content = UInt8[]) PB.field_numbers(::Type{var"SummaryMetadata.PluginData"}) = (;plugin_name = 1, content = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"SummaryMetadata.PluginData"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"SummaryMetadata.PluginData"}, _endpos::Int=0, _group::Bool=false) plugin_name = "" content = UInt8[] - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 plugin_name = PB.decode(d, String) elseif field_number == 2 content = PB.decode(d, Vector{UInt8}) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"SummaryMetadata.PluginData"(plugin_name, content) @@ -56,13 +57,13 @@ end PB.default_values(::Type{var"Summary.Audio"}) = (;sample_rate = zero(Float32), num_channels = zero(Int64), length_frames = zero(Int64), encoded_audio_string = UInt8[], content_type = "") PB.field_numbers(::Type{var"Summary.Audio"}) = (;sample_rate = 1, num_channels = 2, length_frames = 3, encoded_audio_string = 4, content_type = 5) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"Summary.Audio"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"Summary.Audio"}, _endpos::Int=0, _group::Bool=false) sample_rate = zero(Float32) num_channels = zero(Int64) length_frames = zero(Int64) encoded_audio_string = UInt8[] content_type = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 sample_rate = PB.decode(d, Float32) @@ -75,7 +76,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"Summary.Audio"}) elseif field_number == 5 content_type = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"Summary.Audio"(sample_rate, num_channels, length_frames, encoded_audio_string, content_type) @@ -83,7 +84,7 @@ end function PB.encode(e::PB.AbstractProtoEncoder, x::var"Summary.Audio") initpos = position(e.io) - x.sample_rate != zero(Float32) && PB.encode(e, 1, x.sample_rate) + x.sample_rate !== zero(Float32) && PB.encode(e, 1, x.sample_rate) x.num_channels != zero(Int64) && PB.encode(e, 2, x.num_channels) x.length_frames != zero(Int64) && PB.encode(e, 3, x.length_frames) !isempty(x.encoded_audio_string) && PB.encode(e, 4, x.encoded_audio_string) @@ -92,7 +93,7 @@ function PB.encode(e::PB.AbstractProtoEncoder, x::var"Summary.Audio") end function PB._encoded_size(x::var"Summary.Audio") encoded_size = 0 - x.sample_rate != zero(Float32) && (encoded_size += PB._encoded_size(x.sample_rate, 1)) + x.sample_rate !== zero(Float32) && (encoded_size += PB._encoded_size(x.sample_rate, 1)) x.num_channels != zero(Int64) && (encoded_size += PB._encoded_size(x.num_channels, 2)) x.length_frames != zero(Int64) && (encoded_size += PB._encoded_size(x.length_frames, 3)) !isempty(x.encoded_audio_string) && (encoded_size += PB._encoded_size(x.encoded_audio_string, 4)) @@ -109,12 +110,12 @@ end PB.default_values(::Type{var"Summary.Image"}) = (;height = zero(Int32), width = zero(Int32), colorspace = zero(Int32), encoded_image_string = UInt8[]) PB.field_numbers(::Type{var"Summary.Image"}) = (;height = 1, width = 2, colorspace = 3, encoded_image_string = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"Summary.Image"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"Summary.Image"}, _endpos::Int=0, _group::Bool=false) height = zero(Int32) width = zero(Int32) colorspace = zero(Int32) encoded_image_string = UInt8[] - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 height = PB.decode(d, Int32) @@ -125,7 +126,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"Summary.Image"}) elseif field_number == 4 encoded_image_string = PB.decode(d, Vector{UInt8}) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"Summary.Image"(height, width, colorspace, encoded_image_string) @@ -154,14 +155,14 @@ end PB.default_values(::Type{SummaryDescription}) = (;type_hint = "") PB.field_numbers(::Type{SummaryDescription}) = (;type_hint = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SummaryDescription}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SummaryDescription}, _endpos::Int=0, _group::Bool=false) type_hint = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 type_hint = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SummaryDescription(type_hint) @@ -187,12 +188,12 @@ end PB.default_values(::Type{SummaryMetadata}) = (;plugin_data = nothing, display_name = "", summary_description = "", data_class = DataClass.DATA_CLASS_UNKNOWN) PB.field_numbers(::Type{SummaryMetadata}) = (;plugin_data = 1, display_name = 2, summary_description = 3, data_class = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SummaryMetadata}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SummaryMetadata}, _endpos::Int=0, _group::Bool=false) plugin_data = Ref{Union{Nothing,var"SummaryMetadata.PluginData"}}(nothing) display_name = "" summary_description = "" data_class = DataClass.DATA_CLASS_UNKNOWN - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, plugin_data) @@ -203,7 +204,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SummaryMetadata}) elseif field_number == 4 data_class = PB.decode(d, DataClass.T) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SummaryMetadata(plugin_data[], display_name, summary_description, data_class) @@ -238,12 +239,12 @@ PB.oneof_field_types(::Type{var"Summary.Value"}) = (; PB.default_values(::Type{var"Summary.Value"}) = (;node_name = "", tag = "", metadata = nothing, simple_value = zero(Float32), obsolete_old_style_histogram = UInt8[], image = nothing, histo = nothing, audio = nothing, tensor = nothing) PB.field_numbers(::Type{var"Summary.Value"}) = (;node_name = 7, tag = 1, metadata = 9, simple_value = 2, obsolete_old_style_histogram = 3, image = 4, histo = 5, audio = 6, tensor = 8) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"Summary.Value"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"Summary.Value"}, _endpos::Int=0, _group::Bool=false) node_name = "" tag = "" metadata = Ref{Union{Nothing,SummaryMetadata}}(nothing) value = nothing - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 7 node_name = PB.decode(d, String) @@ -264,7 +265,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"Summary.Value"}) elseif field_number == 8 value = OneOf(:tensor, PB.decode(d, Ref{TensorProto})) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"Summary.Value"(node_name, tag, metadata[], value) @@ -319,14 +320,14 @@ end PB.default_values(::Type{Summary}) = (;value = Vector{var"Summary.Value"}()) PB.field_numbers(::Type{Summary}) = (;value = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Summary}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Summary}, _endpos::Int=0, _group::Bool=false) value = PB.BufferedVector{var"Summary.Value"}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, value) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return Summary(value[]) diff --git a/src/protojl/tensorboard/tensorboard/tensor_description_pb.jl b/src/protojl/tensorboard/tensorboard/tensor_description_pb.jl index e082f038..8f1181f8 100644 --- a/src/protojl/tensorboard/tensorboard/tensor_description_pb.jl +++ b/src/protojl/tensorboard/tensorboard/tensor_description_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.424 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/tensor_description.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/tensor_description.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export TensorDescription + struct TensorDescription dtype::var"#DataType".T shape::Union{Nothing,TensorShapeProto} @@ -15,11 +16,11 @@ end PB.default_values(::Type{TensorDescription}) = (;dtype = var"#DataType".DT_INVALID, shape = nothing, allocation_description = nothing) PB.field_numbers(::Type{TensorDescription}) = (;dtype = 1, shape = 2, allocation_description = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorDescription}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorDescription}, _endpos::Int=0, _group::Bool=false) dtype = var"#DataType".DT_INVALID shape = Ref{Union{Nothing,TensorShapeProto}}(nothing) allocation_description = Ref{Union{Nothing,AllocationDescription}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 dtype = PB.decode(d, var"#DataType".T) @@ -28,7 +29,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorDescription}) elseif field_number == 4 PB.decode!(d, allocation_description) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return TensorDescription(dtype, shape[], allocation_description[]) diff --git a/src/protojl/tensorboard/tensorboard/tensor_pb.jl b/src/protojl/tensorboard/tensorboard/tensor_pb.jl index a2455831..8733b41d 100644 --- a/src/protojl/tensorboard/tensorboard/tensor_pb.jl +++ b/src/protojl/tensorboard/tensorboard/tensor_pb.jl @@ -1,18 +1,17 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.489 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/tensor.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/tensor.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf using ProtoBuf.EnumX: @enumx export TensorProto, VariantTensorDataProto +abstract type var"##Abstract#TensorProto" end +abstract type var"##Abstract#VariantTensorDataProto" end -# Abstract types to help resolve mutually recursive definitions -abstract type var"##AbstractTensorProto" end -abstract type var"##AbstractVariantTensorDataProto" end - -struct TensorProto{T1<:Union{Nothing,var"##AbstractVariantTensorDataProto"}} <: var"##AbstractTensorProto" +# Stub definitions for cyclic types +struct var"##Stub#TensorProto"{T1<:var"##Abstract#VariantTensorDataProto"} <: var"##Abstract#TensorProto" dtype::var"#DataType".T tensor_shape::Union{Nothing,TensorShapeProto} version_number::Int32 @@ -32,10 +31,18 @@ struct TensorProto{T1<:Union{Nothing,var"##AbstractVariantTensorDataProto"}} <: uint64_val::Vector{UInt64} float8_val::Vector{UInt8} end + +struct var"##Stub#VariantTensorDataProto" <: var"##Abstract#VariantTensorDataProto" + type_name::String + metadata::Vector{UInt8} + tensors::Vector{var"##Stub#TensorProto"{var"##Stub#VariantTensorDataProto"}} +end + +const TensorProto = var"##Stub#TensorProto"{var"##Stub#VariantTensorDataProto"} PB.default_values(::Type{TensorProto}) = (;dtype = var"#DataType".DT_INVALID, tensor_shape = nothing, version_number = zero(Int32), tensor_content = UInt8[], half_val = Vector{Int32}(), float_val = Vector{Float32}(), double_val = Vector{Float64}(), int_val = Vector{Int32}(), string_val = Vector{Vector{UInt8}}(), scomplex_val = Vector{Float32}(), int64_val = Vector{Int64}(), bool_val = Vector{Bool}(), dcomplex_val = Vector{Float64}(), resource_handle_val = Vector{ResourceHandleProto}(), variant_val = Vector{VariantTensorDataProto}(), uint32_val = Vector{UInt32}(), uint64_val = Vector{UInt64}(), float8_val = UInt8[]) PB.field_numbers(::Type{TensorProto}) = (;dtype = 1, tensor_shape = 2, version_number = 3, tensor_content = 4, half_val = 13, float_val = 5, double_val = 6, int_val = 7, string_val = 8, scomplex_val = 9, int64_val = 10, bool_val = 11, dcomplex_val = 12, resource_handle_val = 14, variant_val = 15, uint32_val = 16, uint64_val = 17, float8_val = 18) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorProto}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorProto}, _endpos::Int=0, _group::Bool=false) dtype = var"#DataType".DT_INVALID tensor_shape = Ref{Union{Nothing,TensorShapeProto}}(nothing) version_number = zero(Int32) @@ -54,7 +61,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorProto}) uint32_val = PB.BufferedVector{UInt32}() uint64_val = PB.BufferedVector{UInt64}() float8_val = UInt8[] - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 dtype = PB.decode(d, var"#DataType".T) @@ -93,7 +100,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorProto}) elseif field_number == 18 float8_val = PB.decode(d, Vector{UInt8}) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return TensorProto(dtype, tensor_shape[], version_number, tensor_content, half_val[], float_val[], double_val[], int_val[], string_val[], scomplex_val[], int64_val[], bool_val[], dcomplex_val[], resource_handle_val[], variant_val[], uint32_val[], uint64_val[], float8_val) @@ -144,19 +151,15 @@ function PB._encoded_size(x::TensorProto) return encoded_size end -struct VariantTensorDataProto <: var"##AbstractVariantTensorDataProto" - type_name::String - metadata::Vector{UInt8} - tensors::Vector{<:TensorProto} -end +const VariantTensorDataProto = var"##Stub#VariantTensorDataProto" PB.default_values(::Type{VariantTensorDataProto}) = (;type_name = "", metadata = UInt8[], tensors = Vector{TensorProto}()) PB.field_numbers(::Type{VariantTensorDataProto}) = (;type_name = 1, metadata = 2, tensors = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:VariantTensorDataProto}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:VariantTensorDataProto}, _endpos::Int=0, _group::Bool=false) type_name = "" metadata = UInt8[] tensors = PB.BufferedVector{TensorProto}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 type_name = PB.decode(d, String) @@ -165,7 +168,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:VariantTensorDataProto}) elseif field_number == 3 PB.decode!(d, tensors) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return VariantTensorDataProto(type_name, metadata, tensors[]) diff --git a/src/protojl/tensorboard/tensorboard/tensor_shape_pb.jl b/src/protojl/tensorboard/tensorboard/tensor_shape_pb.jl index 9336dcc0..d65d906d 100644 --- a/src/protojl/tensorboard/tensorboard/tensor_shape_pb.jl +++ b/src/protojl/tensorboard/tensorboard/tensor_shape_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.100 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/tensor_shape.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/tensor_shape.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export var"TensorShapeProto.Dim", TensorShapeProto + struct var"TensorShapeProto.Dim" size::Int64 name::String @@ -14,17 +15,17 @@ end PB.default_values(::Type{var"TensorShapeProto.Dim"}) = (;size = zero(Int64), name = "") PB.field_numbers(::Type{var"TensorShapeProto.Dim"}) = (;size = 1, name = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TensorShapeProto.Dim"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TensorShapeProto.Dim"}, _endpos::Int=0, _group::Bool=false) size = zero(Int64) name = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 size = PB.decode(d, Int64) elseif field_number == 2 name = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"TensorShapeProto.Dim"(size, name) @@ -50,17 +51,17 @@ end PB.default_values(::Type{TensorShapeProto}) = (;dim = Vector{var"TensorShapeProto.Dim"}(), unknown_rank = false) PB.field_numbers(::Type{TensorShapeProto}) = (;dim = 2, unknown_rank = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorShapeProto}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TensorShapeProto}, _endpos::Int=0, _group::Bool=false) dim = PB.BufferedVector{var"TensorShapeProto.Dim"}() unknown_rank = false - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 2 PB.decode!(d, dim) elseif field_number == 3 unknown_rank = PB.decode(d, Bool) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return TensorShapeProto(dim[], unknown_rank) diff --git a/src/protojl/tensorboard/tensorboard/tfprof_log_pb.jl b/src/protojl/tensorboard/tensorboard/tfprof_log_pb.jl index 7980ae20..6c29c6f4 100644 --- a/src/protojl/tensorboard/tensorboard/tfprof_log_pb.jl +++ b/src/protojl/tensorboard/tensorboard/tfprof_log_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.776 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/tfprof_log.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/tfprof_log.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -8,20 +8,21 @@ using ProtoBuf.EnumX: @enumx export Tuple, Memory, var"CodeDef.Trace", ExecTime, ExecMemory, CodeDef, ExecProfile export OpLogEntry, ProfileNode, OpLogProto, ProfileProto + struct Tuple int64_values::Vector{Int64} end PB.default_values(::Type{Tuple}) = (;int64_values = Vector{Int64}()) PB.field_numbers(::Type{Tuple}) = (;int64_values = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Tuple}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Tuple}, _endpos::Int=0, _group::Bool=false) int64_values = PB.BufferedVector{Int64}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, wire_type, int64_values) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return Tuple(int64_values[]) @@ -45,17 +46,17 @@ end PB.default_values(::Type{Memory}) = (;bytes = zero(Int64), ptr = zero(UInt64)) PB.field_numbers(::Type{Memory}) = (;bytes = 1, ptr = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Memory}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:Memory}, _endpos::Int=0, _group::Bool=false) bytes = zero(Int64) ptr = zero(UInt64) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 bytes = PB.decode(d, Int64) elseif field_number == 2 ptr = PB.decode(d, UInt64) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return Memory(bytes, ptr) @@ -75,72 +76,55 @@ function PB._encoded_size(x::Memory) end struct var"CodeDef.Trace" - file::String file_id::Int64 lineno::Int32 - var"#function"::String function_id::Int64 - line::String line_id::Int64 func_start_line::Int32 end -PB.default_values(::Type{var"CodeDef.Trace"}) = (;file = "", file_id = zero(Int64), lineno = zero(Int32), var"#function" = "", function_id = zero(Int64), line = "", line_id = zero(Int64), func_start_line = zero(Int32)) -PB.field_numbers(::Type{var"CodeDef.Trace"}) = (;file = 1, file_id = 6, lineno = 2, var"#function" = 3, function_id = 7, line = 4, line_id = 8, func_start_line = 5) +PB.reserved_fields(::Type{var"CodeDef.Trace"}) = (names = ["file", "function", "line"], numbers = Union{Int,UnitRange{Int}}[1, 3, 4]) +PB.default_values(::Type{var"CodeDef.Trace"}) = (;file_id = zero(Int64), lineno = zero(Int32), function_id = zero(Int64), line_id = zero(Int64), func_start_line = zero(Int32)) +PB.field_numbers(::Type{var"CodeDef.Trace"}) = (;file_id = 6, lineno = 2, function_id = 7, line_id = 8, func_start_line = 5) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CodeDef.Trace"}) - file = "" +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"CodeDef.Trace"}, _endpos::Int=0, _group::Bool=false) file_id = zero(Int64) lineno = zero(Int32) - var"#function" = "" function_id = zero(Int64) - line = "" line_id = zero(Int64) func_start_line = zero(Int32) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) - if field_number == 1 - file = PB.decode(d, String) - elseif field_number == 6 + if field_number == 6 file_id = PB.decode(d, Int64) elseif field_number == 2 lineno = PB.decode(d, Int32) - elseif field_number == 3 - var"#function" = PB.decode(d, String) elseif field_number == 7 function_id = PB.decode(d, Int64) - elseif field_number == 4 - line = PB.decode(d, String) elseif field_number == 8 line_id = PB.decode(d, Int64) elseif field_number == 5 func_start_line = PB.decode(d, Int32) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end - return var"CodeDef.Trace"(file, file_id, lineno, var"#function", function_id, line, line_id, func_start_line) + return var"CodeDef.Trace"(file_id, lineno, function_id, line_id, func_start_line) end function PB.encode(e::PB.AbstractProtoEncoder, x::var"CodeDef.Trace") initpos = position(e.io) - !isempty(x.file) && PB.encode(e, 1, x.file) x.file_id != zero(Int64) && PB.encode(e, 6, x.file_id) x.lineno != zero(Int32) && PB.encode(e, 2, x.lineno) - !isempty(x.var"#function") && PB.encode(e, 3, x.var"#function") x.function_id != zero(Int64) && PB.encode(e, 7, x.function_id) - !isempty(x.line) && PB.encode(e, 4, x.line) x.line_id != zero(Int64) && PB.encode(e, 8, x.line_id) x.func_start_line != zero(Int32) && PB.encode(e, 5, x.func_start_line) return position(e.io) - initpos end function PB._encoded_size(x::var"CodeDef.Trace") encoded_size = 0 - !isempty(x.file) && (encoded_size += PB._encoded_size(x.file, 1)) x.file_id != zero(Int64) && (encoded_size += PB._encoded_size(x.file_id, 6)) x.lineno != zero(Int32) && (encoded_size += PB._encoded_size(x.lineno, 2)) - !isempty(x.var"#function") && (encoded_size += PB._encoded_size(x.var"#function", 3)) x.function_id != zero(Int64) && (encoded_size += PB._encoded_size(x.function_id, 7)) - !isempty(x.line) && (encoded_size += PB._encoded_size(x.line, 4)) x.line_id != zero(Int64) && (encoded_size += PB._encoded_size(x.line_id, 8)) x.func_start_line != zero(Int32) && (encoded_size += PB._encoded_size(x.func_start_line, 5)) return encoded_size @@ -152,14 +136,14 @@ end PB.default_values(::Type{ExecTime}) = (;times = Vector{Tuple}()) PB.field_numbers(::Type{ExecTime}) = (;times = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ExecTime}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ExecTime}, _endpos::Int=0, _group::Bool=false) times = PB.BufferedVector{Tuple}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, times) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return ExecTime(times[]) @@ -192,7 +176,7 @@ end PB.default_values(::Type{ExecMemory}) = (;memory_micros = zero(Int64), host_temp_bytes = zero(Int64), host_persistent_bytes = zero(Int64), accelerator_temp_bytes = zero(Int64), accelerator_persistent_bytes = zero(Int64), requested_bytes = zero(Int64), peak_bytes = zero(Int64), residual_bytes = zero(Int64), output_bytes = zero(Int64), allocator_bytes_in_use = zero(Int64), output_memory = Dict{Int32,Memory}()) PB.field_numbers(::Type{ExecMemory}) = (;memory_micros = 1, host_temp_bytes = 2, host_persistent_bytes = 3, accelerator_temp_bytes = 4, accelerator_persistent_bytes = 5, requested_bytes = 6, peak_bytes = 7, residual_bytes = 8, output_bytes = 9, allocator_bytes_in_use = 10, output_memory = 11) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ExecMemory}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ExecMemory}, _endpos::Int=0, _group::Bool=false) memory_micros = zero(Int64) host_temp_bytes = zero(Int64) host_persistent_bytes = zero(Int64) @@ -204,7 +188,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ExecMemory}) output_bytes = zero(Int64) allocator_bytes_in_use = zero(Int64) output_memory = Dict{Int32,Memory}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 memory_micros = PB.decode(d, Int64) @@ -229,7 +213,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ExecMemory}) elseif field_number == 11 PB.decode!(d, output_memory) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return ExecMemory(memory_micros, host_temp_bytes, host_persistent_bytes, accelerator_temp_bytes, accelerator_persistent_bytes, requested_bytes, peak_bytes, residual_bytes, output_bytes, allocator_bytes_in_use, output_memory) @@ -272,14 +256,14 @@ end PB.default_values(::Type{CodeDef}) = (;traces = Vector{var"CodeDef.Trace"}()) PB.field_numbers(::Type{CodeDef}) = (;traces = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CodeDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:CodeDef}, _endpos::Int=0, _group::Bool=false) traces = PB.BufferedVector{var"CodeDef.Trace"}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, traces) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return CodeDef(traces[]) @@ -309,7 +293,7 @@ end PB.default_values(::Type{ExecProfile}) = (;run_count = zero(Int64), all_start_micros = zero(Int64), latest_end_micros = zero(Int64), accelerator_execs = Dict{String,ExecTime}(), cpu_execs = Dict{String,ExecTime}(), memory_execs = Vector{ExecMemory}(), allocations = Vector{AllocationRecord}(), devices = Vector{String}()) PB.field_numbers(::Type{ExecProfile}) = (;run_count = 1, all_start_micros = 2, latest_end_micros = 3, accelerator_execs = 4, cpu_execs = 5, memory_execs = 7, allocations = 11, devices = 6) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ExecProfile}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ExecProfile}, _endpos::Int=0, _group::Bool=false) run_count = zero(Int64) all_start_micros = zero(Int64) latest_end_micros = zero(Int64) @@ -318,7 +302,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ExecProfile}) memory_execs = PB.BufferedVector{ExecMemory}() allocations = PB.BufferedVector{AllocationRecord}() devices = PB.BufferedVector{String}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 run_count = PB.decode(d, Int64) @@ -337,7 +321,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ExecProfile}) elseif field_number == 6 PB.decode!(d, devices) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return ExecProfile(run_count, all_start_micros, latest_end_micros, accelerator_execs, cpu_execs, memory_execs[], allocations[], devices[]) @@ -377,12 +361,12 @@ end PB.default_values(::Type{OpLogEntry}) = (;name = "", float_ops = zero(Int64), types = Vector{String}(), code_def = nothing) PB.field_numbers(::Type{OpLogEntry}) = (;name = 1, float_ops = 2, types = 3, code_def = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OpLogEntry}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OpLogEntry}, _endpos::Int=0, _group::Bool=false) name = "" float_ops = zero(Int64) types = PB.BufferedVector{String}() code_def = Ref{Union{Nothing,CodeDef}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) @@ -393,7 +377,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OpLogEntry}) elseif field_number == 4 PB.decode!(d, code_def) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return OpLogEntry(name, float_ops, types[], code_def[]) @@ -437,7 +421,7 @@ end PB.default_values(::Type{ProfileNode}) = (;name = "", op = "", id = zero(Int64), inputs = Dict{Int32,Int64}(), input_shapes = Dict{Int32,Tuple}(), outputs = Dict{Int32,Int64}(), output_shapes = Dict{Int32,Tuple}(), src_output_index = Dict{Int64,Int32}(), shape = Vector{Int64}(), op_types = Vector{String}(), canonical_device = "", host_device = "", float_ops = zero(Int64), trace = nothing, attrs = Dict{String,AttrValue}(), execs = Dict{Int64,ExecProfile}()) PB.field_numbers(::Type{ProfileNode}) = (;name = 1, op = 9, id = 13, inputs = 2, input_shapes = 16, outputs = 3, output_shapes = 15, src_output_index = 14, shape = 4, op_types = 5, canonical_device = 6, host_device = 7, float_ops = 8, trace = 10, attrs = 11, execs = 12) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ProfileNode}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ProfileNode}, _endpos::Int=0, _group::Bool=false) name = "" op = "" id = zero(Int64) @@ -454,7 +438,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ProfileNode}) trace = Ref{Union{Nothing,CodeDef}}(nothing) attrs = Dict{String,AttrValue}() execs = Dict{Int64,ExecProfile}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) @@ -489,7 +473,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ProfileNode}) elseif field_number == 12 PB.decode!(d, execs) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return ProfileNode(name, op, id, inputs, input_shapes, outputs, output_shapes, src_output_index, shape[], op_types[], canonical_device, host_device, float_ops, trace[], attrs, execs) @@ -543,17 +527,17 @@ end PB.default_values(::Type{OpLogProto}) = (;log_entries = Vector{OpLogEntry}(), id_to_string = Dict{Int64,String}()) PB.field_numbers(::Type{OpLogProto}) = (;log_entries = 1, id_to_string = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OpLogProto}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:OpLogProto}, _endpos::Int=0, _group::Bool=false) log_entries = PB.BufferedVector{OpLogEntry}() id_to_string = Dict{Int64,String}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, log_entries) elseif field_number == 2 PB.decode!(d, id_to_string) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return OpLogProto(log_entries[], id_to_string) @@ -582,13 +566,13 @@ end PB.default_values(::Type{ProfileProto}) = (;nodes = Dict{Int64,ProfileNode}(), has_trace = false, miss_accelerator_stream = false, steps = Vector{Int64}(), id_to_string = Dict{Int64,String}()) PB.field_numbers(::Type{ProfileProto}) = (;nodes = 1, has_trace = 2, miss_accelerator_stream = 5, steps = 3, id_to_string = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ProfileProto}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ProfileProto}, _endpos::Int=0, _group::Bool=false) nodes = Dict{Int64,ProfileNode}() has_trace = false miss_accelerator_stream = false steps = PB.BufferedVector{Int64}() id_to_string = Dict{Int64,String}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, nodes) @@ -601,7 +585,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:ProfileProto}) elseif field_number == 4 PB.decode!(d, id_to_string) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return ProfileProto(nodes, has_trace, miss_accelerator_stream, steps[], id_to_string) diff --git a/src/protojl/tensorboard/tensorboard/trackable_object_graph_pb.jl b/src/protojl/tensorboard/tensorboard/trackable_object_graph_pb.jl index a2b5d955..f34f3c65 100644 --- a/src/protojl/tensorboard/tensorboard/trackable_object_graph_pb.jl +++ b/src/protojl/tensorboard/tensorboard/trackable_object_graph_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.159 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/trackable_object_graph.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/trackable_object_graph.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -10,6 +10,7 @@ export var"TrackableObjectGraph.TrackableObject.SerializedTensor" export var"TrackableObjectGraph.TrackableObject.SlotVariableReference", RegisteredSaver export var"TrackableObjectGraph.TrackableObject", TrackableObjectGraph + struct var"TrackableObjectGraph.TrackableObject.ObjectReference" node_id::Int32 local_name::String @@ -17,17 +18,17 @@ end PB.default_values(::Type{var"TrackableObjectGraph.TrackableObject.ObjectReference"}) = (;node_id = zero(Int32), local_name = "") PB.field_numbers(::Type{var"TrackableObjectGraph.TrackableObject.ObjectReference"}) = (;node_id = 1, local_name = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TrackableObjectGraph.TrackableObject.ObjectReference"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TrackableObjectGraph.TrackableObject.ObjectReference"}, _endpos::Int=0, _group::Bool=false) node_id = zero(Int32) local_name = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 node_id = PB.decode(d, Int32) elseif field_number == 2 local_name = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"TrackableObjectGraph.TrackableObject.ObjectReference"(node_id, local_name) @@ -55,11 +56,11 @@ PB.reserved_fields(::Type{var"TrackableObjectGraph.TrackableObject.SerializedTen PB.default_values(::Type{var"TrackableObjectGraph.TrackableObject.SerializedTensor"}) = (;name = "", full_name = "", checkpoint_key = "") PB.field_numbers(::Type{var"TrackableObjectGraph.TrackableObject.SerializedTensor"}) = (;name = 1, full_name = 2, checkpoint_key = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TrackableObjectGraph.TrackableObject.SerializedTensor"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TrackableObjectGraph.TrackableObject.SerializedTensor"}, _endpos::Int=0, _group::Bool=false) name = "" full_name = "" checkpoint_key = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) @@ -68,7 +69,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TrackableObjectGraph elseif field_number == 3 checkpoint_key = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"TrackableObjectGraph.TrackableObject.SerializedTensor"(name, full_name, checkpoint_key) @@ -97,11 +98,11 @@ end PB.default_values(::Type{var"TrackableObjectGraph.TrackableObject.SlotVariableReference"}) = (;original_variable_node_id = zero(Int32), slot_name = "", slot_variable_node_id = zero(Int32)) PB.field_numbers(::Type{var"TrackableObjectGraph.TrackableObject.SlotVariableReference"}) = (;original_variable_node_id = 1, slot_name = 2, slot_variable_node_id = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TrackableObjectGraph.TrackableObject.SlotVariableReference"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TrackableObjectGraph.TrackableObject.SlotVariableReference"}, _endpos::Int=0, _group::Bool=false) original_variable_node_id = zero(Int32) slot_name = "" slot_variable_node_id = zero(Int32) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 original_variable_node_id = PB.decode(d, Int32) @@ -110,7 +111,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TrackableObjectGraph elseif field_number == 3 slot_variable_node_id = PB.decode(d, Int32) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"TrackableObjectGraph.TrackableObject.SlotVariableReference"(original_variable_node_id, slot_name, slot_variable_node_id) @@ -138,17 +139,17 @@ end PB.default_values(::Type{RegisteredSaver}) = (;name = "", object_name = "") PB.field_numbers(::Type{RegisteredSaver}) = (;name = 1, object_name = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RegisteredSaver}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:RegisteredSaver}, _endpos::Int=0, _group::Bool=false) name = "" object_name = "" - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 name = PB.decode(d, String) elseif field_number == 2 object_name = PB.decode(d, String) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return RegisteredSaver(name, object_name) @@ -177,13 +178,13 @@ end PB.default_values(::Type{var"TrackableObjectGraph.TrackableObject"}) = (;children = Vector{var"TrackableObjectGraph.TrackableObject.ObjectReference"}(), attributes = Vector{var"TrackableObjectGraph.TrackableObject.SerializedTensor"}(), slot_variables = Vector{var"TrackableObjectGraph.TrackableObject.SlotVariableReference"}(), registered_saver = nothing, has_checkpoint_values = nothing) PB.field_numbers(::Type{var"TrackableObjectGraph.TrackableObject"}) = (;children = 1, attributes = 2, slot_variables = 3, registered_saver = 4, has_checkpoint_values = 5) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TrackableObjectGraph.TrackableObject"}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TrackableObjectGraph.TrackableObject"}, _endpos::Int=0, _group::Bool=false) children = PB.BufferedVector{var"TrackableObjectGraph.TrackableObject.ObjectReference"}() attributes = PB.BufferedVector{var"TrackableObjectGraph.TrackableObject.SerializedTensor"}() slot_variables = PB.BufferedVector{var"TrackableObjectGraph.TrackableObject.SlotVariableReference"}() registered_saver = Ref{Union{Nothing,RegisteredSaver}}(nothing) has_checkpoint_values = Ref{Union{Nothing,google.protobuf.BoolValue}}(nothing) - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, children) @@ -196,7 +197,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:var"TrackableObjectGraph elseif field_number == 5 PB.decode!(d, has_checkpoint_values) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return var"TrackableObjectGraph.TrackableObject"(children[], attributes[], slot_variables[], registered_saver[], has_checkpoint_values[]) @@ -227,14 +228,14 @@ end PB.default_values(::Type{TrackableObjectGraph}) = (;nodes = Vector{var"TrackableObjectGraph.TrackableObject"}()) PB.field_numbers(::Type{TrackableObjectGraph}) = (;nodes = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TrackableObjectGraph}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:TrackableObjectGraph}, _endpos::Int=0, _group::Bool=false) nodes = PB.BufferedVector{var"TrackableObjectGraph.TrackableObject"}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 PB.decode!(d, nodes) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return TrackableObjectGraph(nodes[]) diff --git a/src/protojl/tensorboard/tensorboard/types_pb.jl b/src/protojl/tensorboard/tensorboard/types_pb.jl index 3da0311f..5ccf3cce 100644 --- a/src/protojl/tensorboard/tensorboard/types_pb.jl +++ b/src/protojl/tensorboard/tensorboard/types_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.286 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/types.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/types.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,7 +7,8 @@ using ProtoBuf.EnumX: @enumx export var"#DataType", SerializedDType -@enumx var"#DataType" DT_INVALID=0 DT_FLOAT=1 DT_DOUBLE=2 DT_INT32=3 DT_UINT8=4 DT_INT16=5 DT_INT8=6 DT_STRING=7 DT_COMPLEX64=8 DT_INT64=9 DT_BOOL=10 DT_QINT8=11 DT_QUINT8=12 DT_QINT32=13 DT_BFLOAT16=14 DT_QINT16=15 DT_QUINT16=16 DT_UINT16=17 DT_COMPLEX128=18 DT_HALF=19 DT_RESOURCE=20 DT_VARIANT=21 DT_UINT32=22 DT_UINT64=23 DT_FLOAT8_E5M2=24 DT_FLOAT8_E4M3FN=25 DT_FLOAT_REF=101 DT_DOUBLE_REF=102 DT_INT32_REF=103 DT_UINT8_REF=104 DT_INT16_REF=105 DT_INT8_REF=106 DT_STRING_REF=107 DT_COMPLEX64_REF=108 DT_INT64_REF=109 DT_BOOL_REF=110 DT_QINT8_REF=111 DT_QUINT8_REF=112 DT_QINT32_REF=113 DT_BFLOAT16_REF=114 DT_QINT16_REF=115 DT_QUINT16_REF=116 DT_UINT16_REF=117 DT_COMPLEX128_REF=118 DT_HALF_REF=119 DT_RESOURCE_REF=120 DT_VARIANT_REF=121 DT_UINT32_REF=122 DT_UINT64_REF=123 DT_FLOAT8_E5M2_REF=124 DT_FLOAT8_E4M3FN_REF=125 + +@enumx var"#DataType" DT_INVALID=0 DT_FLOAT=1 DT_DOUBLE=2 DT_INT32=3 DT_UINT8=4 DT_INT16=5 DT_INT8=6 DT_STRING=7 DT_COMPLEX64=8 DT_INT64=9 DT_BOOL=10 DT_QINT8=11 DT_QUINT8=12 DT_QINT32=13 DT_BFLOAT16=14 DT_QINT16=15 DT_QUINT16=16 DT_UINT16=17 DT_COMPLEX128=18 DT_HALF=19 DT_RESOURCE=20 DT_VARIANT=21 DT_UINT32=22 DT_UINT64=23 DT_FLOAT8_E5M2=24 DT_FLOAT8_E4M3FN=25 DT_FLOAT8_E4M3FNUZ=26 DT_FLOAT8_E4M3B11FNUZ=27 DT_FLOAT8_E5M2FNUZ=28 DT_INT4=29 DT_UINT4=30 DT_INT2=31 DT_UINT2=32 DT_FLOAT_REF=101 DT_DOUBLE_REF=102 DT_INT32_REF=103 DT_UINT8_REF=104 DT_INT16_REF=105 DT_INT8_REF=106 DT_STRING_REF=107 DT_COMPLEX64_REF=108 DT_INT64_REF=109 DT_BOOL_REF=110 DT_QINT8_REF=111 DT_QUINT8_REF=112 DT_QINT32_REF=113 DT_BFLOAT16_REF=114 DT_QINT16_REF=115 DT_QUINT16_REF=116 DT_UINT16_REF=117 DT_COMPLEX128_REF=118 DT_HALF_REF=119 DT_RESOURCE_REF=120 DT_VARIANT_REF=121 DT_UINT32_REF=122 DT_UINT64_REF=123 DT_FLOAT8_E5M2_REF=124 DT_FLOAT8_E4M3FN_REF=125 DT_FLOAT8_E4M3FNUZ_REF=126 DT_FLOAT8_E4M3B11FNUZ_REF=127 DT_FLOAT8_E5M2FNUZ_REF=128 DT_INT4_REF=129 DT_UINT4_REF=130 DT_INT2_REF=131 DT_UINT2_REF=132 struct SerializedDType datatype::var"#DataType".T @@ -15,14 +16,14 @@ end PB.default_values(::Type{SerializedDType}) = (;datatype = var"#DataType".DT_INVALID) PB.field_numbers(::Type{SerializedDType}) = (;datatype = 1) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SerializedDType}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SerializedDType}, _endpos::Int=0, _group::Bool=false) datatype = var"#DataType".DT_INVALID - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 datatype = PB.decode(d, var"#DataType".T) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SerializedDType(datatype) diff --git a/src/protojl/tensorboard/tensorboard/variable_pb.jl b/src/protojl/tensorboard/tensorboard/variable_pb.jl index 0fcdc8cb..d3bc9ab8 100644 --- a/src/protojl/tensorboard/tensorboard/variable_pb.jl +++ b/src/protojl/tensorboard/tensorboard/variable_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.289 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/variable.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/variable.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export VariableSynchronization, VariableAggregation, SaveSliceInfoDef, VariableDef + @enumx VariableSynchronization VARIABLE_SYNCHRONIZATION_AUTO=0 VARIABLE_SYNCHRONIZATION_NONE=1 VARIABLE_SYNCHRONIZATION_ON_WRITE=2 VARIABLE_SYNCHRONIZATION_ON_READ=3 @enumx VariableAggregation VARIABLE_AGGREGATION_NONE=0 VARIABLE_AGGREGATION_SUM=1 VARIABLE_AGGREGATION_MEAN=2 VARIABLE_AGGREGATION_ONLY_FIRST_REPLICA=3 @@ -20,12 +21,12 @@ end PB.default_values(::Type{SaveSliceInfoDef}) = (;full_name = "", full_shape = Vector{Int64}(), var_offset = Vector{Int64}(), var_shape = Vector{Int64}()) PB.field_numbers(::Type{SaveSliceInfoDef}) = (;full_name = 1, full_shape = 2, var_offset = 3, var_shape = 4) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SaveSliceInfoDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SaveSliceInfoDef}, _endpos::Int=0, _group::Bool=false) full_name = "" full_shape = PB.BufferedVector{Int64}() var_offset = PB.BufferedVector{Int64}() var_shape = PB.BufferedVector{Int64}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 full_name = PB.decode(d, String) @@ -36,7 +37,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:SaveSliceInfoDef}) elseif field_number == 4 PB.decode!(d, wire_type, var_shape) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return SaveSliceInfoDef(full_name, full_shape[], var_offset[], var_shape[]) @@ -73,7 +74,7 @@ end PB.default_values(::Type{VariableDef}) = (;variable_name = "", initial_value_name = "", initializer_name = "", snapshot_name = "", save_slice_info_def = nothing, is_resource = false, trainable = false, synchronization = VariableSynchronization.VARIABLE_SYNCHRONIZATION_AUTO, aggregation = VariableAggregation.VARIABLE_AGGREGATION_NONE) PB.field_numbers(::Type{VariableDef}) = (;variable_name = 1, initial_value_name = 6, initializer_name = 2, snapshot_name = 3, save_slice_info_def = 4, is_resource = 5, trainable = 7, synchronization = 8, aggregation = 9) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:VariableDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:VariableDef}, _endpos::Int=0, _group::Bool=false) variable_name = "" initial_value_name = "" initializer_name = "" @@ -83,7 +84,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:VariableDef}) trainable = false synchronization = VariableSynchronization.VARIABLE_SYNCHRONIZATION_AUTO aggregation = VariableAggregation.VARIABLE_AGGREGATION_NONE - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 variable_name = PB.decode(d, String) @@ -104,7 +105,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:VariableDef}) elseif field_number == 9 aggregation = PB.decode(d, VariableAggregation.T) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return VariableDef(variable_name, initial_value_name, initializer_name, snapshot_name, save_slice_info_def[], is_resource, trainable, synchronization, aggregation) diff --git a/src/protojl/tensorboard/tensorboard/verifier_config_pb.jl b/src/protojl/tensorboard/tensorboard/verifier_config_pb.jl index 7c68b243..5e6c6361 100644 --- a/src/protojl/tensorboard/tensorboard/verifier_config_pb.jl +++ b/src/protojl/tensorboard/tensorboard/verifier_config_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.286 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/verifier_config.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/verifier_config.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export var"VerifierConfig.Toggle", VerifierConfig + @enumx var"VerifierConfig.Toggle" DEFAULT=0 ON=1 OFF=2 struct VerifierConfig @@ -16,17 +17,17 @@ end PB.default_values(::Type{VerifierConfig}) = (;verification_timeout_in_ms = zero(Int64), structure_verifier = var"VerifierConfig.Toggle".DEFAULT) PB.field_numbers(::Type{VerifierConfig}) = (;verification_timeout_in_ms = 1, structure_verifier = 2) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:VerifierConfig}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:VerifierConfig}, _endpos::Int=0, _group::Bool=false) verification_timeout_in_ms = zero(Int64) structure_verifier = var"VerifierConfig.Toggle".DEFAULT - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 verification_timeout_in_ms = PB.decode(d, Int64) elseif field_number == 2 structure_verifier = PB.decode(d, var"VerifierConfig.Toggle".T) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return VerifierConfig(verification_timeout_in_ms, structure_verifier) diff --git a/src/protojl/tensorboard/tensorboard/versions_pb.jl b/src/protojl/tensorboard/tensorboard/versions_pb.jl index 2b924a73..3cc064ad 100644 --- a/src/protojl/tensorboard/tensorboard/versions_pb.jl +++ b/src/protojl/tensorboard/tensorboard/versions_pb.jl @@ -1,5 +1,5 @@ -# Autogenerated using ProtoBuf.jl v1.0.11 on 2023-06-19T18:18:24.286 -# original file: /home/lior/TensorBoardLogger.jl/gen/proto/tensorboard/compat/proto/versions.proto (proto3 syntax) +# Autogenerated using ProtoBuf.jl v1.3.0 +# original file: tensorboard/compat/proto/versions.proto (proto3 syntax) import ProtoBuf as PB using ProtoBuf: OneOf @@ -7,6 +7,7 @@ using ProtoBuf.EnumX: @enumx export VersionDef + struct VersionDef producer::Int32 min_consumer::Int32 @@ -15,11 +16,11 @@ end PB.default_values(::Type{VersionDef}) = (;producer = zero(Int32), min_consumer = zero(Int32), bad_consumers = Vector{Int32}()) PB.field_numbers(::Type{VersionDef}) = (;producer = 1, min_consumer = 2, bad_consumers = 3) -function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:VersionDef}) +function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:VersionDef}, _endpos::Int=0, _group::Bool=false) producer = zero(Int32) min_consumer = zero(Int32) bad_consumers = PB.BufferedVector{Int32}() - while !PB.message_done(d) + while !PB.message_done(d, _endpos, _group) field_number, wire_type = PB.decode_tag(d) if field_number == 1 producer = PB.decode(d, Int32) @@ -28,7 +29,7 @@ function PB.decode(d::PB.AbstractProtoDecoder, ::Type{<:VersionDef}) elseif field_number == 3 PB.decode!(d, wire_type, bad_consumers) else - PB.skip(d, wire_type) + Base.skip(d, wire_type) end end return VersionDef(producer, min_consumer, bad_consumers[]) diff --git a/src/utils.jl b/src/utils.jl index e774629f..a1509623 100644 --- a/src/utils.jl +++ b/src/utils.jl @@ -11,13 +11,3 @@ function serialize_proto(data) encode(ProtoEncoder(pb), data) return take!(pb) # Do not return additional zeros end - -""" - wrapper for writeproto that supresses logging to prevent infinite - recursion. -""" -function _writeproto(pb::IO, obj) - with_logger(NullLogger()) do - writeproto(pb, obj) - end -end