The Math Forum

Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Math Forum » Discussions » Inactive » comp.soft-sys.math.mathematica

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: M9 performance regression for Fold?
Replies: 0  

Advanced Search

Back to Topic List Back to Topic List  
Yi Wang

Posts: 33
Registered: 3/30/12
M9 performance regression for Fold?
Posted: Jan 28, 2014 6:08 AM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply


I noticed an over 10x performance drop on Mathematica v9.0.1 compared with v7.01 for this code:

SetSystemOptions["CatchMachineUnderflow" -> False];
Fold[{(#[[1]] Sin[10.5])/(#2 + 1), #[[2]] + Tan[#[[1]]]} &, {Sin[
10.5], 1.0}, N@Range[10^6]]

I got {0.184287, {0., 0.105747}} on v7, but got {2.311755, {0., 0.105747}} on v9. Note that the Do[...] version of above code needs about 2 seconds. Thus I suspect that on v9 the Fold code is not properly auto-compiled.

Is this a regression? (Also is there a way to see if auto-compile worked or not?)


PS: To compare, I also tried the following code, where the performance on v7 and v9 are roughly the same (v9 is on average 5% more slowly though).

AbsoluteTiming@Fold[# + Sin[#2] &, 1.0, Range[10^6]]

A difference is that here the first argument of function in Fold is a number, and in the problematic example, the first argument is a list.

PS: I noticed this issuee during a discussion at

Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© The Math Forum at NCTM 1994-2018. All Rights Reserved.