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