PGI User Forum
 SearchSearch   MemberlistMemberlist     RegisterRegister   ProfileProfile    Log inLog in 

CUDA-x86.

CUDA Fortran, PGI 11.8, and gcc 4.5
Goto page Previous  1, 2, 3  Next
 
Post new topic   Reply to topic    PGI User Forum Forum Index -> Programming and Compiling
View previous topic :: View next topic  
Author Message
Senya



Joined: 20 Jun 2011
Posts: 58

PostPosted: Wed Aug 22, 2012 11:01 am    Post subject: Reply with quote

As I see, 12.2 have cuda 4.1 in its distribution, and this version try to use gcc, producing the same error.
Back to top
View user's profile
TheMatt



Joined: 06 Jul 2009
Posts: 315
Location: Greenbelt, MD

PostPosted: Wed Aug 22, 2012 11:04 am    Post subject: Reply with quote

Senya wrote:
As I see, 12.2 have cuda 4.1 in its distribution, and this version try to use gcc, producing the same error.

Hmm. That is odd. I'm doing this on a system with PGI 12.6, gcc 4.5, and I don't get the issues I had a year ago. What is the compile line that's producing the error?

Matt
Back to top
View user's profile
Senya



Joined: 20 Jun 2011
Posts: 58

PostPosted: Thu Aug 23, 2012 4:24 am    Post subject: Reply with quote

Quote:

> make
pgf95 -g -O0 -C -Mcuda=cc11 -Mcuda=4.1 -ta=nvidia:4.1,cc11 -tp=amd64 -Minfo -DCUDA -module ../module -c fldpki_acc.for
In file included from /opt/pgi/linux86-64/2012/cuda/4.1/include/cuda_runtime.h:59:0,
from /tmp/pgcudaforvQVf-fg4n-ci.gpu:1:
/opt/pgi/linux86-64/2012/cuda/4.1/include/host_config.h:82:2: ошибка: #error -- unsupported GNU version! gcc 4.6 and up are not supported!
PGF90-F-0000-Internal compiler error. Device compiler exited with error status code 0 (fldpki_acc.for: 19)
PGF90/x86-64 Linux 12.2-0: compilation aborted
make: *** [fldpki_acc.o] Ошибка 2


Code:

      Subroutine FLDPKU(F,H,NN,MM)
      use pkidat
      real, device :: H(2,KK1SO2,KK2), F(2,KK1SO2,KK2)

!$cuf kernel do(1) <<< *, MM>>>
      DO 220 J=1,MM
      H(1,1,J)=(P1F(1,1)+P2F(1,1))*F(1,1,J)
     .        -(P1F(1,2)-P2F(1,2))*F(2,1,J)
      H(2,1,J)=(P2F(1,1)+P1F(1,1))*F(1,1,J)
     .        -(P2F(1,2)-P1F(1,2))*F(2,1,J)
 220  CONTINUE
!$cuf kernel do(2) <<< (*,*), (NN,MM)>>>
      DO 230 J=1,MM
      DO 230 I=2,NN
      H(1,I,J)= P1F(I,1)*F(1,I,J)+P2F(I,1)*F(1,NN-I+2,J)
     .         -P1F(I,2)*F(2,I,J)+P2F(I,2)*F(2,NN-I+2,J)
      H(2,I,J)=-P1F(I,1)*F(2,I,J)+P2F(I,1)*F(2,NN-I+2,J)
     .         -P1F(I,2)*F(1,I,J)-P2F(I,2)*F(1,NN-I+2,J)
 230  CONTINUE
      END
Back to top
View user's profile
TheMatt



Joined: 06 Jul 2009
Posts: 315
Location: Greenbelt, MD

PostPosted: Thu Aug 23, 2012 6:03 am    Post subject: Reply with quote

Aw nuts. My guess is that you are using gcc 4.7 or higher (what does 'gcc --version' report?).

If so, I'm not sure there's an easy way around this. Looking at my install of PGI 12.8, it looks like the compiler will throw if you have anything higher than gcc 4.6.*. And looking at the CUDA 5.0 this seems to be in there as well.

Hmm. At this point, I'm a bit stumped. I'd normally say to check with the NVIDIA Forums but they're still down.[/list]
Back to top
View user's profile
Senya



Joined: 20 Jun 2011
Posts: 58

PostPosted: Thu Aug 23, 2012 8:06 am    Post subject: Reply with quote

Anyway, thank you for help.
My gcc is 4.6.3.
I think, i'll be able to get newer PGI soon, and solve problem by this.
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
Goto page Previous  1, 2, 3  Next
Page 2 of 3

 
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