close
linker example :
static linking:
1.執行檔比較大: 因為它會把有用到library的地方 獨立作連結
2.記憶體使用上較沒效率:因為是獨立連結,所以library會被load到不同得記憶體
3.commend linking會因為版本不同而需要做修改
dynamic linking:
1. 在製作執行檔時看到mkl function會給它一個symbol ,不同的function 擁有不同的symbol
執行時再去解讀這些symbol( 所以是 run-time)
2.同一個symbol 它會被load到相同的記憶體 只要program用到它 就會去這一塊記憶體尋找
3.commend linking consistent 所以即使 版本up-date 也不用改!
一般來說都會使用dynamic linking 因為維護上的便利性 (可以不用一直更改commend linking)
NOTE:
MKL linking 有一件很重要的事! 要改環境變數!
export LD_LIBRARY_PATH=/opt/intel/mkl/9.0/lib/64:$LD_LIBRARY_PATH
全站熱搜
留言列表