]> git.immae.eu Git - github/fretlink/blazeT.git/blob - src/Benchmarks/bigtable/erb.rb
Initial
[github/fretlink/blazeT.git] / src / Benchmarks / bigtable / erb.rb
1 # BigTable benchmark implemented in ERB.
2 #
3 require 'erb'
4 require 'benchmark'
5 include ERB::Util
6
7 table = (1 .. 1000).map do |_| (1 .. 10) end
8
9 template = ERB.new <<-EOF
10 <table>
11 <% table.each do |row| %>
12 <tr>
13 <% row.each do |value| %>
14 <td>
15 <%= value %>
16 </td>
17 <% end %>
18 </tr>
19 <% end %>
20 </table>
21 EOF
22
23 number_runs = 100
24 start_time = Time.now.to_f
25 number_runs.times do
26 template.result(binding)
27 end
28 end_time = Time.now.to_f
29
30 # start_time and end_time are both in seconds now
31 ms = (end_time - start_time) * 1000 / number_runs
32 puts "\"ERB\", #{ms}"