Re: [FFmpeg-devel] [PATCHv3 1/3] lavu/rand: add 64 bit random number generator

2016-03-19 Thread Ganesh Ajjanagadde
On Tue, Mar 15, 2016 at 6:49 PM, Rostislav Pehlivanov wrote: > On 15 March 2016 at 23:21, Ganesh Ajjanagadde wrote: > >> On Tue, Mar 15, 2016 at 10:59 AM, Derek Buitenhuis >> wrote: >> > On 3/15/2016 2:56 PM, Ronald S. Bultje wrote: >> >> Might be related to aacenc? But yes, we need to know over

Re: [FFmpeg-devel] [PATCHv3 1/3] lavu/rand: add 64 bit random number generator

2016-03-18 Thread Ganesh Ajjanagadde
On Tue, Mar 15, 2016 at 4:37 PM, Derek Buitenhuis wrote: > On 3/15/2016 10:26 PM, Ganesh Ajjanagadde wrote: >> If one wants good Gaussian samples, then yes, I need a 64 bit rng. >> Please also note that I can use av_lfg_get, it does not result in >> slowdown, since speed benefits here come from th

Re: [FFmpeg-devel] [PATCHv3 1/3] lavu/rand: add 64 bit random number generator

2016-03-15 Thread Rostislav Pehlivanov
On 15 March 2016 at 23:21, Ganesh Ajjanagadde wrote: > On Tue, Mar 15, 2016 at 10:59 AM, Derek Buitenhuis > wrote: > > On 3/15/2016 2:56 PM, Ronald S. Bultje wrote: > >> Might be related to aacenc? But yes, we need to know overall speed gain > of > >> some useful end user feature before/after th

Re: [FFmpeg-devel] [PATCHv3 1/3] lavu/rand: add 64 bit random number generator

2016-03-15 Thread Michael Niedermayer
On Wed, Mar 16, 2016 at 02:18:54AM +0100, Michael Niedermayer wrote: > On Tue, Mar 15, 2016 at 11:37:30PM +, Derek Buitenhuis wrote: > > On 3/15/2016 10:26 PM, Ganesh Ajjanagadde wrote: > > > If one wants good Gaussian samples, then yes, I need a 64 bit rng. > > > Please also note that I can us

Re: [FFmpeg-devel] [PATCHv3 1/3] lavu/rand: add 64 bit random number generator

2016-03-15 Thread Michael Niedermayer
On Tue, Mar 15, 2016 at 11:37:30PM +, Derek Buitenhuis wrote: > On 3/15/2016 10:26 PM, Ganesh Ajjanagadde wrote: > > If one wants good Gaussian samples, then yes, I need a 64 bit rng. > > Please also note that I can use av_lfg_get, it does not result in > > slowdown, since speed benefits here c

Re: [FFmpeg-devel] [PATCHv3 1/3] lavu/rand: add 64 bit random number generator

2016-03-15 Thread Michael Niedermayer
On Tue, Mar 15, 2016 at 11:37:30PM +, Derek Buitenhuis wrote: > On 3/15/2016 10:26 PM, Ganesh Ajjanagadde wrote: > > If one wants good Gaussian samples, then yes, I need a 64 bit rng. > > Please also note that I can use av_lfg_get, it does not result in > > slowdown, since speed benefits here c

Re: [FFmpeg-devel] [PATCHv3 1/3] lavu/rand: add 64 bit random number generator

2016-03-15 Thread Derek Buitenhuis
On 3/15/2016 10:26 PM, Ganesh Ajjanagadde wrote: > If one wants good Gaussian samples, then yes, I need a 64 bit rng. > Please also note that I can use av_lfg_get, it does not result in > slowdown, since speed benefits here come from the ziggurat algo. > Concretely, it is 82 cycles vs 81 cycles; to

Re: [FFmpeg-devel] [PATCHv3 1/3] lavu/rand: add 64 bit random number generator

2016-03-15 Thread Ganesh Ajjanagadde
On Tue, Mar 15, 2016 at 10:59 AM, Derek Buitenhuis wrote: > On 3/15/2016 2:56 PM, Ronald S. Bultje wrote: >> Might be related to aacenc? But yes, we need to know overall speed gain of >> some useful end user feature before/after this. > > [13:42] <@atomnuker> well, AAC just requires the random num

Re: [FFmpeg-devel] [PATCHv3 1/3] lavu/rand: add 64 bit random number generator

2016-03-15 Thread Ganesh Ajjanagadde
On Tue, Mar 15, 2016 at 10:29 AM, Derek Buitenhuis wrote: > On 3/15/2016 4:46 AM, Ganesh Ajjanagadde wrote: >> Concretely, it is nearly as fast as av_lfg_get (which only returns 32 bits), >> and has a much smaller cache (128 bits). Thus, the timings should also >> be more stable. >> >> This is nee

Re: [FFmpeg-devel] [PATCHv3 1/3] lavu/rand: add 64 bit random number generator

2016-03-15 Thread Derek Buitenhuis
On 3/15/2016 2:56 PM, Ronald S. Bultje wrote: > Might be related to aacenc? But yes, we need to know overall speed gain of > some useful end user feature before/after this. [13:42] <@atomnuker> well, AAC just requires the random numbers to be only somewhat random [13:43] <@atomnuker> you could pr

Re: [FFmpeg-devel] [PATCHv3 1/3] lavu/rand: add 64 bit random number generator

2016-03-15 Thread Ronald S. Bultje
Hi, On Tue, Mar 15, 2016 at 10:29 AM, Derek Buitenhuis < derek.buitenh...@gmail.com> wrote: > On 3/15/2016 4:46 AM, Ganesh Ajjanagadde wrote: > > Concretely, it is nearly as fast as av_lfg_get (which only returns 32 > bits), > > and has a much smaller cache (128 bits). Thus, the timings should al

Re: [FFmpeg-devel] [PATCHv3 1/3] lavu/rand: add 64 bit random number generator

2016-03-15 Thread Derek Buitenhuis
On 3/15/2016 4:46 AM, Ganesh Ajjanagadde wrote: > Concretely, it is nearly as fast as av_lfg_get (which only returns 32 bits), > and has a much smaller cache (128 bits). Thus, the timings should also > be more stable. > > This is needed because av_lfg_get<<32 | av_lfg_get is far slower, and > like

[FFmpeg-devel] [PATCHv3 1/3] lavu/rand: add 64 bit random number generator

2016-03-14 Thread Ganesh Ajjanagadde
This is based on the relatively well known xorshift128+ of Sebastiano Vigna (https://en.wikipedia.org/wiki/Xorshift) that performs very well on the BigCrush suite, is very efficient, and is thus used by a number of clients: http://xorshift.di.unimi.it/ (see Introduction). Moreover, the implementat