View previous topic :: View next topic |
Author |
Message |
MarkJordan
Joined: 18 Jan 2006 Posts: 11
|
Posted: Mon Apr 20, 2020 3:48 pm Post subject: Complex*32 |
|
|
I know I can get to complex*20 - 18 digit precision.
Is there any support for higher precision? |
|
Back to top |
|
|
PaulLaidler Site Admin
Joined: 21 Feb 2005 Posts: 7930 Location: Salford, UK
|
Posted: Mon Apr 20, 2020 4:51 pm Post subject: |
|
|
complex*20 is available with FTN95 but only for Win32. Higher precision is not supported. |
|
Back to top |
|
|
John-Silver
Joined: 30 Jul 2013 Posts: 1520 Location: Aerospace Valley
|
Posted: Mon Apr 20, 2020 8:43 pm Post subject: |
|
|
is there a technical reason why it's not available in x64 ? _________________ ''Computers (HAL and MARVIN excepted) are incredibly rigid. They question nothing. Especially input data.Human beings are incredibly trusting of computers and don't check input data. Together cocking up even the simplest calculation ... " |
|
Back to top |
|
|
PaulLaidler Site Admin
Joined: 21 Feb 2005 Posts: 7930 Location: Salford, UK
|
Posted: Mon Apr 20, 2020 9:36 pm Post subject: |
|
|
The hardware does not provide it. |
|
Back to top |
|
|
JohnCampbell
Joined: 16 Feb 2006 Posts: 2555 Location: Sydney
|
Posted: Tue Apr 21, 2020 2:51 am Post subject: |
|
|
Paul,
Is there a more extensive explanation ?
Is a 8087 - 80 bit hardware supported in Win32 or is it emulated in 32-bit ?
If it is available from Win32, why can't it be accessed from x64 ?
I did have a use for 80 bit use in eigenvector "filtering" (Gram-Schmidt Orthogonalization), where I was calculating a tri-product of 2 eigenvectors and mass vector. I thought I proved that 80-bit filtering was better than 64-bit, although I gave that away with the 64-bit conversion. One of those projects on the to-do list. Might get a Covid bump up the list !
John |
|
Back to top |
|
|
PaulLaidler Site Admin
Joined: 21 Feb 2005 Posts: 7930 Location: Salford, UK
|
Posted: Tue Apr 21, 2020 7:57 am Post subject: |
|
|
John
There will be but I don't have the experience and knowledge to give it.
With my limited understanding, if I wanted 80 bit reals in a 64 bit executable then I would set up a pipe to a 32 bit executable running in the background that would access the FPU. As I understand it, if there is a direct way to get to the FPU then Microsoft do not support it. |
|
Back to top |
|
|
Robert
Joined: 29 Nov 2006 Posts: 445 Location: Manchester
|
Posted: Tue Apr 21, 2020 6:31 pm Post subject: |
|
|
I think the hardware does provide it but it is difficult to use in x64. 80-bit reals use the FP stack model whereas efficient x64 code uses SSE instructions. 80-bit reals are not supported in .NET either |
|
Back to top |
|
|
JohnCampbell
Joined: 16 Feb 2006 Posts: 2555 Location: Sydney
|
Posted: Wed Apr 22, 2020 4:16 am Post subject: |
|
|
It has been a puzzle to me to know if there is still an "80-bit 8087" like FPU on modern processors. Certainly we are encouraged to use SSE or AVX instructions due to their efficiency. But if an 80-bit hardware computation existed for, say dot_product_80, it can in theory improve the accuracy, without resorting to a much slower higher precision emulation library.
It is only recently that FTN95 has provided access to SSE and AVX, so haven't we been mostly using 64-bit calculations, without the extra bits that 80-bit registers provide, at no performance cost?
I do have a dot_product_kahan (...), although only used it in test examples.
I never had a FE modelling job where 80 bit made a real difference. Not sure why, as in theory it could, although all the arrays were real*8. I did these tests many years ago. |
|
Back to top |
|
|
Robert
Joined: 29 Nov 2006 Posts: 445 Location: Manchester
|
Posted: Wed Apr 22, 2020 10:14 am Post subject: |
|
|
FTN95 x64 has always used the SSE instructions for floating point arithmetic. |
|
Back to top |
|
|
JohnCampbell
Joined: 16 Feb 2006 Posts: 2555 Location: Sydney
|
Posted: Tue May 19, 2020 10:00 am Post subject: Re: |
|
|
Robert wrote: | FTN95 x64 has always used the SSE instructions for floating point arithmetic. |
Robert, when you say "SSE instructions", do you mean 64-bit (as opposed to 80-bit) ?
I understand FTN95 /OPT does not incorporate any SSE or AVX register/vector instructions for FP calculations. |
|
Back to top |
|
|
|