• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

tycooon / memery / 32
100%
master: 100%

Build:
Build:
LAST BUILD BRANCH: v1.8.0
DEFAULT BRANCH: master
Ran 14 May 2019 08:42PM UTC
Jobs 5
Files 2
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
32

Pull #10

travis-ci

web-flow
Optimize speed and memory for cached values returns

```ruby

require 'bundler/setup'
Bundler.setup

require 'benchmark'
require 'benchmark/ips'
require 'benchmark/memory'

puts '```ruby'
puts File.read(__FILE__).gsub("\t", '  ')
puts '```'
puts
puts '### Output'
puts
puts '```'

require_relative 'lib/memery'
require_relative 'lib/memery_new'

class Foo
  class << self
    include Memery
    include MemeryNew

    def base_find(char)
      ('a'..'k').find { |letter| letter == char }
    end

    memoize def find_old(char)
      base_find(char)
    end

    memoize_new def find_new(char)
      base_find(char)
    end
  end
end

def memery_old
  Foo.find_old('d')
end

def memery_new
  Foo.find_new('d')
end

def test
  exit unless p (((p memery_old) == (p memery_new)))
end

test

Benchmark.ips do |x|
  x.report('memery_old') { memery_old }
  x.report('memery_new') { memery_new }

  x.compare!
end

Benchmark.memory do |x|
  x.report('memery_old') { 100.times { memery_old } }
  x.report('memery_new') { 100.times { memery_new } }

  x.compare!
end

puts '```'
```

```
"d"
"d"
true
Warming up --------------------------------------
          memery_old    24.664k i/100ms
          memery_new    31.363k i/100ms
Calculating -------------------------------------
          memery_old    285.113k (± 5.7%) i/s -      1.431M in   5.034622s
          memery_new    360.540k (± 6.2%) i/s -      1.819M in   5.067173s

Comparison:
          memery_new:   360540.0 i/s
          memery_old:   285112.6 i/s - 1.26x  slower

Calculating -------------------------------------
          memery_old    32.800k memsize (     0.000  retained)
                       500.000  objects (     0.000  retained)
                         3.000  strings (     0.000  retained)
          memery_new    16.000k memsize (     0.000  retained)
                       400.000  objects (     0.000  retained)
                         3.000  strings (     0.000  retained)

Comparison:
          memery_n... (continued)
Pull Request #10: Optimize speed and memory for cached values returns

4 of 4 new or added lines in 1 file covered. (100.0%)

150 of 150 relevant lines covered (100.0%)

15.83 hits per line

Jobs
ID Job ID Ran Files Coverage
1 32.1 (2.3, SUITE="rspec") 14 May 2019 08:42PM UTC 0
100.0
Travis Job 32.1
2 32.2 (2.4, SUITE="rspec") 14 May 2019 08:42PM UTC 0
100.0
Travis Job 32.2
3 32.3 (2.5, SUITE="rspec") 14 May 2019 08:42PM UTC 0
100.0
Travis Job 32.3
4 32.4 (2.6, SUITE="rspec") 14 May 2019 08:42PM UTC 0
100.0
Travis Job 32.4
6 32.6 (ruby-head, SUITE="rspec") 14 May 2019 08:44PM UTC 0
100.0
Travis Job 32.6
Source Files on build 32
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #32
  • Pull Request #10
  • PR Base - master (#31)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc