├── .gitignore ├── LICENSE ├── README.md ├── docs ├── .nojekyll ├── go.png ├── img.png └── index.html └── src.html /.gitignore: -------------------------------------------------------------------------------- 1 | /.idea/ 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 Alex Rodin 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # go-bench-viewer 2 | 3 | Easy and intuitive Go Benchmark Results Viewer. 4 | 5 | ![docs/img.png](docs/img.png) 6 | 7 | The **go-bench-viewer** is a viewer 8 | of [benchmark results](https://go.googlesource.com/proposal/+/master/design/14313-benchmark-format.md) generated by 9 | Golang. 10 | 11 | It's just a simple `.html` file that does the correct processing and display of the report. 12 | 13 | ## Features 14 | 15 | - Facilitates comparison of results 16 | - Allows you to hide items, making it easier to analyze the results 17 | - Allows custom grouping, via Regular Expression 18 | - No need to install anything, just go to 19 | 20 | 21 | ## Instructions 22 | 23 | 1. ![docs/go.png](docs/go.png) **to** 24 | 2. Click on some things 25 | 3. Scroll to bottom of page 26 | 27 | -------------------------------------------------------------------------------- /docs/.nojekyll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nidorx/go-bench-viewer/74c383f33f48c53207fd39c0cca60c9bb755a234/docs/.nojekyll -------------------------------------------------------------------------------- /docs/go.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nidorx/go-bench-viewer/74c383f33f48c53207fd39c0cca60c9bb755a234/docs/go.png -------------------------------------------------------------------------------- /docs/img.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nidorx/go-bench-viewer/74c383f33f48c53207fd39c0cca60c9bb755a234/docs/img.png -------------------------------------------------------------------------------- /docs/index.html: -------------------------------------------------------------------------------- 1 | GO Benchmark Viewer

    Benchmark Data & Configuration

    How to format my data?

    This tool works very intuitively. Just paste your benchmark result above and use the Regular Expression input to format and group your data. The Regular Expression can capture two groups: NAME and GROUP.

    These identifiers can appear anywhere in the Benchmark name, the default format is usually Benchmark(?<GROUP>[^_/]+)(?<NAME>.*)$, that matches titles like BenchmarkDecode/text=digits/level=speed/size=1e5-8.

    If you have difficulty writing regular expressions, use the https://regex101.com tool.

    To make it easier to understand, copy and paste some of the examples below into the form above.

    Example 1:
    • Source: https://github.com/gin-gonic/go-http-routing-benchmark
    • Regular Expression:
    • Data:
    Example 2:
    • Source: https://github.com/cornelk/go-benchmark#hashing-algorithms-that-produce-a-64-bit-hash-of-an-8-byte-input
    • Regular Expression:
    • Data:
    Example 3:
    • Source: https://github.com/smallnest/gosercomp
    • Regular Expression:
    • Data:
    94 | 97 | 100 | 101 | 102 | -------------------------------------------------------------------------------- /src.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | GO Benchmark Viewer 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 21 | 22 | 60 | 67 |
    68 |
      69 |
      70 | 108 |
      109 | 145 |
      146 |
      147 |

      Benchmark Data & Configuration

      148 | 149 |
      150 | 151 |
      152 |

      How to format my data?

      153 |

      154 | This tool works very intuitively. Just paste your benchmark result above and use the Regular 155 | Expression input to format and group your data. The Regular Expression can capture 157 | two groups: NAME and GROUP. 158 |

      159 |

      160 | These identifiers can appear anywhere in the Benchmark name, the default format is usually 161 | Benchmark(?<GROUP>[^_/]+)(?<NAME>.*)$, that matches titles like BenchmarkDecode/text=digits/level=speed/size=1e5-8. 162 |

      163 | 164 |

      165 | If you have difficulty writing regular expressions, use the https://regex101.com tool. 167 |

      168 |

      169 | To make it easier to understand, copy and paste some of the examples below into the form above. 170 |

      171 | 172 | Example 1: 173 |
        174 |
      • 175 | Source: 176 | https://github.com/gin-gonic/go-http-routing-benchmark 178 |
      • 179 |
      • 180 | Regular Expression: 181 | 182 |
      • 183 |
      • 184 | Data: 185 | 208 |
      • 209 |
      210 | 211 | Example 2: 212 |
        213 |
      • 214 | Source: 215 | https://github.com/cornelk/go-benchmark#hashing-algorithms-that-produce-a-64-bit-hash-of-an-8-byte-input 217 |
      • 218 |
      • 219 | Regular Expression: 220 | 221 |
      • 222 |
      • 223 | Data: 224 | 239 |
      • 240 |
      241 | 242 | Example 3: 243 |
        244 |
      • 245 | Source: 246 | https://github.com/smallnest/gosercomp 248 |
      • 249 |
      • 250 | Regular Expression: 251 | 252 |
      • 253 |
      • 254 | Data: 255 | 275 |
      • 276 |
      277 | 278 |
      279 |
      280 |
      281 | 665 | 957 | 958 | 959 | 964 | --------------------------------------------------------------------------------