Class: Diagnostics::Sample::Result

Inherits:
Object
  • Object
show all
Includes:
Schema::DataStructure
Defined in:
lib/diagnostics/sample/result.rb

Instance Method Summary collapse

Instance Method Details

#cycle(elapsed_time) ⇒ Object



14
15
16
17
18
19
20
# File 'lib/diagnostics/sample/result.rb', line 14

def cycle(elapsed_time)
  self.cycle_time_milliseconds += elapsed_time

  self.cycle_time_sum_squares += (elapsed_time ** 2)

  self.cycles += 1
end

#cycle_frequencyObject



26
27
28
# File 'lib/diagnostics/sample/result.rb', line 26

def cycle_frequency
  cycles / (cycle_time_milliseconds / 1_000)
end

#cycle_time_standard_deviationObject



30
31
32
33
34
# File 'lib/diagnostics/sample/result.rb', line 30

def cycle_time_standard_deviation
  variance = (cycle_time_sum_squares / cycles) - (mean_cycle_time_milliseconds ** 2)

  Math.sqrt(variance)
end

#mean_cycle_time_millisecondsObject



22
23
24
# File 'lib/diagnostics/sample/result.rb', line 22

def mean_cycle_time_milliseconds
  cycle_time_milliseconds / cycles
end

#mean_warmup_cycle_time_millisecondsObject



44
45
46
# File 'lib/diagnostics/sample/result.rb', line 44

def mean_warmup_cycle_time_milliseconds
  warmup_cycle_time_milliseconds / warmup_cycles
end

#warmup_cycle(elapsed_time) ⇒ Object



36
37
38
39
40
41
42
# File 'lib/diagnostics/sample/result.rb', line 36

def warmup_cycle(elapsed_time)
  self.warmup_cycle_time_milliseconds += elapsed_time

  self.warmup_cycle_time_sum_squares += (elapsed_time ** 2)

  self.warmup_cycles += 1
end

#warmup_cycle_frequencyObject



48
49
50
# File 'lib/diagnostics/sample/result.rb', line 48

def warmup_cycle_frequency
  warmup_cycles / (warmup_cycle_time_milliseconds / 1_000)
end

#warmup_cycle_time_standard_deviationObject



52
53
54
55
56
# File 'lib/diagnostics/sample/result.rb', line 52

def warmup_cycle_time_standard_deviation
  variance = (warmup_cycle_time_sum_squares / warmup_cycles) - (mean_warmup_cycle_time_milliseconds ** 2)

  Math.sqrt(variance)
end