Created
          June 28, 2023 10:51 
        
      - 
      
- 
        Save nkokkos/a320a0bbcb47ce7e77f621d55c1a9528 to your computer and use it in GitHub Desktop. 
Revisions
- 
        nkokkos created this gist Jun 28, 2023 .There are no files selected for viewingThis file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,26 @@ require './ring_buffer.rb' iterations = 1000 RING_SIZE = 25 ring = RingBuffer.new(RING_SIZE) iterations.times do |i| time_start = Time.now 400000.times do |t| [t, Math.sqrt(rand(200000)), Math.sqrt(t)**2] end time_now = Time.now time_taken = time_now - time_start ring << time_taken puts "time taken for compute block: #{time_taken}" if ring.full? #https://stackoverflow.com/questions/1341271/how-do-i-create-an-average-from-a-ruby-array moving_average = ring.buffer.inject{ |sum, el| sum + el }.to_f / RING_SIZE time_left = moving_average * (iterations - i) puts "time_left: #{time_left}, minutes: #{(time_left/60.0).round(2)}" puts "--------------------------------------" end