diff options
author | Jon Bratseth <bratseth@gmail.com> | 2022-06-08 22:48:46 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-08 22:48:46 +0200 |
commit | 583332f6acf5ac91c3cf3e8de23980c2818b5284 (patch) | |
tree | 3dff4a0456b3672f7b63de0fefb5c5beaa81d3b5 /vespajlib | |
parent | f954bda9c7773bb28f6005b15be2b512b83bc33e (diff) | |
parent | 61d512485d2251a9937b2a5aa1b2327228495077 (diff) |
Merge pull request #22996 from vespa-engine/lesters/short-tensor-format-as-default
Lesters/short tensor format as default MERGEOK
Diffstat (limited to 'vespajlib')
-rw-r--r-- | vespajlib/src/main/java/com/yahoo/tensor/serialization/JsonFormat.java | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/vespajlib/src/main/java/com/yahoo/tensor/serialization/JsonFormat.java b/vespajlib/src/main/java/com/yahoo/tensor/serialization/JsonFormat.java index d7758f309db..b683519988c 100644 --- a/vespajlib/src/main/java/com/yahoo/tensor/serialization/JsonFormat.java +++ b/vespajlib/src/main/java/com/yahoo/tensor/serialization/JsonFormat.java @@ -109,11 +109,15 @@ public class JsonFormat { private static void encodeValues(IndexedTensor tensor, Cursor cursor, long[] indexes, int dimension) { DimensionSizes sizes = tensor.dimensionSizes(); - for (indexes[dimension] = 0; indexes[dimension] < sizes.size(dimension); ++indexes[dimension]) { - if (dimension < (sizes.dimensions() - 1)) { - encodeValues(tensor, cursor.addArray(), indexes, dimension + 1); - } else { - cursor.addDouble(tensor.get(indexes)); + if (indexes.length == 0) { + cursor.addDouble(tensor.get(0)); + } else { + for (indexes[dimension] = 0; indexes[dimension] < sizes.size(dimension); ++indexes[dimension]) { + if (dimension < (sizes.dimensions() - 1)) { + encodeValues(tensor, cursor.addArray(), indexes, dimension + 1); + } else { + cursor.addDouble(tensor.get(indexes)); + } } } } |