Backport #3279
closedBigMath::log is very slow
Description
=begin
http://bugs.jruby.org/4787 で、この関数は非常に遅いと言う報告がありました。JRubyでもRubiniusでも遅いので是非ともMRIの方で対処して欲しいです。
上のチケットで示されているパッチを試したところ、要求された精度までは正確な物を返すようです。例えば log(BigDecimal("1000"),100)だと小数点以下110桁くらい、log(BigDecimal("0.0001"),200)だと210桁くらい。
検討して下さい。これが改善されるのであれば1.8へのバックポートも重ねて検討して下さい。
=end
Updated by mrkn (Kenta Murata) over 14 years ago
=begin
むらたです。
On 2010/05/12, at 14:16, Hiro Asari wrote:
http://bugs.jruby.org/4787 で、この関数は非常に遅いと言う報告がありました。
JRubyでもRubiniusでも遅いので是非ともMRIの方で対処して欲しいです。上のチケットで示されているパッチを試したところ、要求された精度までは正確な物を返すようです。例えば log(BigDecimal("1000"),100)だと小数点以下110桁くらい、log(BigDecimal("0.0001"),200)だと210桁くらい。
検討して下さい。これが改善されるのであれば1.8へのバックポートも重ねて検討して下さい。
上記チケットのパッチは trunk にマージします。
ruby_1_9_2 ブランチへのバックポートも問題ないと思いますので同時にやります。
1.8 へのバックポートについては私は判断できませんので、
別のチケットを作成し卜部さんにアサインしておきます。
--
Kenta Murata
OpenPGP FP = FA26 35D7 4F98 3498 0810 E0D5 F213 966F E9EB 0BCC
本を書きました!!
『Ruby 逆引きレシピ』 http://www.amazon.co.jp/dp/4798119881/mrkn-22
E-mail: mrkn@mrkn.jp
twitter: http://twitter.com/mrkn/
blog: http://d.hatena.ne.jp/mrkn/
=end
Updated by mrkn (Kenta Murata) over 14 years ago
- Status changed from Open to Assigned
- Assignee set to mrkn (Kenta Murata)
=begin
=end
Updated by hasari (Hiro Asari) over 14 years ago
=begin
追記しておきます。JRubyでは1.9のライブラリにおいては遅さは改善されているようです。http://bit.ly/avfTCU
Rubiniusではまだまだ遅い(bigdecimal/math.rbを差し替えて試しました)ですので、このパッチを取り込んでもらいたい、という方向に変わりはありません。あと、EvanとBrianにもこの点には注意を喚起しましたので、改善が施される可能性はあります。
宜しくお願いします。
=end
Updated by mame (Yusuke Endoh) over 14 years ago
=begin
r27747 で trunk は修正済みですので、1.9.1 の backport に移しておきます。
--
Yusuke Endoh mame@tsg.ne.jp
=end
Updated by jeremyevans0 (Jeremy Evans) over 5 years ago
- Description updated (diff)
- Status changed from Assigned to Closed