INFO: No output directory specified (--dir) INFO: Using directory: "template_simple_20251212_121227" INFO: Regenerating c-file: template_simple.c WARNING: Full-path code-generator "/u/data/pkwi/McStas/mcstas/3.x-dev/bin/mcstas-antlr -I$MCSTAS" not found!! WARNING: Attempting replacement by "mcstas-antlr -I$MCSTAS" DEBUG: CMD: mcstas-antlr -I$MCSTAS -t -o ./template_simple.c template_simple.instr No initialization present? ----------------------------------------------------------- Generating single GPU kernel or single CPU section layout: ----------------------------------------------------------- Generating GPU/CPU -DFUNNEL layout: -> GPU kernel from component origin ----------------------------------------------------------- DEBUG: CMD: mcstas-antlr -I$MCSTAS finished INFO: Recompiling: ./template_simple.out DEBUG: CMD: nvc -o ./template_simple.out ./template_simple.c -lm -Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,--allow-shlib-undefined -Wl,-rpath,/u/data/pkwi/McStas/mcstas/3.x-dev/miniconda3/lib -Wl,-rpath-link,/u/data/pkwi/McStas/mcstas/3.x-dev/miniconda3/lib -L/u/data/pkwi/McStas/mcstas/3.x-dev/miniconda3/lib -mtune=haswell -fPIC -O2 -isystem /u/data/pkwi/McStas/mcstas/3.x-dev/miniconda3/include -DUSE_MPI -lmpi -Wl,-rpath,/opt/nvidia/hpc_sdk/Linux_x86_64/25.9/comm_libs/12.9/openmpi4/openmpi-4.1.5/lib -L,/opt/nvidia/hpc_sdk/Linux_x86_64/25.9/comm_libs/12.9/openmpi4/openmpi-4.1.5/lib -I/opt/nvidia/hpc_sdk/Linux_x86_64/25.9/comm_libs/12.9/openmpi4/openmpi-4.1.5/include -fast -Minfo=accel -acc=gpu -gpu=mem:managed -DOPENACC "./template_simple.c", line 93: warning: Routine "mcgenstate" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] _class_particle mcgenstate(void); ^ Remark: individual warnings can be suppressed with "--diag_suppress " "./template_simple.c", line 95: warning: Routine "mcsetstate" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] _class_particle mcsetstate(double x, double y, double z, double vx, double vy, double vz, double t, double sx, double sy, double sz, double p, int mcgravitation, void * mcMagnet, int allow_backprop); ^ "./template_simple.c", line 97: warning: Routine "mcgetstate" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] _class_particle mcgetstate(_class_particle mcparticle, double * x, double * y, double * z, double * vx, double * vy, double * vz, double * t, double * sx, double * sy, double * sz, double * p); ^ "./template_simple.c", line 111: warning: Routine "particle_getvar" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] double particle_getvar(_class_particle *p, char *name, int *suc); ^ "./template_simple.c", line 115: warning: Routine "str_comp" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] int str_comp(char *str1, char *str2); ^ "./template_simple.c", line 143: warning: Routine "particle_getvar_void" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] void* particle_getvar_void(_class_particle *p, char *name, int *suc); ^ "./template_simple.c", line 115: warning: Routine "str_comp" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] int str_comp(char *str1, char *str2); ^ "./template_simple.c", line 175: warning: Routine "particle_setvar_void" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] int particle_setvar_void(_class_particle *, char *, void*); ^ "./template_simple.c", line 200: warning: Routine "particle_setvar_void_array" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] int particle_setvar_void_array(_class_particle *, char *, void*, int); ^ "./template_simple.c", line 213: warning: Routine "particle_restore" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] void particle_restore(_class_particle *p, _class_particle *p0); ^ "./template_simple.c", line 230: warning: Routine "particle_getuservar_byid" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] double particle_getuservar_byid(_class_particle *p, int id, int *suc){ ^ "./template_simple.c", line 241: warning: Routine "particle_uservar_init" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] void particle_uservar_init(_class_particle *p){ ^ "./template_simple.c", line 308: warning: Routine "noprintf" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] int noprintf(); ^ "./template_simple.c", line 310: warning: Routine "str_len" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] size_t str_len(const char *s); ^ "./template_simple.c", line 661: warning: Routine "mcget_ncount" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] unsigned long long int mcget_ncount(void); /* wrapper to set mcncount */ ^ "./template_simple.c", line 882: warning: Routine "_randnorm2" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] double _randnorm2(randstate_t* state); ^ "./template_simple.c", line 899: warning: Routine "kiss_srandom" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] uint64_t *kiss_srandom(uint64_t state[7], uint64_t seed); ^ "./template_simple.c", line 901: warning: Routine "kiss_random" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] uint64_t kiss_random(uint64_t state[7]); ^ "./template_simple.c", line 909: warning: Routine "_rand01" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] double _rand01(randstate_t* state); ^ "./template_simple.c", line 911: warning: Routine "_randpm1" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] double _randpm1(randstate_t* state); ^ "./template_simple.c", line 913: warning: Routine "_rand0max" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] double _rand0max(double max, randstate_t* state); ^ "./template_simple.c", line 915: warning: Routine "_randminmax" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] double _randminmax(double min, double max, randstate_t* state); ^ "./template_simple.c", line 917: warning: Routine "_randtriangle" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] double _randtriangle(randstate_t* state); ^ "./template_simple.c", line 1013: warning: Routine "coords_set" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] Coords coords_set(MCNUM x, MCNUM y, MCNUM z); ^ "./template_simple.c", line 1015: warning: Routine "coords_get" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] Coords coords_get(Coords a, MCNUM *x, MCNUM *y, MCNUM *z); ^ "./template_simple.c", line 1017: warning: Routine "coords_add" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] Coords coords_add(Coords a, Coords b); ^ "./template_simple.c", line 1019: warning: Routine "coords_sub" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] Coords coords_sub(Coords a, Coords b); ^ "./template_simple.c", line 1021: warning: Routine "coords_neg" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] Coords coords_neg(Coords a); ^ "./template_simple.c", line 1023: warning: Routine "coords_scale" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] Coords coords_scale(Coords b, double scale); ^ "./template_simple.c", line 1025: warning: Routine "coords_sp" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] double coords_sp(Coords a, Coords b); ^ "./template_simple.c", line 1027: warning: Routine "coords_xp" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] Coords coords_xp(Coords b, Coords c); ^ "./template_simple.c", line 1029: warning: Routine "coords_len" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] double coords_len(Coords a); ^ "./template_simple.c", line 4640: warning: variable "num" was declared but never referenced [declared_but_not_referenced] int num = 3; ^ "./template_simple.c", line 6341: warning: variable "status" was set but never used [set_but_not_used] int status; ^ "./template_simple.c", line 7069: warning: variable "tc2" was set but never used [set_but_not_used] Coords tc1, tc2; ^ "./template_simple.c", line 7192: warning: incompatible redefinition of macro "exit" (declared at line 640) [bad_macro_redef] #define exit(...) noprintf() ^ "./template_simple.c", line 7204: warning: Routine "class_Progress_bar_trace" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] _class_Progress_bar *class_Progress_bar_trace(_class_Progress_bar *_comp, _class_particle *_particle) { ^ "./template_simple.c", line 7300: warning: Routine "raytrace" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] int raytrace(_class_particle* _particle) { /* single event propagation, called by mccode_main for template_simple:TRACE */ ^ "./template_simple.c", line 7908: warning: variable "t" was declared but never referenced [declared_but_not_referenced] time_t t; ^ "./template_simple.c", line 7909: warning: variable "ct" was set but never used [set_but_not_used] clock_t ct; ^ "./template_simple.c", line 1517: warning: variable "mcstartdate" was set but never used [set_but_not_used] static long mcstartdate = 0; /* start simulation time */ ^ "./template_simple.c", line 2986: warning: function "strcpy_valid" was declared but never referenced [declared_but_not_referenced] static char *strcpy_valid(char *valid, char *original) ^ mcgenstate: 104, Generating acc routine seq Generating NVIDIA GPU code particle_getvar: 118, Generating acc routine seq Generating NVIDIA GPU code particle_getvar_void: 150, Generating acc routine seq Generating NVIDIA GPU code particle_setvar_void: 177, Generating acc routine seq Generating NVIDIA GPU code particle_setvar_void_array: 202, Generating acc routine seq Generating NVIDIA GPU code particle_restore: 214, Generating acc routine seq Generating NVIDIA GPU code particle_getuservar_byid: 230, Generating acc routine seq Generating NVIDIA GPU code particle_uservar_init: 241, Generating acc routine seq Generating NVIDIA GPU code noprintf: 1565, Generating acc routine seq Generating NVIDIA GPU code str_comp: 1569, Generating acc routine seq Generating NVIDIA GPU code str_len: 1578, Generating acc routine seq Generating NVIDIA GPU code mcget_ncount: 4258, Generating acc routine seq Generating NVIDIA GPU code coords_set: 4692, Generating acc routine seq Generating NVIDIA GPU code coords_get: 4703, Generating acc routine seq Generating NVIDIA GPU code coords_add: 4712, Generating acc routine seq Generating NVIDIA GPU code coords_sub: 4724, Generating acc routine seq Generating NVIDIA GPU code coords_neg: 4736, Generating acc routine seq Generating NVIDIA GPU code coords_scale: 4746, Generating acc routine seq Generating NVIDIA GPU code coords_sp: 4756, Generating acc routine seq Generating NVIDIA GPU code coords_xp: 4764, Generating acc routine seq Generating NVIDIA GPU code coords_len: 4774, Generating acc routine seq Generating NVIDIA GPU code coords_print: 4796, Generating acc routine seq Generating NVIDIA GPU code coords_norm: 4803, Generating acc routine seq Generating NVIDIA GPU code rot_set_rotation: 4849, Generating acc routine seq Generating NVIDIA GPU code rot_test_identity: 4884, Generating acc routine seq Generating NVIDIA GPU code rot_mul: 4895, Generating acc routine seq Generating NVIDIA GPU code rot_copy: 4912, Generating acc routine seq Generating NVIDIA GPU code rot_transpose: 4923, Generating acc routine seq Generating NVIDIA GPU code rot_apply: 4939, Generating acc routine seq Generating NVIDIA GPU code vec_prod_func: 4968, Generating acc routine seq Generating NVIDIA GPU code scalar_prod: 4979, Generating acc routine seq Generating NVIDIA GPU code norm_func: 4983, Generating acc routine seq Generating NVIDIA GPU code mccoordschange: 5160, Generating acc routine seq Generating NVIDIA GPU code mccoordschange_polarisation: 5191, Generating acc routine seq Generating NVIDIA GPU code normal_vec: 5208, Generating acc routine seq Generating NVIDIA GPU code solve_2nd_order: 5307, Generating acc routine seq Generating NVIDIA GPU code _randvec_target_circle: 5391, Generating acc routine seq Generating NVIDIA GPU code _randvec_target_rect_angular: 5457, Generating acc routine seq Generating NVIDIA GPU code _randvec_target_rect_real: 5534, Generating acc routine seq Generating NVIDIA GPU code kiss_srandom: 5806, Generating acc routine seq Generating NVIDIA GPU code kiss_random: 5818, Generating acc routine seq Generating NVIDIA GPU code _hash: 5850, Generating acc routine seq Generating NVIDIA GPU code _randnorm2: 5891, Generating acc routine seq Generating NVIDIA GPU code _randtriangle: 5902, Generating acc routine seq Generating NVIDIA GPU code _rand01: 5907, Generating acc routine seq Generating NVIDIA GPU code _randpm1: 5915, Generating acc routine seq Generating NVIDIA GPU code _rand0max: 5923, Generating acc routine seq Generating NVIDIA GPU code _randminmax: 5930, Generating acc routine seq Generating NVIDIA GPU code mcsetstate: 6608, Generating acc routine seq Generating NVIDIA GPU code mcgetstate: 6648, Generating acc routine seq Generating NVIDIA GPU code inside_rectangle: 6708, Generating acc routine seq Generating NVIDIA GPU code box_intersect: 6725, Generating acc routine seq Generating NVIDIA GPU code cylinder_intersect: 6840, Generating acc routine seq Generating NVIDIA GPU code sphere_intersect: 6895, Generating acc routine seq Generating NVIDIA GPU code init: 7163, Generating update device(_origin_var,_instrument_var) class_Progress_bar_trace: 7204, Generating acc routine seq Generating NVIDIA GPU code raytrace: 7300, Generating acc routine seq Generating NVIDIA GPU code raytrace_all: 7376, Generating implicit firstprivate(gpu_innerloop) Generating NVIDIA GPU code 7312, #pragma acc loop seq 7390, #pragma acc loop gang(numgangs), vector(vecsize) /* blockIdx.x threadIdx.x */ 7376, Local memory used for .inl_.inl_c_2969_6253,particleN,.inl__particle_save_6283,.inl_.inl_.inl_c_1973_2984_6266,.inl_.inl_.inl_.inl_b_1958_1979__6271,.inl_.inl_.inl_.inl_.X2024_1957__6270,.inl_.inl_.inl_b_1969_2983_6265,.inl_.inl_.inl_c_1965_2977_6259,.inl_.inl_.inl_.inl_.X2024_1957__6281,.inl_.inl_.inl_.X2024_1963_2974_6257,.inl_.inl_.inl_b_1964_2975_6258,.inl_.inl_.X2008_2961_6245,.inl_.inl_.inl_b_1980_2994_6276,.inl_.inl_c_2958_6244,.inl_.inl_.inl_.inl_b_1958_1990__6282,.inl_.inl_.inl_.X2008_1968_2978_6260,.inl_.inl_a_2953_6242,.inl_.inl_.X2006_2957_6243,.inl_.inl_.X2007_2966_6249,.inl_.inl_b_2967_6252,.inl_.inl_.inl_c_1984_2995_6277 7390, Generating implicit firstprivate(mpi_node_rank,_particle,seed,ncount) 7312, Complex loop carried dependence of _particle->flag_nocoordschange,_particle->x,_particle->y,_particle->z,_particle->,_particle+->,->,_particle->vz,_particle->vx,_particle->vy,_particle->sz,_particle->sx,_particle->sy,_particle->_absorbed,_particle->_index prevents parallelization Scalar last value needed after loop for .inl__particle_save_6283 at line 7340 Complex loop carried dependence of _particle->t,_particle->p,_particle->_restore,_particle->_scattered,_particle->mcMagnet prevents parallelization finally: 7638, Generating update self(_origin_var,_instrument_var) mcenabletrace: 6050, Generating update device(mcdotrace) DEBUG: CMD: nvc finished INFO: ===