I'm trying to get a raytracing program (attached) working with OpenMP. I think it's a simple example: a scene of layered spheres is built as a tree, rays are traced, and image file is generated. But if I run with one thread only I get a different result from if I run with openmp turned off and don't understand why. Could be a compiler but I suppose but much more likely is that I'm not understanding the memory model that it being used. Either way I just don't know what to do next - any help would be greatly appreciated.
ifort -openmp -O0 -what -o raytracer raytracer.f90
Intel Fortran 9.0-5238
raytracer.f90(144) : (col. 8) remark: OpenMP DEFINED LOOP WAS PARALLELIZED.