POV-Ray : Newsgroups : povray.beta-test : Radiosity Status: Giving Up... Server Time
29 Jul 2024 08:17:53 EDT (-0400)
  Radiosity Status: Giving Up... (Message 91 to 100 of 194)  
<<< Previous 10 Messages Goto Latest 10 Messages Next 10 Messages >>>
From: Thorsten Froehlich
Subject: Re: Radiosity Status: Giving Up...
Date: 31 Dec 2008 19:25:37
Message: <495c0d81$1@news.povray.org>
Warp wrote:
> clipka <nomail@nomail> wrote:
>> Duh. Any mention of such things as sin, cos, log or such? I don't see any.
> 
>   I don't see them either, eg. here:
> 
> http://en.wikipedia.org/wiki/X86_instruction_listings#SIMD_instructions

Why do you *expect* to see them?

	Thorsten


Post a reply to this message

From: Thorsten Froehlich
Subject: Re: Radiosity Status: Giving Up...
Date: 31 Dec 2008 19:27:12
Message: <495c0de0$1@news.povray.org>
Warp wrote:
> Thorsten Froehlich <tho### [at] trfde> wrote:
>> Warp, could you stop theorizing and actually *use* the information already 
>> out there, supplied by Intel and plenty of other sources? SSE != SIMD
> 
>   Have you checked lately what "SSE" stands for? ;)

I have no intention to continue such an argument on semantics, this leads 
nowhere and does not change the fact that x87 FPU usage is deprecated.

	Thorsten


Post a reply to this message

From: Warp
Subject: Re: Radiosity Status: Giving Up...
Date: 31 Dec 2008 19:28:09
Message: <495c0e19@news.povray.org>
clipka <nomail@nomail> wrote:
> "x87 arithmetic is deprecated in 64-bit mode" - but not because it would
> be inferior, but simply because "the extent to which operating systems will
> continue to support x87 in the future is unknown."

  That's a really odd statement. I didn't know that the FPU or the x87
instruction set required OS support. (Can the OS even force programs to
not use x87 instructions if it wanted to? Even if it could, it would have
to be deliberate, and I can't really understand *why* it would want to
do that. It would certainly break like 99% of software out there, and for
what reason?)

-- 
                                                          - Warp


Post a reply to this message

From: Warp
Subject: Re: Radiosity Status: Giving Up...
Date: 31 Dec 2008 19:30:25
Message: <495c0ea1@news.povray.org>
Thorsten Froehlich <tho### [at] trfde> wrote:
> Warp wrote:
> > clipka <nomail@nomail> wrote:
> >> Duh. Any mention of such things as sin, cos, log or such? I don't see any.
> > 
> >   I don't see them either, eg. here:
> > 
> > http://en.wikipedia.org/wiki/X86_instruction_listings#SIMD_instructions

> Why do you *expect* to see them?

  Because you said that, according to Intel, x87 is obsolete and all code
is recommended to use SSE instead. If that's true, then it would be a
rather large setback for programs requiring trigonometric and logarithmic
calculations, as they would have to be made in software.

  I really don't see how SSE obsoletes x87.

-- 
                                                          - Warp


Post a reply to this message

From: Warp
Subject: Re: Radiosity Status: Giving Up...
Date: 31 Dec 2008 19:31:49
Message: <495c0ef5@news.povray.org>
Thorsten Froehlich <tho### [at] trfde> wrote:
> I have no intention to continue such an argument on semantics, this leads 
> nowhere and does not change the fact that x87 FPU usage is deprecated.

  So trigonometric and logarithmic functions must be calculated in
software mode now? This is supposed to be a step forward?

-- 
                                                          - Warp


Post a reply to this message

From: Thorsten Froehlich
Subject: Re: Radiosity Status: Giving Up...
Date: 31 Dec 2008 19:44:38
Message: <495c11f6$1@news.povray.org>
clipka wrote:
> Thorsten Froehlich <tho### [at] trfde> wrote:
>>> You are looking at the wrong manual. This manual does not tell you how
>>> to do something but what is available.
>> ...
>> I guess it would help if M$ would not call x86-64 "AMD64" in older documents...
> 
> I'm not surprised that they did, because that's what the original implementation
> was named...
> 
>>
<http://download.microsoft.com/download/5/b/5/5b5bec17-ea71-4653-9539-204a672f11cf/AMD64_PortApp.doc>
>> <http://developer.amd.com/pages/62720069_4.aspx>
> 
> I still don't get the point.

x87 is "bad" because the FPU stack architecture (effectively only having two 
registers) makes it next to impossible to schedule instructions in a 
compiler in any reasonable way. SSE provides eight registers instead, 
reducing register pressure and hence making floating-point computations more 
efficient.

That is why AMD/MS defined x86-64 to pass floating-point values by SSE 
registers. This change enables all kinds of common optimizations the non-x86 
world has enjoyed for decades. Of course, all this has nothing to really do 
with x86-64, it just happens that as an ABI change was needed, this old 
issue has been fixed while also adding 64-bit integer support.

> There is no mention that SSE2 could do the same transcendental functions without
> some additional piece of software, and I wonder whether that will do good to
> performance.

In essence x86 is the only architecture where more than sqrt is still 
supported in microcode hardware. Doing this in software is much more 
desirable and efficient.

	Thorsten


Post a reply to this message

From: Thorsten Froehlich
Subject: Re: Radiosity Status: Giving Up...
Date: 31 Dec 2008 19:47:54
Message: <495c12ba$1@news.povray.org>
Warp wrote:
> Thorsten Froehlich <tho### [at] trfde> wrote:
>> Warp wrote:
>>> clipka <nomail@nomail> wrote:
>>>> Duh. Any mention of such things as sin, cos, log or such? I don't see any.
>>>   I don't see them either, eg. here:
>>>
>>> http://en.wikipedia.org/wiki/X86_instruction_listings#SIMD_instructions
> 
>> Why do you *expect* to see them?
> 
>   Because you said that, according to Intel, x87 is obsolete and all code
> is recommended to use SSE instead. If that's true, then it would be a
> rather large setback for programs requiring trigonometric and logarithmic
> calculations, as they would have to be made in software.

Clearly you do not know much about floating-point units in modern processors 
then. You actually want to do it is software because that is more efficient 
(see my other post). x87 is pretty much the last architecture to still have 
microcode ops for more than sqrt.

	Thorsten


Post a reply to this message

From: Thorsten Froehlich
Subject: Re: Radiosity Status: Giving Up...
Date: 31 Dec 2008 19:52:10
Message: <495c13ba$1@news.povray.org>
Warp wrote:
> clipka <nomail@nomail> wrote:
>> "x87 arithmetic is deprecated in 64-bit mode" - but not because it would
>> be inferior, but simply because "the extent to which operating systems will
>> continue to support x87 in the future is unknown."
> 
>   That's a really odd statement. I didn't know that the FPU or the x87
> instruction set required OS support. (Can the OS even force programs to
> not use x87 instructions if it wanted to?

Yes, by not saving and restoring the x87 "register" stack when switching 
threads or making operating system calls. You need OS support for that.

	Thorsten


Post a reply to this message

From: clipka
Subject: Re: Radiosity Status: Giving Up...
Date: 31 Dec 2008 20:05:01
Message: <web.495c1662cd9d1e7530acaf600@news.povray.org>
>   Besides the basic operations there's sqrt, but no trigonometric nor
> logarithmic functions. x87 has those (although only base-2 logarithms
> are supported directly).

Only base-2 logarithms? Hey, big deal :)

Base-x logarithms (with constant x) are easily done computing the base-2
logarithm and dividing the result by a constant (namely the base-2 logarithm of
x).

But I guess I'm not telling you any news here.

(I was a bit surprised to find that the supported base is 2, not e - but
thinking about again it's straightforward of course, and I wouldn't be
surprised if computing log2 would actually be a piece of cake on a binary
computer, maybe even easier than a sqrt.)


Post a reply to this message

From: clipka
Subject: Re: Radiosity Status: Giving Up...
Date: 31 Dec 2008 20:10:00
Message: <web.495c1775cd9d1e7530acaf600@news.povray.org>
Warp <war### [at] tagpovrayorg> wrote:
>   That's a really odd statement. I didn't know that the FPU or the x87
> instruction set required OS support. (Can the OS even force programs to
> not use x87 instructions if it wanted to? Even if it could, it would have
> to be deliberate, and I can't really understand *why* it would want to
> do that. It would certainly break like 99% of software out there, and for
> what reason?)

Faster task switching, and less mem requirements for task information.

Currently, a task switch needs to save x87 FPU registers.


Post a reply to this message

<<< Previous 10 Messages Goto Latest 10 Messages Next 10 Messages >>>

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.