[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference nicctr::kap-users

Title:Kuck Associates Preprocessor Users
Notice:KAP V2.1 (f90,f77,C) SSB-kits - see note 2
Moderator:HPCGRP::DEGREGORY
Created:Fri Nov 22 1991
Last Modified:Fri Jun 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:390
Total number of notes:1440

362.0. "Unresolved external reference" by MEOC02::PARKERSALLY (Sally Parker) Fri Jan 31 1997 02:16

    A customer is using KAP (F90) on an 8 cpu AS8400 (V3.2F DU, ~july SPL
    KAP) and experiencing library problems as indicated below. I've gone through the 
    notes and provided him with insight from notes 302 and 312. 
    Comments and advise welcomed...
    
    QUERY: 	when I try to create a parallel version it fails due to 
    		unresolved external references. The routines are:
    	
    		 mppfork_, mppjoin_, mppvsy_, mppfkd_.
    
    		I have checked and routines with those names do not exist
    		in any library in /usr/lib so I suspect an incorrect 
    		installation or some mismatch between the program (kap) and 
    		the library. There are routines kmp_fork, kmp_join and
    		kmp_vsync in the library kmp_osf.
    
    I shared with him info from notes 302 (undefineds with -lkmp_osf,
    mppfkd, mpp...) and 312 (libphpf), and he says that the routines are not 
    in the libkmp_osf library, quote...
    
    		"These should be but aren't - I looked in the file with ar
    		-t and they are simply missing - somebody should get back to 
    		software development and kick somebody  - it appears that the 
    		routine names have been changed in the compiler and not in 
    		the library (or vice versa)"
                
    If someone has experienced a similar problem I'd appreciate some
    feedback on how to rectify it - Thanks.	                     
    
    Sally
    
    		
T.RTitleUserPersonal
Name
DateLines
362.1kf90?HPCGRP::DEGREGORYKaren 223-5801Mon Feb 03 1997 17:389
You didn't say what command the customer was using
to build the program.

Please post the output you get on the screen when
the customer uses the following command to parallelize
his/her code:


kf90 -fkapargs='-conc' -v 
362.2still need assistanceMEOC02::PARKERSALLYSally ParkerFri Feb 14 1997 00:5865
    Response From the hpc customer to .1
    
    > kf90 -fkapargs='-conc' -v"
    >               _____________________
    >
    thats no use at all
    
    here's the results of doing that - its not something I'm doing wrong,
    its an
    error in the contents of the library!!!!!
    (the -lkmp_osf was a US suggestion, it didn't make any difference
    either)
      
    ***start of listing (some cleanup lines not included)
    begin compilation...
    Fri Feb 14 11:34:50 EST 1997
    kf90  -r8 -i4 -O4 -fkapargs='-conc' -lkmp_osf -v -c testcopy.f
    /usr/bin/kapf90 -cmp=./testcopy.cmp.f testcopy.f  -conc  -int=4 -real=8  
    -tune
     KAP/Digital_UA_F90   3.0 k271210 960605     14-Feb-1997   11:34:53
    0 errors in file testcopy.f
    /usr/bin/f90 -fast -automatic -r8 -i4 -O4 -lkmp_osf -v -c
    ./testcopy.cmp.f -tun
    /usr/lib/cmplrs/fort90/decfort90 -fast -automatic -real_size 64
    -integer_size 3
    kf90  -r8 -i4 -O4 -fkapargs='-conc' -lkmp_osf -v -c copyit.f
    /usr/bin/kapf90 -cmp=./copyit.cmp.f copyit.f  -conc  -int=4 -real=8  
    -tune=EV5
     KAP/Digital_UA_F90   3.0 k271210 960605     14-Feb-1997   11:35:01
    0 errors in file copyit.f
    /usr/bin/f90 -fast -automatic -r8 -i4 -O4 -lkmp_osf -v -c
    ./copyit.cmp.f -tune 
    /usr/lib/cmplrs/fort90/decfort90 -fast -automatic -real_size 64
    -integer_size 3
    kf90  -r8 -i4 -O4 -fkapargs='-conc' -lkmp_osf -v -c my_pe.f
    /usr/bin/kapf90 -cmp=./my_pe.cmp.f my_pe.f  -conc  -int=4 -real=8  
    -tune=EV5  
     KAP/Digital_UA_F90   3.0 k271210 960605     14-Feb-1997   11:35:02
    0 errors in file my_pe.f
    /usr/bin/f90 -fast -automatic -r8 -i4 -O4 -lkmp_osf -v -c ./my_pe.cmp.f
    -tune h
    /usr/lib/cmplrs/fort90/decfort90 -fast -automatic -real_size 64
    -integer_size 3
    kf90  -call_shared testcopy.o copyit.o my_pe.o  libtimer.a -o testx
    ld:
    Unresolved:
    mppfork_
    mppvsy_
    mppjoin_
    mppfkd_
    f90: Severe: Failed while trying to link.
    Fri Feb 14 11:35:02 EST 1997
    end compilation...start run
    Fri Feb 14 11:35:02 EST 1997
    bldit: testx: execute permission denied
    Fri Feb 14 11:35:02 EST 1997
    
    ***end of listing
    
    wrt the BOM stuff, I have had some slight improvements using single cpu
    KAP but
    I really want to see the results of using multi-cpu and if DEC can't
    deliver
    that then they can't compete!
        
362.3kf90 will do the compile and link in one stepHPCGRP::DEGREGORYKaren 223-5801Fri Feb 21 1997 12:1117
I don't understand why you are separating out the compilation and linker steps.
(by the way I have been corresponding by email to Dirk van der Knijff on this
same problem).


Do the following:

kf90 -r8 -i4 -O4 -fkapargs='-conc' testcopy.f copyit.f my_pe.f libtimer.a \
	-o testx


The "unresolved external reference" message you were getting was because
when you did the link step separately you were not specifying that you wanted 
parallel (no -conc switch) therefore you were not linking to the KAP 
parallel library or to the DECthreads library.

Karen