github.com/gnolang/gno@v0.0.0-20240520182011-228e9d0192ce/tm2/pkg/amino/benchmark_test.txt (about) 1 goos: darwin 2 goarch: amd64 3 pkg: github.com/gnolang/gno/tm2/pkg/amino 4 BenchmarkBinary/EmptyStruct:encode-12 2014173 600 ns/op 5 BenchmarkBinary/EmptyStruct:decode-12 2552624 476 ns/op 6 BenchmarkBinary/PrimitivesStruct:encode-12 195601 5863 ns/op 7 BenchmarkBinary/PrimitivesStruct:decode-12 326515 3747 ns/op 8 BenchmarkBinary/ShortArraysStruct:encode-12 1212757 998 ns/op 9 BenchmarkBinary/ShortArraysStruct:decode-12 2016876 587 ns/op 10 BenchmarkBinary/ArraysStruct:encode-12 68551 17076 ns/op 11 BenchmarkBinary/ArraysStruct:decode-12 100958 12059 ns/op 12 BenchmarkBinary/ArraysArraysStruct:encode-12 38233 31731 ns/op 13 BenchmarkBinary/ArraysArraysStruct:decode-12 54616 21872 ns/op 14 BenchmarkBinary/SlicesStruct:encode-12 70123 16905 ns/op 15 BenchmarkBinary/SlicesStruct:decode-12 42705 28151 ns/op 16 BenchmarkBinary/SlicesSlicesStruct:encode-12 16621 70930 ns/op 17 BenchmarkBinary/SlicesSlicesStruct:decode-12 9336 129362 ns/op 18 BenchmarkBinary/PointersStruct:encode-12 195524 6207 ns/op 19 BenchmarkBinary/PointersStruct:decode-12 240034 5031 ns/op 20 BenchmarkBinary/PointerSlicesStruct:encode-12 65152 18245 ns/op 21 BenchmarkBinary/PointerSlicesStruct:decode-12 32844 36546 ns/op 22 BenchmarkBinary/ComplexSt:encode-12 28136 42521 ns/op 23 BenchmarkBinary/ComplexSt:decode-12 25780 46371 ns/op 24 BenchmarkBinary/EmbeddedSt1:encode-12 201664 6209 ns/op 25 BenchmarkBinary/EmbeddedSt1:decode-12 296887 4028 ns/op 26 BenchmarkBinary/EmbeddedSt2:encode-12 27433 42601 ns/op 27 BenchmarkBinary/EmbeddedSt2:decode-12 25882 46640 ns/op 28 BenchmarkBinary/EmbeddedSt3:encode-12 34432 34761 ns/op 29 BenchmarkBinary/EmbeddedSt3:decode-12 31200 38508 ns/op 30 BenchmarkBinary/EmbeddedSt4:encode-12 27648 43315 ns/op 31 BenchmarkBinary/EmbeddedSt4:decode-12 25447 46935 ns/op 32 BenchmarkBinary/EmbeddedSt5:encode-12 33650 35767 ns/op 33 BenchmarkBinary/EmbeddedSt5:decode-12 30681 39111 ns/op 34 BenchmarkBinary/AminoMarshalerStruct:encode-12 218726 5604 ns/op 35 BenchmarkBinary/AminoMarshalerStruct:decode-12 213175 5642 ns/op 36 37 goos: darwin 38 goarch: amd64 39 pkg: github.com/gnolang/gno/tm2/pkg/amino 40 BenchmarkBinaryPBBindings/EmptyStruct:encode:pbbindings-12 3058335 417 ns/op 41 BenchmarkBinaryPBBindings/EmptyStruct:encode:pbbindings:translate_only-12 10182542 122 ns/op 42 BenchmarkBinaryPBBindings/EmptyStruct:decode:pbbindings-12 1792140 627 ns/op 43 BenchmarkBinaryPBBindings/EmptyStruct:decode:pbbindings:translate_only-12 14603524 83.5 ns/op 44 BenchmarkBinaryPBBindings/PrimitivesStruct:encode:pbbindings-12 473488 2251 ns/op 45 BenchmarkBinaryPBBindings/PrimitivesStruct:encode:pbbindings:translate_only-12 1898532 626 ns/op 46 BenchmarkBinaryPBBindings/PrimitivesStruct:decode:pbbindings-12 506960 2236 ns/op 47 BenchmarkBinaryPBBindings/PrimitivesStruct:decode:pbbindings:translate_only-12 4820623 249 ns/op 48 BenchmarkBinaryPBBindings/ShortArraysStruct:encode:pbbindings-12 2522173 468 ns/op 49 BenchmarkBinaryPBBindings/ShortArraysStruct:encode:pbbindings:translate_only-12 7763534 156 ns/op 50 BenchmarkBinaryPBBindings/ShortArraysStruct:decode:pbbindings-12 1672912 705 ns/op 51 BenchmarkBinaryPBBindings/ShortArraysStruct:decode:pbbindings:translate_only-12 13197705 91.1 ns/op 52 BenchmarkBinaryPBBindings/ArraysStruct:encode:pbbindings-12 217628 5367 ns/op 53 BenchmarkBinaryPBBindings/ArraysStruct:encode:pbbindings:translate_only-12 596632 2009 ns/op 54 BenchmarkBinaryPBBindings/ArraysStruct:decode:pbbindings-12 156619 7609 ns/op 55 BenchmarkBinaryPBBindings/ArraysStruct:decode:pbbindings:translate_only-12 1906845 623 ns/op 56 BenchmarkBinaryPBBindings/ArraysArraysStruct:encode:pbbindings-12 113120 10384 ns/op 57 BenchmarkBinaryPBBindings/ArraysArraysStruct:encode:pbbindings:translate_only-12 274444 4558 ns/op 58 BenchmarkBinaryPBBindings/ArraysArraysStruct:decode:pbbindings-12 84512 13660 ns/op 59 BenchmarkBinaryPBBindings/ArraysArraysStruct:decode:pbbindings:translate_only-12 1401084 878 ns/op 60 BenchmarkBinaryPBBindings/SlicesStruct:encode:pbbindings-12 178534 6713 ns/op 61 BenchmarkBinaryPBBindings/SlicesStruct:encode:pbbindings:translate_only-12 468562 2580 ns/op 62 BenchmarkBinaryPBBindings/SlicesStruct:decode:pbbindings-12 118323 10013 ns/op 63 BenchmarkBinaryPBBindings/SlicesStruct:decode:pbbindings:translate_only-12 607119 2021 ns/op 64 BenchmarkBinaryPBBindings/SlicesSlicesStruct:encode:pbbindings-12 45372 25824 ns/op 65 BenchmarkBinaryPBBindings/SlicesSlicesStruct:encode:pbbindings:translate_only-12 109527 10756 ns/op 66 BenchmarkBinaryPBBindings/SlicesSlicesStruct:decode:pbbindings-12 27471 43598 ns/op 67 BenchmarkBinaryPBBindings/SlicesSlicesStruct:decode:pbbindings:translate_only-12 160161 7538 ns/op 68 BenchmarkBinaryPBBindings/PointersStruct:encode:pbbindings-12 496542 2480 ns/op 69 BenchmarkBinaryPBBindings/PointersStruct:encode:pbbindings:translate_only-12 1892995 664 ns/op 70 BenchmarkBinaryPBBindings/PointersStruct:decode:pbbindings-12 403417 2877 ns/op 71 BenchmarkBinaryPBBindings/PointersStruct:decode:pbbindings:translate_only-12 1602358 764 ns/op 72 BenchmarkBinaryPBBindings/PointerSlicesStruct:encode:pbbindings-12 173250 6784 ns/op 73 BenchmarkBinaryPBBindings/PointerSlicesStruct:encode:pbbindings:translate_only-12 455133 2657 ns/op 74 BenchmarkBinaryPBBindings/PointerSlicesStruct:decode:pbbindings-12 100646 11678 ns/op 75 BenchmarkBinaryPBBindings/PointerSlicesStruct:decode:pbbindings:translate_only-12 293522 4058 ns/op 76 BenchmarkBinaryPBBindings/ComplexSt:encode:pbbindings-12 82843 14199 ns/op 77 BenchmarkBinaryPBBindings/ComplexSt:encode:pbbindings:translate_only-12 237603 5117 ns/op 78 BenchmarkBinaryPBBindings/ComplexSt:decode:pbbindings-12 59017 20071 ns/op 79 BenchmarkBinaryPBBindings/ComplexSt:decode:pbbindings:translate_only-12 365061 3320 ns/op 80 BenchmarkBinaryPBBindings/EmbeddedSt1:encode:pbbindings-12 509215 2358 ns/op 81 BenchmarkBinaryPBBindings/EmbeddedSt1:encode:pbbindings:translate_only-12 1543207 784 ns/op 82 BenchmarkBinaryPBBindings/EmbeddedSt1:decode:pbbindings-12 473383 2350 ns/op 83 BenchmarkBinaryPBBindings/EmbeddedSt1:decode:pbbindings:translate_only-12 4357411 270 ns/op 84 BenchmarkBinaryPBBindings/EmbeddedSt2:encode:pbbindings-12 81375 14350 ns/op 85 BenchmarkBinaryPBBindings/EmbeddedSt2:encode:pbbindings:translate_only-12 231646 5174 ns/op 86 BenchmarkBinaryPBBindings/EmbeddedSt2:decode:pbbindings-12 58969 19890 ns/op 87 BenchmarkBinaryPBBindings/EmbeddedSt2:decode:pbbindings:translate_only-12 363745 3296 ns/op 88 BenchmarkBinaryPBBindings/EmbeddedSt3:encode:pbbindings-12 97280 12194 ns/op 89 BenchmarkBinaryPBBindings/EmbeddedSt3:encode:pbbindings:translate_only-12 277128 4348 ns/op 90 BenchmarkBinaryPBBindings/EmbeddedSt3:decode:pbbindings-12 68830 17068 ns/op 91 BenchmarkBinaryPBBindings/EmbeddedSt3:decode:pbbindings:translate_only-12 384680 3313 ns/op 92 BenchmarkBinaryPBBindings/EmbeddedSt4:encode:pbbindings-12 79282 14791 ns/op 93 BenchmarkBinaryPBBindings/EmbeddedSt4:encode:pbbindings:translate_only-12 227222 5201 ns/op 94 BenchmarkBinaryPBBindings/EmbeddedSt4:decode:pbbindings-12 57316 20610 ns/op 95 BenchmarkBinaryPBBindings/EmbeddedSt4:decode:pbbindings:translate_only-12 365226 3359 ns/op 96 BenchmarkBinaryPBBindings/EmbeddedSt5:encode:pbbindings-12 94160 12453 ns/op 97 BenchmarkBinaryPBBindings/EmbeddedSt5:encode:pbbindings:translate_only-12 278884 4382 ns/op 98 BenchmarkBinaryPBBindings/EmbeddedSt5:decode:pbbindings-12 67538 17538 ns/op 99 BenchmarkBinaryPBBindings/EmbeddedSt5:decode:pbbindings:translate_only-12 365097 3404 ns/op 100 BenchmarkBinaryPBBindings/AminoMarshalerStruct:encode:pbbindings-12 424704 2906 ns/op 101 /AminoMarshalerStruct:encode:pbbindings:translate_only-12 579672 2122 ns/op 102 /AminoMarshalerStruct:decode:pbbindings-12 366188 3307 ns/op 103 /AminoMarshalerStruct:decode:pbbindings:translate_only-12 724782 1718 ns/op 104 105 106 |----------------------|------------|------------|----------|---------|----------|---------|---------------|--------|---------------|--------| 107 | | enc (refl) | dec (refl) | enc (pb) | (enc x) | dec (pb) | (dec x) | enc (pb/refl) | (x/pb) | dec (pb/refl) | (x/pb) | 108 |----------------------|------------|------------|----------|---------|----------|---------|---------------|--------|---------------|--------| 109 | EmptyStruct | 476 | 476 | 417 | 122 | 627 | 83 | 69.50% | 29.26% | 131.72% | 13.24% | 110 | PrimitivesStruct | 5863 | 3747 | 2251 | 626 | 2236 | 249 | 38.39% | 27.81% | 59.67% | 11.14% | 111 | ShortArraysStruct | 998 | 587 | 468 | 156 | 705 | 91 | 46.89% | 33.33% | 120.10% | 12.91% | 112 | ArraysStruct | 17076 | 12059 | 5367 | 2009 | 7609 | 623 | 31.43% | 37.43% | 63.10% | 8.19% | 113 | ArraysArraysStruct | 31731 | 21872 | 10384 | 4558 | 13660 | 878 | 32.73% | 43.89% | 62.45% | 6.43% | 114 | SlicesStruct | 16905 | 28151 | 6713 | 2580 | 10013 | 2021 | 39.71% | 38.43% | 35.57% | 20.18% | 115 | SlicesSlicesStruct | 70930 | 129362 | 25824 | 10756 | 43598 | 7538 | 36.41% | 41.65% | 33.70% | 17.29% | 116 | PointersStruct | 6207 | 5031 | 2480 | 664 | 2877 | 764 | 39.95% | 26.77% | 57.19% | 26.56% | 117 | PointerSlicesStruct | 18245 | 36546 | 6784 | 2657 | 11678 | 4058 | 37.18% | 39.17% | 31.95% | 34.75% | 118 | ComplexSt | 42521 | 46371 | 14199 | 5117 | 20071 | 3320 | 33.39% | 36.04% | 43.28% | 16.54% | 119 | EmbeddedSt1 | 6209 | 4028 | 2358 | 784 | 2350 | 270 | 37.98% | 33.25% | 58.34% | 11.49% | 120 | EmbeddedSt2 | 42601 | 46640 | 14350 | 5174 | 19890 | 3296 | 33.68% | 36.06% | 42.65% | 16.57% | 121 | EmbeddedSt3 | 34761 | 38508 | 12194 | 4348 | 17068 | 3313 | 35.08% | 35.66% | 44.32% | 19.41% | 122 | EmbeddedSt4 | 43315 | 46935 | 14791 | 5201 | 20610 | 3359 | 34.15% | 35.16% | 43.91% | 16.30% | 123 | EmbeddedSt5 | 35767 | 39111 | 12453 | 4382 | 17538 | 3404 | 34.82% | 35.19% | 44.84% | 19.41% | 124 | AminoMarshalerStruct | 5604 | 5642 | 2906 | 2122 | 3307 | 1718 | 51.86% | 73.02% | 58.61% | 51.95% | 125 |----------------------|------------|------------|----------|---------|----------|---------|---------------|--------|---------------|--------| 126 unit: nanoseconds 127 key: 128 * refl: reflection 129 * pb: genproto proto3 generation 130 * x: go -> proto3-go translation 131 * pb/refl: % of time genproto proto3-based encoding/decoding took relative to 132 reflection-based encoding/decoding. (smaller is better) 133 * x/pb: % of time of proto3-based encoding/decoding that was spent on 134 translating via genproto's go <-> proto3-go code. (smaller is better)