<!DOCTYPE HTML>
<html>
  <head>
    <title>Benchmarks - Go Dashboard</title>
    <link rel="stylesheet" type="text/css" href="/static/style.css">
  </head>

  <body>
    <ul class="menu">
      <li><a href="/">Build Status</a></li>
      <li><a href="/package">Packages</a></li>
      <li><a href="/project">Projects</a></li>
      <li>Benchmarks</li>
      <li><a href="http://golang.org/">golang.org</a></li>
    </ul>

    <h1>Go Dashboard</h1>
    
    <h2>Benchmarks</h2>

    <table class="alternate" cellpadding="0" cellspacing="0">
      <tr>
        <th></th>
        {% for b in builders %}
          <th class="builder">{{b.goos}}<br>{{b.goarch}}<br>{{b.note}}</th>
        {% endfor %}
      </tr>

      {% for bm in rows %}
      <tr>
        <td class="name"><a href="/benchmarks/{{bm.name}}">{{bm.name}}</a></td>

        {% for bl in bm.builders %}
          <td class="result">
	    {% if bl.url %}
	    <img src="{{bl.url}}" />
	    {% else %}
	    <img src="/benchmarks/single?benchmark={{bm.name}}&builder={{bl.name}}" />
	    {% endif %}
          </td>
        {% endfor %}
      </tr>
      {% endfor %}
    </table>
  </body>
</html>
