Manta Interactive Ray Tracer Development Mailing List

Text archives Help


[Manta] Re: RE: Re: Visual Studio configuration problem


Chronological Thread 
  • From: "James Bigler" < >
  • To:
  • Subject: [Manta] Re: RE: Re: Visual Studio configuration problem
  • Date: Thu, 25 Sep 2008 07:06:34 -0600
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references; b=HG9vob+zmtQ8PW/wlxcqnp4A/BCIn+ZwH8Sh+3yU08jQ/ecIn4FLE09ufRhjCpT47G oEcnn5uhAQ7wMSMUDbwdxrVRbhlQznWhzT8qgJZQ6YfbhedjTi5JtSpaIZKDu1zw16g1 1Rz8yYZNut9SEG3JskBhonPlwoRZpUISUXsvk=

The VS compiler does wrong things to the Release code when dealing
with SSE.  My only guess is that MinSizeRel doesn't turn on some
optimizations that cause problems.  If you want to get performant code
under windows you must use the Intel ICC compiler.  Visual Studio just
doesn't work (verified for both VS 2005 and 2008).  This is a known
problem among those of us who write SSE based ray tracers (not just at
Utah).

The MANTA_SSE_CAST is a compiled test that determines if certain sse
cast intrinsics exist for the compiler.  Previously I had a long
string of macros to determine what compiler was running in order to
turn of different branches of code.  By doing a compiled test I could
determine this for all compilers future and present.

James

On Thu, Sep 25, 2008 at 6:52 AM, Bo Huang 
< >
 wrote:
> Thanks. My only SSE options were
>
> MANTA_SSE, MANTA_SSE_CAST (casting intrinsics? Under what conditions is
> this not supported?).
>
> I turned them off and the release version does run, though slower.
>
> Why would this address the problem? With those previously turned on, the
> MinSizeRel config, which I assume is 'minimum size release' compiled and
> ran fine and speedily. Same with the 'Debug' config, though sluggish.
>
> With SSE turned on, what makes 'MinSizeRel' special where 'Release'
> behaved wacked?
>
> None of the sub-projects have been converted to .icproj either.
>
> -----Original Message-----
> From: James Bigler 
> [mailto:
> Sent: Wednesday, September 24, 2008 5:31 PM
> To: 
> 
> Subject: [Manta] Re: Visual Studio configuration problem
>
> First off VS is horrible at debugging release code.  Don't trust it
> (in release mode).  If you suspect a spurious value or the code isn't
> getting somewhere, use printf to make sure that it is bad.
>
> Also, please verify (via CMake) that SSE is turned off.  VS can't
> compile the SSE code properly unless the Intel compiler is used.
>
> James
>
> On Wed, Sep 24, 2008 at 3:07 PM, Bo Huang 
> < >
>  wrote:
>>
>>
>> For Visual Studio, the 'Debug' and 'MinSizeRel' configuration work
>> perfectly. However, the 'Release' configuration and 'RelWithDebInfo'
>> configuration do not work for me.
>>
>>
>>
>> Running to debug 'RelWithDebInfo', it seems the program does not exit
>> TiledImageTraverser::renderImage(), perhaps going into an infinite
> loop, as
>> a break point after that function isn't hit.
>>
>>
>>
>> Moreover, local variables, such as
>>
>>
>>
>> int numEyes = stereo?2:1;
>>
>>
>>
>> are larger numbers as if either it hasn't been initialized, or
> corrupted due
>> to stack corruption.
>>
>>
>>
>> Could any one confirm if this is only my problem?
>>
>>
>>
>> Thanks
>
>



Archive powered by MHonArc 2.6.16.

Top of page