Title: [1116] trunk/activerecord-jdbc/bench: Make the new/ valid benchmark test both at once and add valid benchmark.
Revision
1116
Author
headius
Date
2008-08-14 04:11:08 -0400 (Thu, 14 Aug 2008)

Log Message

Make the new/valid benchmark test both at once and add valid benchmark.

Modified Paths

Added Paths

Diff

Modified: trunk/activerecord-jdbc/bench/bench_new_valid.rb (1115 => 1116)


--- trunk/activerecord-jdbc/bench/bench_new_valid.rb	2008-08-14 08:07:42 UTC (rev 1115)
+++ trunk/activerecord-jdbc/bench/bench_new_valid.rb	2008-08-14 08:11:08 UTC (rev 1116)
@@ -29,16 +29,10 @@
 TIMES = (ARGV[0] || 5).to_i
 Benchmark.bm(30) do |make|
   TIMES.times do
-    make.report("Widget.new") do
+    make.report("Widget.new.valid?") do
       100_000.times do
-        Widget.new
+        Widget.new.valid?
       end
     end
-    make.report("widget.valid?") do
-      w = Widget.new
-      100_000.times do
-        w.valid?
-      end
-    end
   end
 end

Added: trunk/activerecord-jdbc/bench/bench_valid.rb (0 => 1116)


--- trunk/activerecord-jdbc/bench/bench_valid.rb	                        (rev 0)
+++ trunk/activerecord-jdbc/bench/bench_valid.rb	2008-08-14 08:11:08 UTC (rev 1116)
@@ -0,0 +1,39 @@
+=begin
++----------+------+-----+---------+-----------------+----------------+
+| Field       | Type         | Null | Key | Default | Extra          |
++-------------+--------------+------+-----+---------+----------------+
+| id          | int(11)      | NO   | PRI | NULL    | auto_increment |
+| name        | varchar(255) | YES  |     | NULL    |                |
+| description | text         | YES  |     | NULL    |                |
+| created_at  | datetime     | YES  |     | NULL    |                |
+| updated_at  | datetime     | YES  |     | NULL    |                |
++-------------+--------------+------+-----+---------+----------------+
+=end
+
+ENV["RAILS_ENV"] = "production"
+require 'rubygems'
+require 'active_record'
+require 'benchmark'
+
+is_jruby = defined? RUBY_ENGINE && RUBY_ENGINE == "jruby"
+
+ActiveRecord::Base.establish_connection(
+  :adapter => is_jruby ? "jdbcmysql" : "mysql",
+  :host => "localhost",
+  :username => "root",
+  :database => "ar_bench"
+)
+
+class Widget < ActiveRecord::Base; end
+
+TIMES = (ARGV[0] || 5).to_i
+Benchmark.bm(30) do |make|
+  TIMES.times do
+    make.report("Widget.new.valid?") do
+      widget = Widget.new
+      100_000.times do
+        widget.valid?
+      end
+    end
+  end
+end
_______________________________________________
Jruby-extras-devel mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/jruby-extras-devel

Reply via email to