meaning of the compiler output errors

Could you, please, be so kind to explain to me what these issues in the compiler output exactly mean (my compiler is pgi (pgc++) free version 17.4)?

  1. nvvmCompileProgram error: 9
    Error: /tmp/pgaccEaLfA0ljoDdI.gpu (398, 50): parse void type only allowed for function results
    I wonder how to find the source of this fail if the compiler does not write the the code line which causes it.
    PGCC-W-0155-Compiler failed to translate accelerator region
  2. Accelerator unsupported operation: opcode=ACCPLOOP.

Can you send the output of

pgaccelinfo

on your GPU machine, along with the
compile line you used that caused the problem?

dave

The compiler output is:

Scanning dependencies of target AOS_GPU_casc_acc
[ 50%] Building CXX object CMakeFiles/AOS_GPU_casc_acc.dir/nbody.cpp.o
scalevec(float3, float):
167, Generating Tesla code
cross(float3, float3):
182, Generating acc routine seq
Generating Tesla code
normalize(float3):
193, Generating acc routine seq
Generating Tesla code
Rand32(unsigned int):
218, Generating implicit acc routine seq
Generating acc routine seq
Generating Tesla code
rndv(unsigned int):
227, Generating implicit acc routine seq
Generating acc routine seq
Generating Tesla code
main:
984, Accelerator restriction: unsupported statement type: opcode=ACCPLOOP
Accelerator kernel generated
Generating Tesla code
void std::swap(T1 &, T1 &):
5, include “algorithm”
60, include “utility”
70, include “stl_pair.h”
59, include “move.h”
181, Generating implicit acc routine seq
Generating acc routine seq
Generating Tesla code
std::remove_reference::type && std::move<Particle &>(T1 &&):
5, include “algorithm”
60, include “utility”
70, include “stl_pair.h”
59, include “move.h”
102, Generating implicit acc routine seq
Generating acc routine seq
Generating Tesla code
::operator +(float3, float3):
142, Generating implicit acc routine seq
Generating acc routine seq
Generating Tesla code
nvvmCompileProgram error: 9.
Error: /tmp/pgaccU3NkdSOEjKS.gpu (398, 50): parse void type only allowed for function results
PGCC-W-0155-Compiler failed to translate accelerator region (see -Minfo messages): Device compiler exited with error status code (/home/70-gaa/source/GPU/AOS_GPU_casc_acc/nbody.cpp: 1)
PGCC/x86 Linux 17.4-0: compilation completed with warnings
[100%] Linking CXX executable AOS_GPU_casc_acc
[100%] Built target AOS_GPU_casc_acc

How I configure my project: cmake …/src -DCMAKE_C_FLAGS=pgcc -DCMAKE_CXX_FLAGS=pgc++ -DCMAKE_CXX_FLAGS=“-acc -Minfo=all -ta=nvidia”.
I have one c++ source code file, which I configure.

What does this error mean?

Scanning dependencies of target AOS_GPU_casc_acc
[ 50%] Building CXX object CMakeFiles/AOS_GPU_casc_acc.dir/nbody.cpp.o
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/alloc_traits.h: 551)
PGCC-S-0039-Use of undeclared variable (/usr/include/c++/5.3.1/bits/alloc_traits.h: 551)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/alloc_traits.h: 551)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/ptr_traits.h: 169)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/ptr_traits.h: 169)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/ptr_traits.h: 169)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/ptr_traits.h: 169)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/ptr_traits.h: 169)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/ptr_traits.h: 169)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/ptr_traits.h: 169)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/ptr_traits.h: 169)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/basic_string.h: 165)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/basic_string.h: 165)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/basic_string.h: 279)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/basic_string.h: 280)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/basic_string.h: 280)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/basic_string.h: 280)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/basic_string.h: 716)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/basic_string.h: 716)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/basic_string.h: 727)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/basic_string.h: 727)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/basic_string.h: 195)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/basic_string.h: 219)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/basic_string.h: 221)
PGCC-S-0000-Internal compiler error. BAD sptr in var_refsym 0 (/usr/include/c++/5.3.1/bits/basic_string.h: 223)
PGCC-F-0008-Error limit exceeded (/usr/include/c++/5.3.1/bits/basic_string.h: 223)
PGCC/x86 Linux 17.4-0: compilation aborted
CMakeFiles/AOS_GPU_casc_acc.dir/build.make:62: recipe for target ‘CMakeFiles/AOS_GPU_casc_acc.dir/nbody.cpp.o’ failed
make[2]: *** [CMakeFiles/AOS_GPU_casc_acc.dir/nbody.cpp.o] Error 2
CMakeFiles/Makefile2:67: recipe for target ‘CMakeFiles/AOS_GPU_casc_acc.dir/all’ failed
make[1]: *** [CMakeFiles/AOS_GPU_casc_acc.dir/all] Error 2
Makefile:83: recipe for target ‘all’ failed
make: *** [all] Error 2

I configure the project with:
cmake …/src -DCMAKE_C_COMPILER=pgcc -DCMAKE_CXX_COMPILER=pgc++ -DCMAKE_CXX_FLAGS=“-acc -Minfo=all”

Hi @and,

These are internal compiler errors (compiler bugs). Please send a reproducing example to PGI Customer Service (trs@pgroup,com) so we can investigate.

Thanks,
Mat