PGI User Forum
 SearchSearch   MemberlistMemberlist     RegisterRegister   ProfileProfile    Log inLog in 

CUDA-x86.

selected_real_kind on AMD Opteron?

 
Post new topic   Reply to topic    PGI User Forum Forum Index -> Programming and Compiling
View previous topic :: View next topic  
Author Message
uncle_tom



Joined: 16 Aug 2004
Posts: 4

PostPosted: Mon Aug 16, 2004 8:12 am    Post subject: selected_real_kind on AMD Opteron? Reply with quote

Hi,

we have some problems porting a numerical model to our AMD Opteron server, using pgf90 version 5.2.

As the model comes from 32bit, it says

INTEGER, PARAMETER :: dp = SELECTED_REAL_KIND(12,307)

and there are a lot of functions like

ELEMENTAL REAL(dp) FUNCTION func1(in1, in2, in3)

Everything was fine on 32bit systems, but we just don't know how to compile this stuff on an Opteron. We used this Intel thing before, so it is our first try with pgf90.

The pfg90 says:

PGF90-S-0087-Non-constant expression where constant expression required (program.f90: 285)
PGF90-S-0081-Illegal selector - KIND parameter has unknown value for data type (program.f90: 285)

(line 285 is this ELEMENTAL REAL(dp) FUNCTION... line)

It doesn't seem to be a pgf90 problem, but maybe there's someone developing under AMD's 64bit, using pgf90? Is there an 'easy' solution like just typing INTEGER, PARAMETER :: dp = SELECTED_REAL_KIND(something else than 12,307)?

Thanx very much,

Thomas
Back to top
View user's profile
mkcolg



Joined: 30 Jun 2004
Posts: 6146
Location: The Portland Group Inc.

PostPosted: Tue Aug 17, 2004 3:11 pm    Post subject: Might be a compiler bug Reply with quote

Hi Thomas,

It looks to us like this might be a problem with the compiler's handling of ELEMENTAL rather than an issue with your 64-bit port. Could you create a small test case from you code and send it with an explaination of the problem to trs@pgroup.com?

Thanks,
Mat
Back to top
View user's profile
mkcolg



Joined: 30 Jun 2004
Posts: 6146
Location: The Portland Group Inc.

PostPosted: Tue Aug 17, 2004 3:38 pm    Post subject: Possible Work around Reply with quote

Hi Thomas,

You might try moving "ELEMENTAL" after "REAL(dp)"

Code:
ELEMENTAL REAL(dp) FUNCTION func1(in1, in2, in3)

to
Code:
REAL(dp) ELEMENTAL FUNCTION func1(in1, in2, in3)


This seems to work for us, but please still send us a problem report so we can get this bug fixed.

Thanks,
Mat
Back to top
View user's profile
uncle_tom



Joined: 16 Aug 2004
Posts: 4

PostPosted: Wed Aug 18, 2004 12:18 am    Post subject: Work around works! Reply with quote

Hi Mat,

that's great!

I changed all this ELEMENTAL stuff (moving it AFTER real(dp)),
and everything compiles fine!

Thanks very much for your help!!

I will still send a short 'problem' report on this to the email adress you mentioned.


Thanks,

Thomas
Back to top
View user's profile
Display posts from previous:   
Post new topic   Reply to topic    PGI User Forum Forum Index -> Programming and Compiling All times are GMT - 7 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © phpBB Group