Skip to content

Instantly share code, notes, and snippets.

@miloops
Created June 9, 2010 17:49
Show Gist options
  • Save miloops/431857 to your computer and use it in GitHub Desktop.
Save miloops/431857 to your computer and use it in GitHub Desktop.
~/Workspace/github/miloops/rails/activerecord(master) $ ruby examples/performance.rb
Thread ID: 2148368700
Total: 3.848270
%self total self wait child calls name
15.08 0.89 0.58 0.00 0.31 20003 Array#each (ruby_runtime:0}
7.03 3.77 0.27 0.00 3.50 10000 ActiveRecord::Base#initialize (./examples/../lib/active_record/base.rb:1430}
4.83 0.92 0.19 0.00 0.80 20000 <Class::ActiveRecord::Base>#_initialize_superclass_callbacks (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/callbacks.rb:568}
4.82 1.56 0.19 0.00 1.37 10000 ActiveRecord::Base#_run_initialize_callbacks (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/callbacks.rb:392}
3.89 0.45 0.15 0.00 0.30 10000 <Class::ActiveRecord::Base>#scoped_methods (./examples/../lib/active_record/base.rb:1200}
3.83 0.20 0.15 0.00 0.05 10000 ActiveRecord::DynamicFinderMatch#initialize (./examples/../lib/active_record/dynamic_finder_match.rb:8}
3.35 1.31 0.13 0.00 1.18 10000 <Class::ActiveRecord::Base>#_update_initialize_superclass_callbacks (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/callbacks.rb:576}
3.24 0.14 0.12 0.00 0.02 10001 <Class::ActiveRecord::Base>#_removed_initialize_callbacks (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/class/inheritable_attributes.rb:170}
3.09 0.12 0.12 0.00 0.00 60005 <Class::Exhibit(id: integer, user_id: integer, name: string, notes: text, created_at: datetime, updated_at: datetime)>#primary_key (/Users/miloops/Workspace/github/miloops/rails/activemodel/lib/active_model/attribute_methods.rb:104}
3.01 0.12 0.12 0.00 0.00 110000 Kernel#class (ruby_runtime:0}
2.76 1.19 0.11 0.00 1.09 10000 ActiveRecord::Locking::Optimistic#attributes_from_column_definition (./examples/../lib/active_record/locking/optimistic.rb:61}
2.72 0.15 0.10 0.00 0.04 20001 <Class::ActiveRecord::Base>#_initialize_callbacks (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/class/inheritable_attributes.rb:170}
2.69 3.82 0.10 0.00 3.78 30006 Class#new (ruby_runtime:0}
2.22 0.60 0.09 0.00 0.51 10000 <Class::ActiveRecord::Base>#respond_to? (./examples/../lib/active_record/base.rb:912}
2.18 0.11 0.08 0.00 0.03 10000 ActiveRecord::DynamicScopeMatch#initialize (./examples/../lib/active_record/dynamic_scope_match.rb:8}
2.13 0.13 0.08 0.00 0.05 10000 <Class::ActiveRecord::Base>#descends_from_active_record? (./examples/../lib/active_record/base.rb:855}
1.81 0.07 0.07 0.00 0.00 50002 Hash#[]= (ruby_runtime:0}
1.73 0.07 0.07 0.00 0.00 60005 Class#superclass (ruby_runtime:0}
1.61 0.06 0.06 0.00 0.00 60021 String#== (ruby_runtime:0}
1.58 1.02 0.06 0.00 0.96 10000 ActiveRecord::Persistence#attributes_from_column_definition (./examples/../lib/active_record/persistence.rb:223}
1.32 0.30 0.05 0.00 0.25 10000 <Class::ActiveRecord::DynamicFinderMatch>#match (./examples/../lib/active_record/dynamic_finder_match.rb:3}
1.30 0.19 0.05 0.00 0.14 10000 ActiveRecord::Base#ensure_proper_type (./examples/../lib/active_record/base.rb:1718}
1.29 0.20 0.05 0.00 0.15 10000 <Class::ActiveRecord::DynamicScopeMatch>#match (./examples/../lib/active_record/dynamic_scope_match.rb:3}
1.28 0.05 0.05 0.00 0.00 40071 Regexp#=== (ruby_runtime:0}
1.26 1.86 0.05 0.00 1.81 20000 Kernel#send (ruby_runtime:0}
1.13 0.05 0.04 0.00 0.00 10000 <Class::ActiveRecord::Base>#columns (./examples/../lib/active_record/base.rb:756}
1.09 0.07 0.04 0.00 0.03 10000 Class#read_inheritable_attribute (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/class/inheritable_attributes.rb:121}
1.08 0.50 0.04 0.00 0.46 10000 <Class::ActiveRecord::Base>#current_scoped_methods (./examples/../lib/active_record/base.rb:1205}
1.04 0.08 0.04 0.00 0.04 10000 Object#presence (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/object/blank.rb:35}
0.86 3.85 0.03 0.00 3.82 1 Integer#times (ruby_runtime:0}
0.83 0.03 0.03 0.00 0.00 20000 Array#- (ruby_runtime:0}
0.83 0.05 0.03 0.00 0.02 10004 Kernel#dup (ruby_runtime:0}
0.83 0.03 0.03 0.00 0.00 30006 <Class::Object>#allocate (ruby_runtime:0}
0.80 0.03 0.03 0.00 0.00 30003 Kernel#object_id (ruby_runtime:0}
0.80 0.03 0.03 0.00 0.00 30005 Kernel#block_given? (ruby_runtime:0}
0.79 0.11 0.03 0.00 0.07 10000 <Class::ActiveRecord::Base>#default_scoping (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/class/inheritable_attributes.rb:21}
0.79 0.03 0.03 0.00 0.00 30002 Fixnum#== (ruby_runtime:0}
0.76 0.04 0.03 0.00 0.01 10000 Object#present? (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/object/blank.rb:17}
0.75 0.03 0.03 0.00 0.00 20015 Symbol#to_s (ruby_runtime:0}
0.65 0.91 0.03 0.00 0.88 10000 Enumerable#inject (ruby_runtime:0}
0.61 0.02 0.02 0.00 0.00 20001 Kernel#respond_to? (ruby_runtime:0}
0.55 0.02 0.02 0.00 0.00 20001 <Class::Thread>#current (ruby_runtime:0}
0.55 0.02 0.02 0.00 0.00 10000 <Class::ActiveRecord::Base>#abstract_class? (./examples/../lib/active_record/base.rb:908}
0.54 0.02 0.02 0.00 0.00 10000 Class#inheritable_attributes (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/class/inheritable_attributes.rb:100}
0.53 0.02 0.02 0.00 0.00 10000 ActiveRecord::Base#lock_optimistically (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/class/attribute_accessors.rb:27}
0.50 0.02 0.02 0.00 0.00 9999 <Class::Exhibit(id: integer, user_id: integer, name: string, notes: text, created_at: datetime, updated_at: datetime)>#locking_column (/Users/miloops/Workspace/github/miloops/rails/activemodel/lib/active_model/attribute_methods.rb:104}
0.43 0.02 0.02 0.00 0.00 10000 Module#to_s (ruby_runtime:0}
0.32 0.01 0.01 0.00 0.00 10000 Array#+ (ruby_runtime:0}
0.31 0.01 0.01 0.00 0.00 10005 Hash#[] (ruby_runtime:0}
0.30 0.01 0.01 0.00 0.00 10000 Hash#include? (ruby_runtime:0}
0.30 0.01 0.01 0.00 0.00 10000 Thread#[] (ruby_runtime:0}
0.29 0.01 0.01 0.00 0.00 10002 Array#initialize_copy (ruby_runtime:0}
0.28 0.01 0.01 0.00 0.00 10000 Thread#[]= (ruby_runtime:0}
0.28 0.01 0.01 0.00 0.00 10005 NilClass#nil? (ruby_runtime:0}
0.27 0.01 0.01 0.00 0.00 9999 Array#blank? (ruby_runtime:0}
0.27 0.01 0.01 0.00 0.00 10002 <Class::Array>#allocate (ruby_runtime:0}
0.26 0.01 0.01 0.00 0.00 10004 Module#== (ruby_runtime:0}
0.26 0.01 0.01 0.00 0.00 10000 Array#last (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 6 Module#class_eval (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 Mysql#query (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 34 String#gsub! (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 6 ActiveRecord::ConnectionAdapters::Column#initialize (./examples/../lib/active_record/connection_adapters/abstract/schema_definitions.rb:29}
0.00 0.00 0.00 0.00 0.00 3 ActiveModel::AttributeMethods::ClassMethods#define_attr_method (/Users/miloops/Workspace/github/miloops/rails/activemodel/lib/active_model/attribute_methods.rb:90}
0.00 0.00 0.00 0.00 0.00 6 ActiveRecord::ConnectionAdapters::MysqlColumn#extract_limit (./examples/../lib/active_record/connection_adapters/mysql_adapter.rb:67}
0.00 0.00 0.00 0.00 0.00 6 ActiveRecord::ConnectionAdapters::MysqlColumn#simplified_type (./examples/../lib/active_record/connection_adapters/mysql_adapter.rb:61}
0.00 0.00 0.00 0.00 0.00 6 ActiveRecord::ConnectionAdapters::Column#simplified_type (./examples/../lib/active_record/connection_adapters/abstract/schema_definitions.rb:233}
0.00 0.00 0.00 0.00 0.00 1 Mysql::Result#each (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 6 ActiveRecord::ConnectionAdapters::MysqlColumn#extract_default (./examples/../lib/active_record/connection_adapters/mysql_adapter.rb:41}
0.00 0.00 0.00 0.00 0.00 3 Module#alias_method (ruby_runtime:0}
0.00 3.85 0.00 0.00 3.85 1 Global#[No method] (examples/performance.rb:164}
0.00 0.00 0.00 0.00 0.00 6 ActiveRecord::ConnectionAdapters::Column#extract_precision (./examples/../lib/active_record/connection_adapters/abstract/schema_definitions.rb:222}
0.00 0.00 0.00 0.00 0.00 2 ActiveRecord::ConnectionAdapters::ConnectionHandler#retrieve_connection_pool (./examples/../lib/active_record/connection_adapters/abstract/connection_pool.rb:351}
0.00 0.00 0.00 0.00 0.00 1 <Class::ActiveRecord::Base>#reset_table_name (./examples/../lib/active_record/base.rb:654}
0.00 0.00 0.00 0.00 0.00 6 ActiveRecord::ConnectionAdapters::Column#extract_scale (./examples/../lib/active_record/connection_adapters/abstract/schema_definitions.rb:226}
0.00 0.00 0.00 0.00 0.00 24 Array#[] (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 4 ActiveRecord::ConnectionAdapters::Column#extract_limit (./examples/../lib/active_record/connection_adapters/abstract/schema_definitions.rb:218}
0.00 0.00 0.00 0.00 0.00 1 ActiveRecord::ConnectionAdapters::MysqlAdapter#columns (./examples/../lib/active_record/connection_adapters/mysql_adapter.rb:432}
0.00 0.00 0.00 0.00 0.00 2 Module#parent_name (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/module/introspection.rb:7}
0.00 0.00 0.00 0.00 0.00 5 ActiveRecord::ConnectionAdapters::MysqlColumn#missing_default_forged_as_empty_string? (./examples/../lib/active_record/connection_adapters/mysql_adapter.rb:97}
0.00 0.00 0.00 0.00 0.00 3 Module#method_defined? (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 3 Arel::ObjectExtensions#singleton_class (/opt/ruby-enterprise-1.8.7-2009.10/lib/ruby/gems/1.8/gems/arel-0.3.3/lib/arel/algebra/core_extensions/object.rb:17}
0.00 0.00 0.00 0.00 0.00 5 ActiveRecord::ConnectionAdapters::Column#type_cast (./examples/../lib/active_record/connection_adapters/abstract/schema_definitions.rb:69}
0.00 0.00 0.00 0.00 0.00 1 ActiveSupport::Inflector#underscore (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/inflector/methods.rb:38}
0.00 0.00 0.00 0.00 0.00 6 <Class::ActiveRecord::ConnectionAdapters::MysqlAdapter>#emulate_booleans (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/class/attribute_accessors.rb:20}
0.00 0.00 0.00 0.00 0.00 1 ActiveSupport::Inflector#pluralize (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/inflector/inflections.rb:129}
0.00 0.00 0.00 0.00 0.00 2 String#gsub (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 2 <Class::ActiveRecord::Base>#class_of_active_record_descendant (./examples/../lib/active_record/base.rb:1239}
0.00 0.00 0.00 0.00 0.00 1 ActiveRecord::AttributeMethods::PrimaryKey::ClassMethods#reset_primary_key (./examples/../lib/active_record/attribute_methods/primary_key.rb:19}
0.00 0.00 0.00 0.00 0.00 13 Kernel#== (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 5 ActiveRecord::ConnectionAdapters::Column#extract_default (./examples/../lib/active_record/connection_adapters/abstract/schema_definitions.rb:112}
0.00 0.00 0.00 0.00 0.00 2 ActiveSupport::Inflector#inflections (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/inflector/inflections.rb:113}
0.00 0.00 0.00 0.00 0.00 1 <Class::ActiveRecord::Base>#undecorated_table_name (./examples/../lib/active_record/base.rb:1002}
0.00 0.00 0.00 0.00 0.00 6 Kernel#singleton_method_added (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 6 Module#name (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 7 String#downcase (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 2 Array#include? (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 Module#parents (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/module/introspection.rb:47}
0.00 0.00 0.00 0.00 0.00 7 String#to_s (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 <Class::ActiveRecord::Base>#full_table_name_prefix (./examples/../lib/active_record/base.rb:675}
0.00 0.00 0.00 0.00 0.00 6 Fixnum#+ (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 ActiveRecord::AttributeMethods::PrimaryKey::ClassMethods#get_primary_key (./examples/../lib/active_record/attribute_methods/primary_key.rb:25}
0.00 0.00 0.00 0.00 0.00 1 <Class::ActiveRecord::Base>#table_name_suffix (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/class/attribute.rb:51}
0.00 0.00 0.00 0.00 0.00 7 Array#<< (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 2 <Class::ActiveRecord::Base>#base_class (./examples/../lib/active_record/base.rb:899}
0.00 0.00 0.00 0.00 0.00 1 <Class::ActiveRecord::Base>#connection_handler (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/class/attribute.rb:51}
0.00 0.00 0.00 0.00 0.00 1 ActiveRecord::ConnectionAdapters::MysqlAdapter#execute (./examples/../lib/active_record/connection_adapters/mysql_adapter.rb:282}
0.00 0.00 0.00 0.00 0.00 1 ActiveRecord::ConnectionAdapters::ConnectionHandler#retrieve_connection (./examples/../lib/active_record/connection_adapters/abstract/connection_pool.rb:328}
0.00 0.00 0.00 0.00 0.00 1 ActiveRecord::ConnectionAdapters::MysqlAdapter#quote_table_name (./examples/../lib/active_record/connection_adapters/mysql_adapter.rb:204}
0.00 0.00 0.00 0.00 0.00 1 <Class::ActiveRecord::Base>#retrieve_connection (./examples/../lib/active_record/connection_adapters/abstract/connection_specification.rb:102}
0.00 0.00 0.00 0.00 0.00 1 Module#parent (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/module/introspection.rb:30}
0.00 0.00 0.00 0.00 0.00 1 ActiveRecord::ConnectionAdapters::ConnectionPool#connection (./examples/../lib/active_record/connection_adapters/abstract/connection_pool.rb:95}
0.00 0.00 0.00 0.00 0.00 6 String#index (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 ActiveRecord::ConnectionAdapters::ConnectionPool#current_connection_id (./examples/../lib/active_record/connection_adapters/abstract/connection_pool.rb:229}
0.00 0.00 0.00 0.00 0.00 1 <Class::ActiveRecord::Base>#table_name_prefix (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/class/attribute.rb:51}
0.00 0.00 0.00 0.00 0.00 1 <Class::ActiveRecord::Base>#set_table_name (./examples/../lib/active_record/base.rb:703}
0.00 0.00 0.00 0.00 0.00 1 <Class::ActiveRecord::Base>#primary_key_prefix_type (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/class/attribute_accessors.rb:20}
0.00 0.00 0.00 0.00 0.00 1 Object#initialize (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 <Class::ActiveRecord::Base>#table_name (./examples/../lib/active_record/base.rb:646}
0.00 0.00 0.00 0.00 0.00 1 ActiveRecord::AttributeMethods::PrimaryKey::ClassMethods#primary_key (./examples/../lib/active_record/attribute_methods/primary_key.rb:15}
0.00 0.00 0.00 0.00 0.00 3 String#inspect (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 ActiveRecord::Locking::Optimistic::ClassMethods#locking_column (./examples/../lib/active_record/locking/optimistic.rb:148}
0.00 0.00 0.00 0.00 0.00 2 String#initialize_copy (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 <Class::ActiveRecord::Base>#connection (./examples/../lib/active_record/connection_adapters/abstract/connection_specification.rb:94}
0.00 0.00 0.00 0.00 0.00 1 ActiveRecord::Locking::Optimistic::ClassMethods#reset_locking_column (./examples/../lib/active_record/locking/optimistic.rb:158}
0.00 0.00 0.00 0.00 0.00 1 String#underscore (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/string/inflections.rb:67}
0.00 0.00 0.00 0.00 0.00 2 NilClass#blank? (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/object/blank.rb:41}
0.00 0.00 0.00 0.00 0.00 2 Object#duplicable? (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/object/duplicable.rb:20}
0.00 0.00 0.00 0.00 0.00 1 ActiveRecord::ConnectionAdapters::MysqlAdapter#quote_column_name (./examples/../lib/active_record/connection_adapters/mysql_adapter.rb:200}
0.00 0.00 0.00 0.00 0.00 1 String#demodulize (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/string/inflections.rb:82}
0.00 0.00 0.00 0.00 0.00 1 ActiveSupport::Inflector#demodulize (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/inflector/methods.rb:61}
0.00 0.00 0.00 0.00 0.00 2 <Class::ActiveSupport::Inflector::Inflections>#instance (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/inflector/inflections.rb:19}
0.00 0.00 0.00 0.00 0.00 1 ActiveRecord::Locking::Optimistic::ClassMethods#set_locking_column (./examples/../lib/active_record/locking/optimistic.rb:142}
0.00 0.00 0.00 0.00 0.00 1 String#pluralize (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/string/inflections.rb:15}
0.00 0.00 0.00 0.00 0.00 3 Hash#default (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 2 Kernel#nil? (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 ActiveRecord::AttributeMethods::PrimaryKey::ClassMethods#set_primary_key (./examples/../lib/active_record/attribute_methods/primary_key.rb:43}
0.00 0.00 0.00 0.00 0.00 1 String#to_i (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 <Class::ActiveRecord::Base>#pluralize_table_names (/Users/miloops/Workspace/github/miloops/rails/activesupport/lib/active_support/core_ext/class/attribute_accessors.rb:20}
0.00 0.00 0.00 0.00 0.00 2 Symbol#=== (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 Enumerable#detect (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 Mysql::Result#free (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 Module#< (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 String#empty? (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 NilClass#to_s (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 2 <Class::String>#allocate (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 String#downcase! (ruby_runtime:0}
0.00 0.00 0.00 0.00 0.00 1 String#tr! (ruby_runtime:0}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment