Displaying 4 results from an estimated 4 matches for "fibonnacci".
Did you mean:
fibonacci
2015 Feb 05
5
[LLVMdev] RFC: Recursive inlining
...tack is
> > strictly linear. Pushes are followed by pops. But I don't think this
> > is the most interesting case for recursion in real programs. I see
> > (qualitatively, poorly) 3 reasons for recursion in code that should
> > go fast:
> >
> >
> > 1. A fibonnacci function in a microbenchmark or compiler shootout. I
> > think we can safely ignore this usecase...
> > 2. Divide and conquer algorithms. Quicksort, FFT butterflies, etc.
> > 3. Traversing a data structure, where the recursion is simply to get
> > to the leaves which is wher...
2015 Feb 05
5
[LLVMdev] RFC: Recursive inlining
...hts.
The above transform works because the access pattern to the stack is
strictly linear. Pushes are followed by pops. But I don't think this is the
most interesting case for recursion in real programs. I see (qualitatively,
poorly) 3 reasons for recursion in code that should go fast:
1. A fibonnacci function in a microbenchmark or compiler shootout. I
think we can safely ignore this usecase...
2. Divide and conquer algorithms. Quicksort, FFT butterflies, etc.
3. Traversing a data structure, where the recursion is simply to get to
the leaves which is where all the fun stuff happens.
Points...
2012 Apr 25
4
delayedAssign changing values
I'm not sure if this is a known peculiarity or a bug, but I stumbled across what I think is very odd behavior from delayedAssign. In the below example x switches values the first two times it is evaluated.
> delayedAssign("x", {x <- 2; x+3})
> x==x
[1] FALSE
> delayedAssign("x", {x <- 2; x+3})
> x
[1] 5
> x
[1] 2
The ?delayedAssign documentation says
2015 Feb 18
5
[LLVMdev] RFC: Recursive inlining
...tack is
> > strictly linear. Pushes are followed by pops. But I don't think this
> > is the most interesting case for recursion in real programs. I see
> > (qualitatively, poorly) 3 reasons for recursion in code that should
> > go fast:
> >
> >
> > 1. A fibonnacci function in a microbenchmark or compiler shootout.
> > I
> > think we can safely ignore this usecase...
> > 2. Divide and conquer algorithms. Quicksort, FFT butterflies, etc.
> > 3. Traversing a data structure, where the recursion is simply to get
> > to the leaves whi...