[Nek5000-users] Compilation error

nek5000-users at lists.mcs.anl.gov nek5000-users at lists.mcs.anl.gov
Wed May 25 07:41:04 CDT 2011


Hi Jean-Christophe,

Could you try to modify makefile after makenek has generated it? That is what I do for g95 compiler on my Mac.  

The downside is that .f file should be a copy of .usr file every time you modify it.

Best,
Aleks


----- Original Message -----
From: nek5000-users at lists.mcs.anl.gov
To: nek5000-users at lists.mcs.anl.gov
Sent: Wednesday, May 25, 2011 7:21:58 AM
Subject: Re: [Nek5000-users] Compilation error


Thanks for the tip, it now works at least for serial calculation. Note furthermore that, using the xlf compiler from ibm, I also had to change -qrealsize=8 into -qautodbl=dbl4 in order to avoid a segmentation fault. 


I am now trying to compile to it for parallel calculation, thus I specified mpxlf_r and mpcc_r in F77 and C fields in makenek. However I get the following message as soon as I start the compilation: 








./makenek stenosis 
makenek - automatic build tool for Nek5000 
** test === End of Compilation 1 === 
1501-510 Compilation successful for file test_f77.f. 
llsubmit: Processed command file through Submit Filter: "/usr/local/loadl/Fidris/llsubmit_exit". 
** underscore_test === End of Compilation 1 === 
1501-510 Compilation successful for file test_underscore.f. 
ERROR: Unable to detect compiler! 
- don't know how to promote datatype REAL to 8 bytes 
- don't know how to invoke the C pre-processor (CPP) before compilation 
Please edit the makefile and specify the requested compiler flags using the P variable. 


I presume it is a fairly simple error to solve, but I am not familiar at all with such massively parallel calculators yet 


Best regards, 
JC 

On 24 May 2011 16:20, < nek5000-users at lists.mcs.anl.gov > wrote: 



Dear Jean-Christophe, 

etime is a fairly std. timer function, but obviously not 
supported with your compiler. 

When using mpi, it uses instead the mpi timer, so there is no 
issue. 

The quick fix here would be to edit mpi_dummy.f and change 
the etime() reference therein to the ibm timer function. 

You might also try setting it zero - but I'm not 100% certain 
that there are no divisions involving time in the denominator... 
It's worth a try, however. 

Paul 






On Tue, 24 May 2011, nek5000-users at lists.mcs.anl.gov wrote: 



Hi Nek's, 

Up to now I have compiled and run the code on the various workstations 
available in my lab. I am now trying to compile it (only in serial for the 
moment) on an IBM Power 6 ( 
http://www.idris.fr/su/Scalaire/vargas/hw-vargas.html ) but I encounter an 
error (which is the reason why I do not compile it using mpi support 
yet). Following is the outpost from the compilation: 

xlf_r -qsuppress=cmpmsg -o nek5000 obj/stenosis.o obj/drive.o obj/drive1.o 
obj/drive2.o obj/plan4.o obj/bdry.o obj/coef.o obj/conduct.o obj/connect1.o 
obj/connect2.o obj/dssum.o obj/edgec.o obj/eigsolv.o obj/gauss.o 
obj/genxyz.o obj/navier1.o obj/makeq.o obj/navier0.o obj/navier2.o 
obj/navier3.o obj/navier4.o obj/prepost.o obj/speclib.o obj/map2.o 
obj/turb.o obj/mvmesh.o obj/ic.o obj/ssolv.o obj/planx.o obj/math.o 
obj/mxm_wrapper.o obj/hmholtz.o obj/gfdm_par.o obj/gfdm_op.o 
obj/gfdm_solve.o obj/subs1.o obj/subs2.o obj/genbox.o obj/gmres.o obj/hsmg.o 
obj/convect.o obj/induct.o obj/perturb.o obj/navier5.o obj/navier6.o 
obj/navier7.o obj/navier8.o obj/fast3d.o obj/fasts.o obj/calcz.o obj/byte.o 
obj/chelpers.o obj/byte_mpi.o obj/postpro.o obj/cvode_driver.o 
obj/nek_comm.o obj/init_plugin.o obj/setprop.o obj/qthermal.o 
obj/cvode_aux.o obj/makeq_aux.o obj/papi.o obj/ssygv.o obj/dsygv.o 
obj/mxm_std.o obj/blas.o obj/comm_mpi.o obj/mpi_dummy.o obj/singlmesh.o 
obj/jl2_gs.o obj/jl2_sort.o obj/jl2_sarray_transfer.o obj/jl2_sarray_sort.o 
obj/jl2_gs_local.o obj/jl2_crystal.o obj/jl2_comm.o obj/jl2_tensor.o 
obj/jl2_fail.o obj/jl2_fcrystal.o obj/jl_tuple_list.o obj/jl_transfer.o 
obj/jl_sort.o obj/jl_fcrystal.o obj/jl_errmem.o obj/jl_crystal.o 
obj/jl2_findpts.o obj/jl2_findpts_local.o obj/jl2_obbox.o obj/jl2_poly.o 
obj/jl2_lob_bnd.o obj/jl2_findpts_el_3.o obj/jl2_findpts_el_2.o 
obj/jl2_sparse_cholesky.o obj/jl2_xxt.o obj/jl2_fcrs.o 
ld: 0711-317 ERROR: Undefined symbol: .etime 
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more 
information. 
gmake: *** [nek5000] Error 8 

Attached is the whole compiler.out file also. Does anyone have an idea? 

Regards, 

-- 
Jean-Christophe 

_______________________________________________ 
Nek5000-users mailing list 
Nek5000-users at lists.mcs.anl.gov 
https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users 



-- 
Jean-Christophe 

_______________________________________________
Nek5000-users mailing list
Nek5000-users at lists.mcs.anl.gov
https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users


More information about the Nek5000-users mailing list