metrics/ruby-prof-exclude
Measure Mode: process_time_time
Thread ID: 70280413355020
Fiber ID: 70280414949480
Total Time: 0.29607691299999994
Sort by: self_time
%total %self total self wait child calls name
--------------------------------------------------------------------------------
0.284 0.059 0.000 0.225 1/1 <Module::DeviceInput>#read_loop
95.79% 19.85% 0.284 0.059 0.000 0.225 1 Kernel#loop
0.142 0.011 0.000 0.131 9999/10015 Class#new
0.047 0.016 0.000 0.032 9999/9999 <Class::DeviceInput::Event>#decode
0.018 0.018 0.000 0.000 9999/9999 IO#read
0.005 0.005 0.000 0.000 9999/10000 String#length
0.004 0.004 0.000 0.000 9999/10000 Integer#>=
0.004 0.004 0.000 0.000 9999/9999 Integer#==
0.004 0.004 0.000 0.000 9999/20009 Integer#+
--------------------------------------------------------------------------------
0.131 0.055 0.000 0.076 9999/9999 Class#new
44.22% 18.54% 0.131 0.055 0.000 0.076 9999 DeviceInput::Event#initialize
0.017 0.011 0.000 0.006 9999/9999 <Class::DeviceInput::Event>#code_labels
0.016 0.011 0.000 0.005 9999/9999 <Class::DeviceInput::Event>#type_labels
0.015 0.011 0.000 0.004 9999/9999 <Class::Time>#at
0.008 0.008 0.000 0.000 19998/19998 DeviceInput::Event::Data#type
0.008 0.008 0.000 0.000 19998/20000 Array#first
0.004 0.004 0.000 0.000 9999/9999 DeviceInput::Event::Data#code
0.004 0.004 0.000 0.000 9999/9999 DeviceInput::Event::Data#tv_sec
0.004 0.004 0.000 0.000 9999/9999 DeviceInput::Event::Data#tv_usec
--------------------------------------------------------------------------------
0.018 0.018 0.000 0.000 9999/9999 Kernel#loop
6.18% 6.18% 0.018 0.018 0.000 0.000 9999 IO#read
--------------------------------------------------------------------------------
0.047 0.016 0.000 0.032 9999/9999 Kernel#loop
15.93% 5.25% 0.047 0.016 0.000 0.032 9999 <Class::DeviceInput::Event>#decode
0.017 0.012 0.000 0.005 9999/10000 <Class::DeviceInput::Event::Data>#new
0.015 0.015 0.000 0.000 9999/9999 String#unpack
--------------------------------------------------------------------------------
0.015 0.015 0.000 0.000 9999/9999 <Class::DeviceInput::Event>#decode
4.99% 4.99% 0.015 0.015 0.000 0.000 9999 String#unpack
--------------------------------------------------------------------------------
0.000 0.000 0.000 0.000 1/10000 Kernel#require
0.017 0.012 0.000 0.005 9999/10000 <Class::DeviceInput::Event>#decode
5.69% 4.00% 0.017 0.012 0.000 0.005 10000 <Class::DeviceInput::Event::Data>#new
0.005 0.005 0.000 0.000 10000/10000 Struct#initialize
--------------------------------------------------------------------------------
0.015 0.011 0.000 0.004 9999/9999 DeviceInput::Event#initialize
5.22% 3.78% 0.015 0.011 0.000 0.004 9999 <Class::Time>#at
0.004 0.004 0.000 0.000 9999/20009 Integer#+
--------------------------------------------------------------------------------
0.016 0.011 0.000 0.005 9999/9999 DeviceInput::Event#initialize
5.38% 3.76% 0.016 0.011 0.000 0.005 9999 <Class::DeviceInput::Event>#type_labels
0.005 0.005 0.000 0.000 9999/10005 Hash#[]
--------------------------------------------------------------------------------
0.017 0.011 0.000 0.006 9999/9999 DeviceInput::Event#initialize
5.60% 3.72% 0.017 0.011 0.000 0.006 9999 <Class::DeviceInput::Event>#code_labels
0.006 0.006 0.000 0.000 9999/9999 Hash#dig
--------------------------------------------------------------------------------
0.000 0.000 0.000 0.000 1/10015 Slop::Parser#parse
0.000 0.000 0.000 0.000 1/10015 Kernel#require
0.000 0.000 0.000 0.000 1/10015 Slop::Options#initialize
0.000 0.000 0.000 0.000 2/10015 Gem::Specification#initialize
0.000 0.000 0.000 0.000 4/10015 Slop::Options#on
0.000 0.000 0.000 0.000 3/10015 <Class::Gem::Requirement>#create
0.000 0.000 0.000 0.000 2/10015 Gem::Specification#add_dependency_with_type
0.000 0.000 0.000 0.000 1/10015 <Module::Slop>#parse
0.001 0.000 0.000 0.001 1/10015 Kernel#eval
0.142 0.011 0.000 0.131 9999/10015 Kernel#loop
48.22% 3.68% 0.143 0.011 0.000 0.132 10015 *Class#new
0.131 0.055 0.000 0.076 9999/9999 DeviceInput::Event#initialize
0.001 0.000 0.000 0.000 1/1 Gem::Specification#initialize
0.000 0.000 0.000 0.000 1/1 Slop::Options#initialize
0.000 0.000 0.000 0.000 5/5 Gem::Requirement#initialize
0.000 0.000 0.000 0.000 2/2 Gem::Dependency#initialize
0.000 0.000 0.000 0.000 4/4 Slop::Option#initialize
0.000 0.000 0.000 0.000 1/1 Slop::Parser#initialize
0.000 0.000 0.000 0.000 1/1 Slop::Result#initialize
0.000 0.000 0.000 0.000 1/1 Exception#initialize
--------------------------------------------------------------------------------
0.000 0.000 0.000 0.000 1/20009 Time#initialize
0.000 0.000 0.000 0.000 2/20009 Slop::Option#ensure_call
0.000 0.000 0.000 0.000 1/20009 Kernel#require
0.000 0.000 0.000 0.000 3/20009 <Class::Time>#utc
0.000 0.000 0.000 0.000 4/20009 Slop::Parser#parse
0.004 0.004 0.000 0.000 9999/20009 <Class::Time>#at
0.004 0.004 0.000 0.000 9999/20009 Kernel#loop
2.88% 2.88% 0.009 0.009 0.000 0.000 20009 Integer#+