How to run ROMS in XeonPhi??(netcdf wrong)

Discussion about modeling ice with ROMS

Moderators: arango, robertson

Post Reply
Posts: 5
Joined: Thu Jun 11, 2015 5:13 pm
Location: YoungDong University

How to run ROMS in XeonPhi??(netcdf wrong)

#1 Post by kissrang » Tue Jun 30, 2015 11:51 pm


I'm a Woong hee Choi. I am a student of South Korea a lot of interest in ocean modeling.
So I was looking for one of the open source, it tried to ROMS and WRF.
My computer is this specification.

           processor: 0
           vendor_id: GenuineIntel
           cpu family: 6
           model: 63
           model name: Intel (R) Xeon (R) CPU E5-2680 v3 @ 2.50GHz
           stepping: 2
           cpu MHz: 1200.000
           cache size: 30720 KB
           physical id: 0
           siblings: 24
           core id: 0
           cpu cores: 12
           apicid: 0
           initial apicid: 0
           fpu: yes
           fpu_exception: yes
           cpuid level: 15
           wp: yes
           flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer xsave avx f16c rdrand lahf_lm abm ida arat epb xsaveopt pln pts dts tpr_shadow vnmi flexpriority ept vpid fsgsbase bmi1 avx2 smep bmi2 erms invpcid
           bogomips: 4999.86
           clflush size: 64
           cache_alignment: 64
           address sizes: 46 bits physical, 48 bits virtual
           power management:

I've compiled the ROMS inside Xeon, was a success. Then I would like to turn the ROMS within Xeon Phi.

So I added a FFLAGS = -mmic to compile options.

           FC: = ifort
           FFLAGS: = -heap-arrays -fp-model precise -mmic
           CPP: = / usr / bin / cpp
           CPPFLAGS: = -P -traditional
           LDFLAGS: =
           AR: = ar
           ARFLAGS: = r
           MKDIR: = mkdir -p
           RM: = rm -f
           RANLIB: = ranlib
           PERL: = perl
           TEST: = test

           MDEPFLAGS: = --cpp --fext = f90 --file = - --objdir = $ (SCRATCH_DIR)

But that was an error during compile ROMS within Xeon Phi. I think there seems to be a problem netcdf.

error message: ROMS / Bin / cpp_clean Build / esmf_roms.f90
cd Build; /opt/intel/composer_xe_2015.3.187/bin/intel64/ifort -c -heap-arrays -fp-model precise -mmic -openmp -fpp -ip -O3 es mf_roms.f90
/ Usr / bin / cpp -P -traditional -D_OPENMP -DLINUX -DX86_64 -DIFORT -D'ROOT_DIR = "/ home / test / MIC / ROMS_coco" '-DUPWELLING -D'HEADER = "upwelling.h"' -D ' ROMS_HEADER = "upwelling.h" '-DNestedGrids = -D'ANALYTICAL_DIR = "/ home / test / MIC / ROMS_coco / ROMS / Functionals"' - D'SVN_REV = "756M" '-IROMS / Include -IROMS / Nonlinear -IROMS / Nonlinear / Biology -IROMS / Nonlinear / Sediment -IROMS / Utility -IROMS / Dr ivers -IROMS / Functionals -IMaster -ICompilers -D'HEADER_DIR = "/ home / test / MIC / ROMS_coco / ROMS / Include" 'Master / master .F> Build /master.f90
ROMS / Bin / cpp_clean Build / master.f90
cd Build; /opt/intel/composer_xe_2015.3.187/bin/intel64/ifort -c -heap-arrays -fp-model precise -mmic -openmp -fpp -ip -O3 ma ster.f90
/opt/intel/composer_xe_2015.3.187/bin/intel64/ifort -heap-arrays -fp-model precise -mmic -openmp -fpp -ip -O3 Build / esmf_rom so Build / master.o Build / ocean_control.o Build / ocean_coupler .o Build / propagator.o Build / roms_export.o Build / roms_import.o -o oceanO Build / libUTIL.a Build / libNLM.a Build / libNLM_bio.a Build / libNLM_sed.a Build / libANA.a Build / libUTIL.a Build / libMODS.a -L / home / test / MIC / netcdf_4 / lib -lnetcdf
x86_64-k1om-linux-ld: skipping incompatible /home/test/MIC/netcdf_4/lib/ when searching for -lnetcdf
x86_64-k1om-linux-ld: skipping incompatible /home/test/MIC/netcdf_4/lib/libnetcdf.a when searching for -lnetcdf
x86_64-k1om-linux-ld: can not find -lnetcdf

I obviously have a netcdf library. (, libnetcdf.a)
It has netcdf 4.1.3 and 3.6.3.
There is no problem without -mmic. (in Xeon)
I do not know why this error. Please tell me some advice.
Thank you.

Post Reply