Software Archive
Read-only legacy content
17061 토론

Problem attempting I/O in offloaded code

Dean_B_
초급자
535 조회수

I get the error

On the remote process, dlopen() failed. The error message sent back from the sin
k is /tmp/coi_procs/1/3686/load_lib/testprintMIC.out: undefined symbol: myprint_

On the sink, dlopen() returned NULL. The result of dlerror() is "/tmp/coi_procs/
1/3686/load_lib/testprintMIC.out: undefined symbol: myprint_"
offload error: cannot load library to the device 0 (error code 20)
Press any key to continue . . .

When running this program:

    subroutine myprint()  
    print *, "hello from mic"
    end subroutine myprint   
   
    program main
    !DIR$ ATTRIBUTES OFFLOAD:mic :: myprint
    !DIR$ OFFLOAD target(mic)
    call myprint()
    end program main

Thanks in advance for any help,

Dean

0 포인트
1 응답
Frances_R_Intel
535 조회수

In addition to the attribute statement inside main, put one in front of the subroutine myprint. You must tell the compiler both that main is going to call the subroutine myprint on the coprocessor and  that it needs to make a version of the subroutine myprint to run on the coprocessor.

0 포인트
응답