[MITgcm-support] optim.x compilation

Samar Khatiwala spk at ldeo.columbia.edu
Fri Sep 19 20:35:51 EDT 2008


Hi Matt,

A wild guess: don't you need to compile BLAS on ranger to use optim?  
(I think its needed by the CG solver in the L-BFGS algorithm.)

BLAS performance is not critical for this, but you might as well link  
to the optimized version available in the
AMD acml library on ranger. Add this to your .login_user file:

module load acml

Then you can link against:

/opt/apps/pgi7_1/acml/4.0.1/pgi64/lib/libacml.a

or (safer)

$TACC_ACML_LIB/libacml.a

Samar

On Sep 19, 2008, at 6:18 PM, Matthew Mazloff wrote:

> Hello,
>
> Well I am having a hard time compiling optim.x on ranger.  I am not  
> sure what I'm doing wrong...the compilation log starts to look iffy at
>
> f77 -o optim.x  optim_main.o optim_sub.o optim_numbmod.o  
> optim_initmod.o optim_readdata.o optim_writedata.o  
> optim_write_control.o xerbla.o simul.o -L. -L../lsopt/          - 
> llsopt_ecco -lblas
> /opt/apps/binutils-amd/070220/bin/ld: skipping incompatible ../ 
> lsopt//libblas.so when searching for -lblas
> /opt/apps/binutils-amd/070220/bin/ld: skipping incompatible ../ 
> lsopt//libblas.a when searching for -lblas
> optim_sub.o: In function `optim_sub__':
> optim_sub.f:(.text+0x1df): relocation truncated to fit: R_X86_64_32  
> against symbol `optiparm_i__' defined in COMMON section in optim_sub.o
> optim_sub.f:(.text+0x27f): relocation truncated to fit:  
> R_X86_64_PC32 against symbol `optiparm_i__' defined in COMMON  
> section in optim_sub.o
> optim_sub.f:(.text+0x2b1): relocation truncated to fit: R_X86_64_32S  
> against `.bss'
> optim_sub.f:(.text+0x2ba): relocation truncated to fit: R_X86_64_32S  
> against `.bss'
> optim_sub.f:(.text+0x2c3): relocation truncated to fit: R_X86_64_32S  
> against `.bss'
> optim_sub.f:(.text+0x2c8): relocation truncated to fit: R_X86_64_32  
> against symbol `optiparm_i__' defined in COMMON section in optim_sub.o
> optim_sub.f:(.text+0x2d6): relocation truncated to fit: R_X86_64_32  
> against symbol `optiparm_i__' defined in COMMON section in optim_sub.o
> optim_sub.f:(.text+0x2f0): relocation truncated to fit: R_X86_64_32  
> against symbol `optiparm_i__' defined in COMMON section in optim_sub.o
> optim_sub.f:(.text+0x2fe): relocation truncated to fit: R_X86_64_32  
> against symbol `optiparm_r__' defined in COMMON section in optim_sub.o
> optim_sub.f:(.text+0x310): relocation truncated to fit: R_X86_64_32S  
> against symbol `optiparm_r__' defined in COMMON section in optim_sub.o
> optim_sub.f:(.text+0x315): additional relocation overflows omitted  
> from the output
> collect2: ld returned 1 exit status
> make: *** [optim.x] Error 1
>
>
>
> any advice?
> Thanks
> Matt
>
>
> _______________________________________________
> MITgcm-support mailing list
> MITgcm-support at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-support




More information about the MITgcm-support mailing list