INFO: No output directory specified (--dir) INFO: Using directory: "Vin_test_20251212_000333" INFO: Regenerating c-file: Vin_test.c DEBUG: CMD: /u/data/pkwi/McStas/mcstas/3.x-dev/bin/mcstas -t -o ./Vin_test.c Vin_test.instr Warning: 'Virtual_input' is an obsolete component (not maintained). CFLAGS= -DFUNNEL ----------------------------------------------------------- Generating single GPU kernel or single CPU section layout: ----------------------------------------------------------- Generating GPU/CPU -DFUNNEL layout: Component Vin is NOACC, CPUONLY=1 -> FUNNEL mode enabled, SPLIT within buffer. -> CPU section from component Vin -> GPU kernel from component PSD ----------------------------------------------------------- DEBUG: CMD: /u/data/pkwi/McStas/mcstas/3.x-dev/bin/mcstas finished INFO: Recompiling: ./Vin_test.out DEBUG: CMD: nvc -o ./Vin_test.out ./Vin_test.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 -DFUNNEL "./Vin_test.c", line 88: 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 " "./Vin_test.c", line 90: 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, ^ "./Vin_test.c", line 93: 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 mcneutron, double *x, double *y, double *z, ^ "./Vin_test.c", line 109: 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); ^ "./Vin_test.c", line 113: 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); ^ "./Vin_test.c", line 141: 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); ^ "./Vin_test.c", line 113: 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); ^ "./Vin_test.c", line 170: 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*); ^ "./Vin_test.c", line 192: 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); ^ "./Vin_test.c", line 203: 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); ^ "./Vin_test.c", line 214: 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){ ^ "./Vin_test.c", line 224: 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){ ^ "./Vin_test.c", line 291: warning: Routine "noprintf" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] int noprintf(); ^ "./Vin_test.c", line 293: 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); ^ "./Vin_test.c", line 644: 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 */ ^ "./Vin_test.c", line 865: 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); ^ "./Vin_test.c", line 882: 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); ^ "./Vin_test.c", line 884: 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]); ^ "./Vin_test.c", line 892: 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); ^ "./Vin_test.c", line 894: 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); ^ "./Vin_test.c", line 896: 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); ^ "./Vin_test.c", line 898: 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); ^ "./Vin_test.c", line 900: 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); ^ "./Vin_test.c", line 996: 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); ^ "./Vin_test.c", line 998: 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); ^ "./Vin_test.c", line 1000: 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); ^ "./Vin_test.c", line 1002: 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); ^ "./Vin_test.c", line 1004: 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); ^ "./Vin_test.c", line 1006: 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); ^ "./Vin_test.c", line 1008: 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); ^ "./Vin_test.c", line 1010: 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); ^ "./Vin_test.c", line 1012: 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); ^ "./Vin_test.c", line 4627: warning: variable "num" was declared but never referenced [declared_but_not_referenced] int num = 3; ^ "./Vin_test.c", line 5082: warning: variable "randstate" was declared but never referenced [declared_but_not_referenced] randstate_t randstate[7]; ^ "./Vin_test.c", line 5001: warning: variable "newlen" was declared but never referenced [declared_but_not_referenced] long newlen = 0; ^ "./Vin_test.c", line 6328: warning: variable "status" was set but never used [set_but_not_used] int status; ^ "./Vin_test.c", line 7094: warning: Routine "Table_Index" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] double Table_Index(t_Table Table, long i, long j); /* get indexed value */ ^ "./Vin_test.c", line 7096: warning: Routine "Table_Value" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] double Table_Value(t_Table Table, double X, long j); /* search X in 1st column and return interpolated value in j-column */ ^ "./Vin_test.c", line 7103: warning: Routine "Table_Value2d" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] double Table_Value2d(t_Table Table, double X, double Y); /* same as Table_Index with non-integer indices and 2d interpolation */ ^ "./Vin_test.c", line 7123: warning: Routine "Table_Interp1d" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] double Table_Interp1d(double x, double x1, double y1, double x2, double y2); ^ "./Vin_test.c", line 7125: warning: Routine "Table_Interp1d_nearest" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] double Table_Interp1d_nearest(double x, double x1, double y1, double x2, double y2); ^ "./Vin_test.c", line 7127: warning: Routine "Table_Interp2d" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] double Table_Interp2d(double x, double y, double x1, double y1, double x2, double y2, ^ "./Vin_test.c", line 8571: warning: variable "length" was declared but never referenced [declared_but_not_referenced] long length=0; ^ "./Vin_test.c", line 8786: warning: variable "tc2" was set but never used [set_but_not_used] Coords tc1, tc2; ^ "./Vin_test.c", line 8774: warning: variable "current_setpos_index" was declared but never referenced [declared_but_not_referenced] int current_setpos_index = 1; ^ "./Vin_test.c", line 8831: warning: variable "current_setpos_index" was declared but never referenced [declared_but_not_referenced] int current_setpos_index = 2; ^ "./Vin_test.c", line 8893: warning: variable "current_setpos_index" was declared but never referenced [declared_but_not_referenced] int current_setpos_index = 3; ^ "./Vin_test.c", line 9266: warning: incompatible redefinition of macro "exit" (declared at line 623) [bad_macro_redef] #define exit(...) noprintf() ^ "./Vin_test.c", line 9278: 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] void class_Progress_bar_trace(_class_Progress_bar *_comp ^ "./Vin_test.c", line 9600: warning: Routine "class_PSD_monitor_trace" will be treated as sequential because its "routine" directive doesn't specify a level of parallelism [no_routine_type] void class_PSD_monitor_trace(_class_PSD_monitor *_comp ^ "./Vin_test.c", line 10743: warning: variable "t" was declared but never referenced [declared_but_not_referenced] time_t t; ^ "./Vin_test.c", line 10744: warning: variable "ct" was set but never used [set_but_not_used] clock_t ct; ^ "./Vin_test.c", line 1504: warning: variable "mcstartdate" was set but never used [set_but_not_used] static long mcstartdate = 0; /* start simulation time */ ^ "./Vin_test.c", line 2973: warning: function "strcpy_valid" was declared but never referenced [declared_but_not_referenced] static char *strcpy_valid(char *valid, char *original) ^ mcgenstate: 102, Generating acc routine seq Generating NVIDIA GPU code particle_getvar: 116, Generating acc routine seq Generating NVIDIA GPU code particle_getvar_void: 148, Generating acc routine seq Generating NVIDIA GPU code particle_setvar_void: 172, Generating acc routine seq Generating NVIDIA GPU code particle_setvar_void_array: 194, Generating acc routine seq Generating NVIDIA GPU code particle_restore: 205, Generating acc routine seq Generating NVIDIA GPU code particle_getuservar_byid: 214, Generating acc routine seq Generating NVIDIA GPU code particle_uservar_init: 224, Generating acc routine seq Generating NVIDIA GPU code noprintf: 1552, Generating acc routine seq Generating NVIDIA GPU code str_comp: 1556, Generating acc routine seq Generating NVIDIA GPU code str_len: 1565, Generating acc routine seq Generating NVIDIA GPU code mcget_ncount: 4245, Generating acc routine seq Generating NVIDIA GPU code coords_set: 4679, Generating acc routine seq Generating NVIDIA GPU code coords_get: 4690, Generating acc routine seq Generating NVIDIA GPU code coords_add: 4699, Generating acc routine seq Generating NVIDIA GPU code coords_sub: 4711, Generating acc routine seq Generating NVIDIA GPU code coords_neg: 4723, Generating acc routine seq Generating NVIDIA GPU code coords_scale: 4733, Generating acc routine seq Generating NVIDIA GPU code coords_sp: 4743, Generating acc routine seq Generating NVIDIA GPU code coords_xp: 4751, Generating acc routine seq Generating NVIDIA GPU code coords_len: 4761, Generating acc routine seq Generating NVIDIA GPU code coords_print: 4783, Generating acc routine seq Generating NVIDIA GPU code coords_norm: 4790, Generating acc routine seq Generating NVIDIA GPU code rot_set_rotation: 4836, Generating acc routine seq Generating NVIDIA GPU code rot_test_identity: 4871, Generating acc routine seq Generating NVIDIA GPU code rot_mul: 4882, Generating acc routine seq Generating NVIDIA GPU code rot_copy: 4899, Generating acc routine seq Generating NVIDIA GPU code rot_transpose: 4910, Generating acc routine seq Generating NVIDIA GPU code rot_apply: 4926, Generating acc routine seq Generating NVIDIA GPU code vec_prod_func: 4955, Generating acc routine seq Generating NVIDIA GPU code scalar_prod: 4966, Generating acc routine seq Generating NVIDIA GPU code norm_func: 4970, Generating acc routine seq Generating NVIDIA GPU code sort_absorb_last: 5005, Generating present(particles[:buffer_len],pbuffer[:buffer_len]) Generating implicit firstprivate(tidx) Generating NVIDIA GPU code 5012, #pragma acc loop gang, vector(128) /* blockIdx.x threadIdx.x */ 5021, #pragma acc loop seq 5005, Generating implicit copy(lens[:]) [if not already present] 5012, Generating implicit firstprivate(ll,l) 5023, Accelerator restriction: induction variable live-out from loop: i 5024, Accelerator restriction: induction variable live-out from loop: i 5025, Accelerator restriction: induction variable live-out from loop: i 5026, Accelerator restriction: induction variable live-out from loop: i 5028, Accelerator restriction: induction variable live-out from loop: j 5029, Accelerator restriction: induction variable live-out from loop: j 5030, Accelerator restriction: induction variable live-out from loop: j 5031, Accelerator restriction: induction variable live-out from loop: j 5053, Generating present(pbuffer[:buffer_len]) Generating implicit firstprivate(tidx) Generating NVIDIA GPU code 5057, #pragma acc loop gang, vector(128) /* blockIdx.x threadIdx.x */ 5060, #pragma acc loop seq 5053, Generating implicit copyin(lens[:]) [if not already present] Generating implicit copy(particles[:]) [if not already present] Generating implicit copyin(los[:]) [if not already present] 5060, Generating implicit firstprivate(l) 5077, Generating present(particles[:buffer_len]) Generating implicit firstprivate(accumlen,tidx,mult) Generating NVIDIA GPU code 5081, #pragma acc loop gang, vector(128) /* blockIdx.x threadIdx.x */ 5088, #pragma acc loop seq 5077, Local memory used for targetbuffer,sourcebuffer mccoordschange: 5147, Generating acc routine seq Generating NVIDIA GPU code mccoordschange_polarisation: 5178, Generating acc routine seq Generating NVIDIA GPU code normal_vec: 5195, Generating acc routine seq Generating NVIDIA GPU code solve_2nd_order: 5294, Generating acc routine seq Generating NVIDIA GPU code _randvec_target_circle: 5378, Generating acc routine seq Generating NVIDIA GPU code _randvec_target_rect_angular: 5444, Generating acc routine seq Generating NVIDIA GPU code _randvec_target_rect_real: 5521, Generating acc routine seq Generating NVIDIA GPU code kiss_srandom: 5793, Generating acc routine seq Generating NVIDIA GPU code kiss_random: 5805, Generating acc routine seq Generating NVIDIA GPU code _hash: 5837, Generating acc routine seq Generating NVIDIA GPU code _randnorm2: 5878, Generating acc routine seq Generating NVIDIA GPU code _randtriangle: 5889, Generating acc routine seq Generating NVIDIA GPU code _rand01: 5894, Generating acc routine seq Generating NVIDIA GPU code _randpm1: 5902, Generating acc routine seq Generating NVIDIA GPU code _rand0max: 5910, Generating acc routine seq Generating NVIDIA GPU code _randminmax: 5917, Generating acc routine seq Generating NVIDIA GPU code mcsetstate: 6597, Generating acc routine seq Generating NVIDIA GPU code mcgetstate: 6637, Generating acc routine seq Generating NVIDIA GPU code inside_rectangle: 6697, Generating acc routine seq Generating NVIDIA GPU code box_intersect: 6714, Generating acc routine seq Generating NVIDIA GPU code cylinder_intersect: 6829, Generating acc routine seq Generating NVIDIA GPU code sphere_intersect: 6884, Generating acc routine seq Generating NVIDIA GPU code Table_Index: 7904, Generating acc routine seq Generating NVIDIA GPU code Table_Value: 7972, Generating acc routine seq Generating NVIDIA GPU code Table_Value2d: 8051, Generating acc routine seq Generating NVIDIA GPU code Table_Interp1d: 8519, Generating acc routine seq Generating NVIDIA GPU code Table_Interp1d_nearest: 8535, Generating acc routine seq Generating NVIDIA GPU code Table_Interp2d: 8553, Generating acc routine seq Generating NVIDIA GPU code init: 9236, Generating update device(_PSD_var,_Origin_var,_instrument_var,_Vin_var) class_Progress_bar_trace: 9279, Generating acc routine seq Generating NVIDIA GPU code class_PSD_monitor_trace: 9601, Generating acc routine seq Generating NVIDIA GPU code raytrace_all_funnel: 9880, Generating present(particles[:livebatchsize]) Generating implicit firstprivate(livebatchsize) Generating NVIDIA GPU code 9884, #pragma acc loop gang, vector(128) /* blockIdx.x threadIdx.x */ 9884, Generating implicit firstprivate(mpi_node_rank,_particle,seed,ncount) 9893, Generating present(particles[:livebatchsize]) Generating implicit firstprivate(livebatchsize) Generating NVIDIA GPU code 9898, #pragma acc loop gang, vector(128) /* blockIdx.x threadIdx.x */ 9893, Local memory used for .inl_c_8512,_particle_save,.inl_.inl_c_1966_8527,.inl_.inl_.inl_b_1951_1972_8532,.inl_.inl_.inl_.X2137_1950_1971_8531,.inl_.inl_b_1962_8526,.inl_.inl_c_1958_8520,.inl_.inl_.inl_.X2137_1950_1982_8542,.inl_.inl_.X2137_1956_8517,.inl_.inl_b_1957_8518,.inl_.X2121_8504,.inl_.inl_b_1973_8537,.inl_c_8501,.inl_.inl_.inl_b_1951_1983_8543,.inl_.inl_.X2121_1961_8521,.inl_a_8496,.inl_.X2119_8500,.inl_.X2120_8509,.inl_b_8510,.inl_.inl_c_1977_8538 9940, Generating present(particles[:livebatchsize]) Generating implicit firstprivate(livebatchsize) Generating NVIDIA GPU code 9943, #pragma acc loop gang, vector(128) /* blockIdx.x threadIdx.x */ 9940, Local memory used for _particle_save,.inl_c_8614,.inl_.inl_c_1966_8629,.inl_.inl_.inl_b_1951_1972_8634,.inl_.inl_.inl_.X2137_1950_1971_8633,.inl_.inl_b_1962_8628,.inl_.inl_c_1958_8622,.inl_.inl_.inl_.X2137_1950_1982_8644,.inl_.inl_.X2137_1956_8619,.inl_.inl_b_1957_8620,.inl_.X2121_8606,.inl_.inl_b_1973_8639,.inl_c_8603,.inl_.inl_.inl_b_1951_1983_8645,.inl_.inl_.X2121_1961_8623,.inl_a_8598,.inl_.X2119_8602,.inl_.X2120_8611,.inl_b_8612,.inl_.inl_c_1977_8640 finally: 10297, Generating update self(_PSD_var,_Origin_var,_Vin_var,_instrument_var) mcenabletrace: 6037, Generating update device(mcdotrace) DEBUG: CMD: nvc finished INFO: ===