On 26/10/14 5:34 AM, Reimar Döffinger wrote:
> On 26.10.2014, at 02:32, James Almer <jamr...@gmail.com> wrote:
>> __sync built-ins are considered legacy and will be deprecated.
>> These new memory model aware built-ins have been available since GCC 4.7.0
> 
> To me this sounds like "except for tsan, these new functions are worse in 
> every aspect, and that's with gcc 4.9, who knows what mess 4.7 will make of 
> them".
> That sounds like a very bad argument to use them by default.

It's more like "Except for the compare and exchange function, these are either 
the same 
or better/more flexible".
GCC even converts calls certain calls to __sync into the relevant __atomic at 
built time.

> Nothing against also supporting them, but to make them default I don't think 
> any performance regressions are acceptable, and we need to either test 4.7 as 
> well or there must be a measurable performance advantage.

The only one where it's almost a given a performance hit will be seen is with 
compare 
and excange, and that's why i asked if should keep using the __sync counterpart 
instead.
The rest are the same, and will potentially perform better if we choose a more 
relaxed 
model.

> IMHO.
> Note that ARM might benefit a lot if you manage to use the less strict 
> versions.

Ah, you just made realize i put x86 in the subject by mistake.

> However since it might not make a difference on x86 testing that they work 
> properly might be difficult.
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to