PGI User Forum
 SearchSearch   MemberlistMemberlist     RegisterRegister   ProfileProfile    Log inLog in 

Free OpenACC Webinar

PGF90-W-0155-Compiler failed ... with PGI 12.4
Goto page Previous  1, 2, 3, 4  Next
 
Post new topic   Reply to topic    PGI User Forum Forum Index -> Accelerator Programming
View previous topic :: View next topic  
Author Message
mkcolg



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

PostPosted: Thu May 17, 2012 11:57 am    Post subject: Reply with quote

Hi Xavier,

This looks to be the same issue as TPR##18639 which produces the same ICE message when compiling certain code with "-Mcuda". As is the case with yours, the code does not contain any CUDA Fortran constructs.

This issue has been fixed with the fix being available in the 12.5 release.

Best Regards,
Mat
Back to top
View user's profile
xlapillonne



Joined: 16 Feb 2011
Posts: 69

PostPosted: Thu Jun 07, 2012 4:13 am    Post subject: Reply with quote

Hi,

Are there any news concerning the "PGF90-W-0155-Compiler failed to translate accelerator region" I was seeing in my code (TPR#18694).

I have tried with 12.5 and I now get a different message, and still can't compile :

Code:

PGF90-W-0155-Compiler failed to translate accelerator region (see -Minfo message
s): Load of NULL symbol (../src/organize_newphysics.f90: 551)
PGF90-W-0155-Compiler failed to translate accelerator region (see -Minfo message
s): Load of NULL symbol (../src/organize_newphysics.f90: 578)


If you have any suggestion for a workaround, or a way to identify the problem I would be interested.

Note, as already mentioned, the code works with 12.3, although I am always getting strange messages about live-out variables, which I would like to understand e.g.:

Code:

    574, Accelerator restriction: induction variable live-out from loop: .dY0008
    575, Accelerator restriction: induction variable live-out from loop: .dY0007
    578, Generating compute capability 1.3 binary
         Generating compute capability 2.0 binary
    580, Accelerator restriction: scalar variable live-out from loop: .dY0010
         Accelerator kernel generated
        580, !$acc do parallel, vector(256) ! blockidx%x threadidx%x
             CC 1.3 : 24 registers; 184 shared, 12 constant, 0 local memory bytes; 50% occupancy
             CC 2.0 : 20 registers; 4 shared, 196 constant, 0 local memory bytes; 100% occupancy



Best regards,

Xavier
Back to top
View user's profile
mkcolg



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

PostPosted: Thu Jun 07, 2012 9:34 am    Post subject: Reply with quote

Hi Xavier,

Yes. According to the notes in the TPR report, the error seemed to get worse in 12.5 but is fixed in the 12.6 pre-release compilers. I double checked and do show that the original error no longer occurs. Though, the new assembler errors with -Mcuda do still occur in the pre-release. I'll report this and hopefully we can get them fixed before 12.6 is released.

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



Joined: 16 Feb 2011
Posts: 69

PostPosted: Fri Jun 08, 2012 3:37 am    Post subject: Reply with quote

Great news, thanks a lot.

Also could you tell me if the live-out variable messages have disapear in the pre-release. I think this may be related to other issues. Indeed in order to be able to compile and run the code with previous PGI release (12.3 and below), I had to trick the compiler, by adding some dummy loops. Here is an example (in organize_newphysics.f90):



Code:

          !$acc region do kernel, parallel &
          !$acc& vector(256), private(ip,k,i,j), independent 
          DO ip = 1, ipend
             !XL: PGI 12.1 bug?: This dummy loop forces the compiler to execute the ip loop on accelerator
             DO k=1,1 !dummy  k loop
            i = mind_ilon(ip,ib)
            j = mind_jlat(ip,ib)
            skyview_b(ip)= skyview(i,j)
            slo_asp_b(ip)= slo_asp(i,j)
            slo_ang_b(ip)= slo_ang(i,j)
            ENDDO !end dummy k loop
          ENDDO
          !$acc end region
       ENDIF


If I remove the k loop going from 1 to 1, the compiler fails to generate an accelerated region.
This is fine, but I don't know if I am hidding some more serious issues with this workaround.

Also since I send you the code, I have noticed a some errors (from my side) with respect to some array update. They don't affect any of the messages nor the compiler error with 12.4 and 12.5, but to be sure I'll send you a corrected version of the code via trs.

Xavier
Back to top
View user's profile
mkcolg



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

PostPosted: Fri Jun 08, 2012 9:30 am    Post subject: Reply with quote

Hi Xavier,

Quote:
Also could you tell me if the live-out variable messages have disapear in the pre-release.
Yes, these have been fixed as well. The problem was a temporary variable to hold a loop trip count was not being marked as private. Since the loop was in a contained subprogram, this made the variable visible to the outer subprogram and thus the 'live-out' message.

Quote:
Indeed in order to be able to compile and run the code with previous PGI release (12.3 and below), I had to trick the compiler, by adding some dummy loops. Here is an example (in organize_newphysics.f90):
One of your colleagues reported a similar issue in which serial sections of device code weren't being offload correctly to the GPU. This will also be fixed in 12.6.
Quote:
They don't affect any of the messages nor the compiler error with 12.4 and 12.5, but to be sure I'll send you a corrected version of the code via trs.
Please do. Tiziano's issue may or may not be related to yours so if there is still a problem, we'ed like to know.

Thanks,
Mat
Back to top
View user's profile
Display posts from previous:   
Post new topic   Reply to topic    PGI User Forum Forum Index -> Accelerator Programming All times are GMT - 7 Hours
Goto page Previous  1, 2, 3, 4  Next
Page 2 of 4

 
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