CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   Main CFD Forum (https://www.cfd-online.com/Forums/main/)
-   -   Fortran quad precision (https://www.cfd-online.com/Forums/main/106971-fortran-quad-precision.html)

truffaldino September 13, 2012 14:11

Fortran quad precision
 
Hello everybody,

I am looking for free fortran compiler that supports quad precision (128bit) for Windows. I will be grateful for info on existing free compilers that really support real*16. I have 64-bit windows-7 on my computer.

Thanks in advance
Truffaldino

gfoam September 18, 2012 09:19

I htink that gfortran 4.5 and further releases supports 128-bit REAL operatios. Take a look at http://gcc.gnu.org/wiki/GFortran/

truffaldino September 19, 2012 08:34

Quote:

Originally Posted by gfoam (Post 382347)
I htink that gfortran 4.5 and further releases supports 128-bit REAL operatios. Take a look at http://gcc.gnu.org/wiki/GFortran/

I have version 4.8 on my computer and it does not support real*16

truffaldino September 19, 2012 09:26

I have checked size of real*10 on version 4.8 and it shows 16bytes (128) bit, so it seeems that 128 bit precision exists on gfortran

Thanks gfoam, your answer was of help

Truffaldino

gfoam September 19, 2012 09:26

gfortran 4.7


4.7 releases, 4.7 release notes
  • OpenMP 3.1 is now supported by the C, C++ and Fortran front end.
  • The compile flag -fstack-arrays has been added, which causes that all local arrays are put on stack memory. For some programs this will improve the performance significantly. If your program uses very large local arrays, it is possible that you will have to extend your runtime limits for stack memory.
  • The -Ofast flag now also implies -fno-protect-parens and -fstack-arrays.
  • The flag -Wreal-q-constant has been added, which warns if floating-point literals have been specified using q (such as 1.0q0); the q marker is now supported as vendor extension to denote quad precision (REAL(16) or if not available REAL(10)). Consider using a kind parameter (such as in 1.0_qp) instead, which can be obtained via SELECTED_REAL_KIND.
  • Front-end optimizations can now be selected by the -ffrontend-optimize option, or deselected by the -fno-frontend-optimize option. -ffrontend-optimize is the default when any -O option is in effect.
  • When front-end optimization removes a function call, the -Wfunction-elimination option warns about the removal.
  • When performing front-end optimization, the -faggressive-function-elimination option allows the removal of duplicate function calls even for impure functions.
  • The GFORTRAN_USE_STDERR environment variable has been removed. GNU Fortran now always prints error messages to standard error. If you wish to redirect standard error, please consult the manual for your OS, shell, batch environment etc. as appropriate.
  • The -fdump-core option and GFORTRAN_ERROR_DUMPCORE environment variable have been removed. When encountering a serious error, gfortran will now always abort the program. Whether a core dump is generated depends on the user environment settings; see for POSIX shells the ulimit -c and for C shells the limit coredumpsize setting, and see the WER user-mode dumps settings on Windows.
  • The -fbacktrace option is now enabled by default. When encountering a fatal error, gfortran will attempt to print a backtrace to standard error before aborting. It can be disabled with -fno-backtrace. Note: On POSIX targets with the addr2line utility from GNU binutils, GNU Fortran can print a backtrace with function name, file name, line number information in addition to the addresses; otherwise only the addresses are printed.
  • The compile options -freal-N-real-Mhave been added. These options promote all entities on type REAL(N) to REAL(M), where N and M can be 4 and 8 and, if available, 10 and 16.
  • The compile option -finteger-4-integer-8 has been added. This option promotes all entities of type INTEGER(4) to INTEGER(8).


All times are GMT -4. The time now is 12:15.