是否可以使用ruby-prof来分析Ruby 2.1.1中的内存/分配?

时间:2014-05-02 19:52:11

标签: ruby profiling

阅读文档https://github.com/ruby-prof/ruby-prof

这些功能似乎最初需要一些补丁,

用于分配: http://rubyforge.org/tracker/index.php?func=detail&aid=11497&group_id=426&atid=1700

用于内存使用: http://rubyforge.org/tracker/index.php?func=detail&aid=17676&group_id=1814&atid=7062

后者声称已经适用。

这个github问题似乎支持了这个问题: https://github.com/ruby-prof/ruby-prof/issues/86

但我完全没有运气这两种模式在2.1.1安装中工作,例如:

require 'ruby-prof'

RubyProf.measure_mode = RubyProf::MEMORY
RubyProf.start
  1000.times do
    s = "string"
  end
RubyProf::FlatPrinter.new(RubyProf.stop).print

产地:

Thread ID: 4183000
Fiber ID: 8413080
Total: 0.000000
Sort by: self_time

 %self      total      self      wait     child     calls  name
   NaN      0.000     0.000     0.000     0.000        1   Integer#times 
   NaN      0.000     0.000     0.000     0.000        1   Global#[No method]

我甚至尝试安装ruby 1.9.3进行此分析,但rvm似乎无法找到任何旧的补丁。有没有办法让这个工作?或者放弃了这些功能?

1 个答案:

答案 0 :(得分:0)

根据ruby-prof问题,我们需要修补版本的ruby才能使用内存分析器。