<div dir="ltr">Hey Stuart, we should coordinate.</div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Apr 28, 2016 at 4:11 PM, Stuart Mentzer <span dir="ltr"><<a href="mailto:osgforum@tevs.eu" target="_blank">osgforum@tevs.eu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Sebastian,<br>
<span class=""><br>
<br>
SMesserschmidt wrote:<br>
> Can you elaborate on the specific versions used for the 3rd-party libraries? Especially if you compiled against Qt and possibly which version.<br>
<br>
<br>
</span>I built against Qt 5.6 and osgQt was built. I used the latest version of dependencies:<br>
curl 7.48.0<br>
freetype 2.6.3<br>
giflib 5.1.4<br>
glut 3.7<br>
libjpeg 9b<br>
libpng 1.6.21<br>
libtiff 4.0.6<br>
minizip GitHub tip<br>
zlib 1.2.8<br>
<span class=""><br>
<br>
> Interesting, can you point to some sources why the /fp:fast is needed<br>
> for auto-vectorization? I'm pretty sure I've seen at least SSE2<br>
> vectorization on some meta-programming matrix code of mine. Precision<br>
> is  a real issue for me, so forgive my skepticism.<br>
<br>
<br>
</span>Yes, it is hard to find the documentation on this. The "fast" option is required for floating point loops to fully auto-vectorize because vectorization can reorder operations, thus breaking strict IEEE rules. Similarly, if you put #pragma simd on a loop it will enable "fast" for you. A reference for this with VC++ is:<br>
<a href="https://blogs.msdn.microsoft.com/vcblog/2015/10/19/do-you-prefer-fast-or-precise/" rel="noreferrer" target="_blank">https://blogs.msdn.microsoft.com/vcblog/2015/10/19/do-you-prefer-fast-or-precise/</a>  (see A7. Auto-Vectorization)<br>
For Intel C++ one reference is the comment by Tim P. (who knows Intel compilers) in:<br>
<a href="https://software.intel.com/en-us/forums/intel-c-compiler/topic/508146" rel="noreferrer" target="_blank">https://software.intel.com/en-us/forums/intel-c-compiler/topic/508146</a><br>
where he says "/fp: options other than fast prevent vectorization which depends on optimizing order of operations"<br>
<br>
It is probably most accurate to say that some vectorization is possible without the "fast" options but avoiding associativity limits vectorization. I'm not sure if /fp:fast=1 gives the full auto-vectorization with less precision loss. It would be good to have an option that allows reordering for loop vectorization but still uses the full precision math library calls, but I don't think that exists. I get the sensitivity to precision, which is why I'm trying to indicate that this first Intel C++ build is sort of experimental. Once we give it a workout and see the positive and negative effects of various options we'll know better what build variations are worth providing.<br>
<br>
Regards,<br>
<span class="">Stuart<br>
<br>
------------------<br>
Read this topic online here:<br>
</span><a href="http://forum.openscenegraph.org/viewtopic.php?p=67017#67017" rel="noreferrer" target="_blank">http://forum.openscenegraph.org/viewtopic.php?p=67017#67017</a><br>
<div class="HOEnZb"><div class="h5"><br>
<br>
<br>
<br>
<br>
_______________________________________________<br>
osg-users mailing list<br>
<a href="mailto:osg-users@lists.openscenegraph.org">osg-users@lists.openscenegraph.org</a><br>
<a href="http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org" rel="noreferrer" target="_blank">http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div style="text-align:center">Chris 'Xenon' Hanson, omo sanza lettere. Xenon@AlphaPixel.com <a href="http://www.alphapixel.com/" target="_blank">http://www.alphapixel.com/</a></div><div style="text-align:center">Training • Consulting • Contracting</div><div style="text-align:center">3D • Scene Graphs (Open Scene Graph/OSG) • OpenGL 2 • OpenGL 3 • OpenGL 4 • GLSL • OpenGL ES 1 • OpenGL ES 2 • OpenCL</div><div style="text-align:center"><span style="font-size:12.8000001907349px">Legal/IP •</span><span style="font-size:12.8000001907349px"> </span><span style="font-size:12.8000001907349px">Code Forensics •</span><span style="font-size:12.8000001907349px"> </span>Digital Imaging • GIS • GPS • osgEarth • Terrain • Telemetry • Cryptography • LIDAR • Embedded • Mobile • iPhone/iPad/iOS • Android</div><div style="text-align:center"><a href="https://twitter.com/alphapixel" target="_blank">@alphapixel</a> <a href="http://facebook.com/alphapixel" target="_blank">facebook.com/alphapixel</a> (775) 623-PIXL [7495]</div></div></div></div></div>
</div>