Thanks for the PR. Do look at my comments there.

For now, I will let the add! and others be there, but I won't go crazy 
implementing every variant for every type, since the gains are not much. 
1.2x is the kind of thing that will keep getting chipped away over time. 
The real reason is that people will be happy to install Yeppp for the 7-8x 
faster log/exp, but not for 1.2x type stuff.

Of course, PRs are always welcome to add these things, even if I think 
otherwise.

-viral

On Sunday, April 12, 2015 at 9:44:22 AM UTC+5:30, Jonathan Goldfarb wrote:
>
> I agree with this if the idea is to keep Julia scripts easily 
> comprehensible/readable, but not if speed is the only goal. Yeppp add! 
> beats the devectorized code by ~1.2x (on my machine, running the same 
> tests)I posted earlier, with trivial added benchmark.)  While this is 
> nothing to phone home about, it is something.
> At least for me, on the principle that code is read more often than it is 
> written, it makes sense to give up <2x performance for expressive nature of 
> Julia. This seems also in keeping with the goal of being within 2x of 
> equivalent C code speed.
> By the way, I submitted a PR to add evalpoly! to Yeppp.jl; this carries 
> more than a 2x speedup compared to the equivalent in pure Julia. Let me 
> know if it can be improved in some way.
> Thanks
> -Max
>
> On Sunday, April 12, 2015 at 12:02:42 AM UTC-4, Viral Shah wrote:
>>
>> I am wondering if I should just remove the add/multiply/max/min/negate 
>> methods. Those don't seem to be useful from a julia performance standpoint 
>> at all. They just add clutter to the library, and I will eventually have to 
>> write more tests.
>>
>> I wonder if we can find cases in which these outperform the obvious 
>> devectorized julia versions.
>>
>> -viral
>>
>> On Sunday, April 12, 2015 at 9:08:36 AM UTC+5:30, Viral Shah wrote:
>>>
>>> It would be interesting to compare the results of Yeppp with VML. 
>>>
>>> https://github.com/simonster/VML.jl 
>>>
>>> Kevin, thanks, I knew someone had done it, but couldn’t locate the 
>>> package. I doubt things can be faster, since Yeppp is effectively giving 
>>> you a log every 5 cycles or something like that. There’s this: 
>>>
>>> http://www.yeppp.info/benchmarks.html 
>>>
>>> -viral 
>>>
>>>
>>>
>>> > On 11-Apr-2015, at 11:06 pm, Kevin Squire <[email protected]> 
>>> wrote: 
>>> > 
>>> > Relevant previous discussions/issues 
>>> > 
>>> > 
>>> https://groups.google.com/forum/#!searchin/julia-dev/Yeppp/julia-dev/fixVZON0S8o/ChD5R1T-G0kJ
>>>  
>>> > https://groups.google.com/forum/#!topic/julia-users/o3Tbjh2eA9c 
>>> > https://github.com/JuliaLang/julia/issues/8450 
>>> > 
>>> > Cheers, 
>>> >    Kevin 
>>> > 
>>> > 
>>> > On Sat, Apr 11, 2015 at 7:10 AM, Jonathan Goldfarb <[email protected]> 
>>> wrote: 
>>> > Many thanks for the package; particularly interesting that Yeppp! is 
>>> faster than devectorized Julia code as well, when it is able to outperform 
>>> Julia. 
>>> > 
>>> > In case anyone else finds it useful, I added a small benchmark here at 
>>> this gist: https://gist.github.com/jgoldfar/7cb34d8469f92d36fb47 
>>> > 
>>> > -Max 
>>> > 
>>> > On Saturday, April 11, 2015 at 3:36:21 AM UTC-4, Viral Shah wrote: 
>>> > I have cleaned up the old Yeppp.jl repository a bit, and also added 
>>> release versions to METADATA. 
>>> > 
>>> > http://www.yeppp.info/ 
>>> > https://github.com/JuliaLang/Yeppp.jl 
>>> > 
>>> > In my benchmarks, I have found the vectorized log and exp routines 
>>> from Yeppp to be 8x faster than the ones in Base, and sin/cos/tan are also 
>>> faster. I have not found the other routines to be much faster, but I have 
>>> wrapped a few more anyways. 
>>> > 
>>> > I think the other useful routine to wrap may be evalpoly. 
>>> > 
>>> > -viral 
>>> > 
>>> > 
>>>
>>>

Reply via email to