- 
          
- 
                Notifications
    You must be signed in to change notification settings 
- Fork 26.4k
Performance improvements to isotonic regression. #3352
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
    I'm surprised the C compiler doesn't do this, but it seems
    to make a difference in the benchmarks.
    | thanks can you check travis failures? | 
| In particular   | 
| It sounds like  On 12 July 2014 19:08, Olivier Grisel [email protected] wrote: 
 | 
| +13kLOC of generated C :( | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's not guaranteed that either y or weight is contiguous.
| The first patch breaks some user cases by assuming the parameters to be contiguous. @robertwb if you have convincing benchmarks that prove that the use of memory views are worth the trouble of forcing arrays to be contiguous please share, otherwise my opinion is to close this pull request. The second patch seems a good idea to me. Please submit a separate PR for the second patch if you are interested in getting it in. | 
| I've already cherry-picked the second commit into master. Closing PR. | 
| Btw., I was wondering what's causing the speedup, so I inspected the GCC ( void f(double num, double denom, double *solution, size_t n)
{
    for (size_t i = 0; i < n; i++) {
        solution[i] = num / denom;
    }
}and a version of the above with a  | 
| Thanks for looking at this. Yeah, the division thing surprised me as well; your analysis is On Mon, Jul 14, 2014 at 9:08 AM, Lars Buitinck [email protected] 
 | 
No description provided.