Problem attempting I/O in offloaded code

Problem attempting I/O in offloaded code

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,


2 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

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.

Leave a Comment

Please sign in to add a comment. Not a member? Join today