| <!DOCTYPE html> |
| <html> |
| <head> |
| <title>Performance Result Comparison</title> |
| <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> |
| <style type="text/css"> |
| #header h1 { |
| display: inline; |
| } |
| #search { |
| padding: 1em .5em; |
| width: 100%; |
| } |
| input[type="text"] { |
| font-size: 100%; |
| } |
| #results { |
| border-top: 1px solid black; |
| } |
| </style> |
| </head> |
| <body> |
| <div id="header"> |
| <h1>Go Performance Dashboard</h1> |
| <a href="/">about</a> |
| </div> |
| <div id="search"> |
| <form action="/trend"> |
| <input type="text" name="q" value="{{.Q}}" size="120"> |
| <input type="submit" value="Search"> |
| </form> |
| </div> |
| <div id="results"> |
| {{if not .Q}} |
| <h2>Recent Uploads</h2> |
| <table> |
| <tr><th>Upload ID</th><th>trend</th></tr> |
| {{range .TrendUploads}} |
| <tr><td><a href="/trend?q=upload:{{.UploadID}}">{{.UploadID}}</a></td><td>{{.LabelValues.trend}}</td></tr> |
| {{end}} |
| </table> |
| {{else}} |
| {{with .Error}} |
| <p>{{.}}</p> |
| {{else}} |
| <div id="chart" style="height: 600px"></div> |
| <script type="text/javascript"> |
| google.charts.load('current', {'packages':['corechart']}); |
| google.charts.setOnLoadCallback(draw); |
| function draw() { |
| var dt = new google.visualization.DataTable({{.PlotData}}); |
| var options = { |
| title: 'Benchmark Trend', |
| hAxis: { |
| title: 'commit index', |
| }, |
| vAxis: { |
| title: 'normalized ns/op', |
| }, |
| explorer: { |
| actions: ['dragToZoom', 'rightClickToReset'], |
| maxZoomIn: 0.05, |
| }, |
| }; |
| var chart = new google.visualization.{{.PlotType}}(document.getElementById('chart')); |
| chart.draw(dt, options); |
| } |
| </script> |
| {{end}} |
| {{end}} |
| </div> |
| </body> |
| </html> |