Ubuntu 14.04 安裝及使用Intel Parallel Studio的過程說明

說明:由于年代久遠(yuǎn),寫這篇文章時(shí)用到的知識(shí)和軟件都是那個(gè)時(shí)間節(jié)點(diǎn)上所找到的最優(yōu)方案,但是卻可能已經(jīng)不適合于當(dāng)前。雖然基本東西都在,但是細(xì)節(jié)已然不同,能夠幫到大家最好,如若未夠還請(qǐng)各位看官諒解。
2017-11-13 16:45:01


1 使用說明


2 安裝流程

2.1 安裝g++

如果沒有安裝g++的話,在后續(xù)安裝程序時(shí)會(huì)卡住,并被提示需要安裝該程序。
網(wǎng)上有許多關(guān)于解決此問題的介紹,需要注意的一點(diǎn)是,由于我們的系統(tǒng)時(shí)14.04,版本號(hào)較高,里面涉及到的一些預(yù)裝軟件需要降級(jí)才能安裝g++,需要注意。

2.2 Intel Parallel Studio 安裝

根據(jù)User Guide來進(jìn)行安裝,大致過程如下,

  1. 找到下載的安裝文件并解壓
  2. 采用比較常規(guī)的GUI安裝方式,
    $ sh install_GUI.sh
    
  3. 一步一步安裝,同win下安裝一樣。只注意在要求序列號(hào)(VLNH-ZGFRJ53D)的地方,輸入自己免費(fèi)試用或購買的序列號(hào)即可。

2.3 配置環(huán)境變量

與win下設(shè)置環(huán)境變量相同,需要有這個(gè)環(huán)境變量來讓程序可以運(yùn)行。
當(dāng)上面的程序安裝完成后,如果此時(shí)在終端輸入"icpc -v"或"icc -v"是提示找不到命令的。
需要以如下方式解決:進(jìn)入計(jì)算機(jī)/etc/profile 文件,在末尾加入:

source /opt/intel/bin/compilervars.sh intel64

之后遇到的問題就是如何在命令行中使用intel c++編譯器,并使用openmp和mkl來編譯自己的程序,并運(yùn)算。
為了正常使用mkl,同樣需要在環(huán)境變量中加入內(nèi)容,與前述相同,所加內(nèi)容如下:

source /opt/intel/compilers_and_libraries_2016.0.109/linux/mkl/bin/mklvars.sh intel64 ilp64

2.4 命令行運(yùn)行程序

$ icpc main.cpp -mkl=parallel -qopenmp(還有問題)

但是就目前而言,好像并沒有什么用,這樣運(yùn)行出來的結(jié)果時(shí)生成了以個(gè)名為 a.dat 的可執(zhí)行文件,但是并沒有調(diào)動(dòng)起所有的線程,并且也沒有正常運(yùn)行,知道了一半。也是醉了。現(xiàn)在打算把 JDK 和 Eclipse 裝上,在上面配置intel c++。


3 安裝JDK

3.1 下載JDK

3.2 解壓JDK

可以參照該網(wǎng)頁文檔
我自己整理的步驟如下:

  1. 對(duì)應(yīng)JDK文件解壓后的文件夾名稱為“jdk1.7.0_79”
  2. 在 /usr/ 文件夾下建立 jdk 文件夾
$ sudo mkdir -p /usr/jdk
  1. 將第1步解壓后的文件夾“jdk1.7.0_79”復(fù)制或移動(dòng)到第2步建立的jdk文件夾目錄下
$ sudo cp -r jdk1.7.0_79/ /usr/jdk/ 
  1. 配置環(huán)境變量,打開 /etc/profile 文件
$ sudo subl /etc/profile

在profile文件最后加入如下語句:

export JAVA_HOME=/usr/jdk/jdk1.7.0_79
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$CLASSPATH:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin

  1. 確認(rèn)是否安裝成功。第一句時(shí)由于一般需要注銷重新登錄才能生效,但這句話可以起到相同效果。
$ source /etc/profile
$ java -version

4 安裝Eclipse

4.1 下載Eclipse C++

4.2 解壓文件到 /opt/

$ cd /opt/ && tar zxvf (文件路徑)

4.3 在 /opt/eclipse 運(yùn)行 eclipse

此時(shí)不經(jīng)任何操作的話,雙擊 eclipse 是不能直接運(yùn)行的。因?yàn)樘崾镜腻e(cuò)誤里面說 jre目錄 搜索不到需要用到的java。我們也注意到在 eclipse 目錄下是不存在 jre 文件夾的。因此通過下面的方式解決:

  1. 在 eclipse 文件夾下 新建 jre 文件夾
$ mkdir jre
  1. 進(jìn)入 jre 文件夾,鏈接 jdk 的絕對(duì)目錄 /bin bin 到j(luò)re,這樣就可以在jre搜索到j(luò)ava啦
$ sudo ln -s /usr/jdk/jdk1.7.0_79/bin bin
  1. 將eclipse加入到環(huán)境變量中使其可以在終端通過 eclipse 命令打開
$ sudo subl /etc/profile

在profile 末尾加入 export PATH=$PATH:/opt/eclipse,并通過注銷重新登錄或以下命令結(jié)束:

$ source /etc/profile

5 Eclipse 中設(shè)置 intel c++

下面的工作主要都是在 Eclipse 軟件界面下進(jìn)行。

5.1 安裝 C/C++ Development Tooling(CDT)

  1. Help -> Install new software
  2. Work with -> CDT
  3. 不選中(Deselect) -> Group items by category
  4. next 知道安裝完成

5.2 安裝 intel c++ 編譯器

該部分具有重要參考意義的鏈接,這個(gè)比Parallel studio的幫助文檔有用多了,因?yàn)楹笳呓o的是錯(cuò)誤的幫助。

  1. Help -> Install new software
  2. Work with -> Add -> Local -> 選擇intel安裝目錄下的如下文件夾/opt/intel/ide_support_2016/eclipse/compiler_xe
  3. 勾選 與intel相關(guān)的編譯器,并同樣不勾選 Group items by category
  4. next 知道安裝完成

5.3 可能需要的命令行

一般情況下就可以使用集成在 eclipse 下的 intel c++ 編譯器了。
但是可能存在些許小問題,可以通過如下命令試著解決。

$ source <istall-dir>/compilers_and_libraries/linux/bin/compilervars.sh intel64
$ LANG=en_US eclipse

5.4 使用 mkl 以及 openmp 的程序設(shè)置

  1. 新建以 Toolchains 為 Intel(R) C++ Compiler XE 的C++工程文件
  2. 將相關(guān)程序文件(包括 源文件和頭文件)放在目錄 src 文件夾,所需要讀取的文件放置在程序根目錄
  3. 查看工程文件的屬性,修改相關(guān)部分,在此只列打開mkl和openmp的相關(guān)設(shè)置,其他優(yōu)化待后續(xù)嘗試及添加
  4. 打開 mkl

C++ Build -> Settings -> Performance Library Build Components -> Use Intel(R) Math Kernel Library -> -mkl=parallel

  1. 打開 openmp

C++ Build -> Settings -> Language -> Process OpenMP Directives -> Generate Parallel Code(-qopenmp)
說明:在centos上屬性欄設(shè)置選項(xiàng)中就沒有關(guān)于openmp的設(shè)置項(xiàng),但是目前主流編譯器中都集成了openmp,因此針對(duì)這種情況在 設(shè)置選項(xiàng)的 C++附加項(xiàng)中手動(dòng)加上 -qopenmp 就行

  1. 然后正常運(yùn)行,Build -> Compile -> Run,查看結(jié)果

6 The End

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容