Linux下跑C++程序的操作筆記(跑視頻編碼程序)

今天記錄一下自己實驗室在“天河”計算機上跑程序的流程,怕以後忘記了。由於天河的操作是基於Linux的操作,所以一些指令比較生疏,如有不準確的地方還請指正。

一、首先需要連接虛擬專用網絡(這個大家應該都懂,要是寫縮略就不能過審)
①下載SSL虛擬專用網絡客戶端,然後在“開始程序”中打開“Hillstone Secure Connect”填寫服務器域名地址、端口、用戶名、密碼,點擊“登錄”即可。
1.互聯網客戶端填寫順序如下:(這裏個人賬號涉及保密,就沒填寫)
服務器:
端口號:
賬號:
密碼:

二、然後需要登陸天河,使用Xshell或者Xftp,登錄步驟如下:
① 打開 XShell,點擊工具欄的“新建”選項。在“連接”的“常規”裏,“協議”選擇 SSH,然後在“主機”處填寫系統 IP。再緊接着填寫端口號。
在這裏插入圖片描述
② 在“用戶身份驗證”這裏,“方法”選擇 Public Key,然後點擊“瀏覽”選擇得到的 Private Key 文件,然後點擊“確定”即可登錄。
在這裏插入圖片描述
三、具體的編解碼的操作流程

  1. VVC6.0中的.gz的下載,複製到xftp,——>百度一下gz文件的解壓方法。

  2. 進入到VVC6.0中,新建一個build文件夾,然後在Xshell中:cd 地址"(這個地址直接從xftp的Linux目錄下複製,比如:/BIGDATA1/nwpu_swan_1/VVC/VTM6.0/VVCSoftware_VTM-VTM-6.0/build,然後在Xshell中用Shift+Insert進行粘貼)

  3. 然後執行指令:cmake … -DCMAKE_BUILD_TYPE=Release(如果Cmake的版本過低,處理方法爲,執行指令:module load cmake/3.12.3-gcc-4.8.5 自使用配置對應版本的cmake)
    4. 以上的準備操作,就相當於在Windows中進行VTM的解壓,以及build的生成和cmake過程。

  4. 在Cmake之後,將所需的source文件放入VTM(這裏是VTM6.0)的大目錄中(就和Windows下一樣的操作),然後用在Xshell,cd進build的目錄下。執行指令:make -j。(這一步的目的就是爲了得到EncoderAppStaic和DecoderAppStaic,這就相當於Windows下生成編解碼的exe可執行文件)。

  5. 將本地電腦上的“單測試方案”文件夾中的三個cfg文件(encoder_intra_vtm.cfg、encoder_randomaccess_vtm.cfg、classF.cfg)更新爲最新的VTM版本(這裏是VTM6.0)中的cfg。然後將更新好的“單測試方案”文件夾複製到xftp的最外層的“test”路徑下對應的文件夾(這裏是VTM6.0)中,然後根據自己的方案更改名字。

  6. 把上述生成的兩個Staic文件從xftp中拿出到自己的本地電腦中,然後在從本地電腦中將兩個Static粘貼到上述更新好的“單測試方案”中的每一個子test文件夾(test1、test2。。。。)中(之所以這麼麻煩,是因爲Linux中沒法直接將一個文件從一個文件夾複製到另一個文件夾中,因此必須找本地電腦作爲中轉)。
    8. 以上的操作就是相當於Windows下,將可執行文件.exe挨個複製到各個測試序列的批量處理(bat)的文件夾中,爲接下來的一口氣執行編碼做準備。

  7. 在Xshell中,cd到“單測試方案”的文件路徑下;
    然後執行指令:find -name “.bat" -exec dos2unix {} \,將bat文件全部改爲Linux下的格式;再執行指令:find -name ".sh” -exec dos2unix {} \,將sh文件全部改爲Linux下的格式;(.sh文件的作用就好比將一個子test文件夾下的所有bat文件整合起來,同時並行將其運行起來)。

  8. 再執行指令“chmod_R 777”+“單測試方案”的文件路徑。

  9. 先cd到每個子test文件夾下,然後執行指令:yhbatch -N 3 -n 37 -p bigdata test3.sh
    這裏有三點需要去注意:
    ① -N和 -n後面的數字,需要去每個子test文件夾下的.sh文件夾中去對應(每四個子test的數字是一樣的)
    ② 最後的test.sh根據每個子test文件夾中.sh文件的名字來寫的

  10. 正確提交作業會顯示
    在這裏插入圖片描述

  11. 提交完作業以後,需要檢查一下跑的對不對,就看每個子test目錄下的slurm文件是否爲0byte,是0byte就說明正常運行。(slurm文件就是記錄錯誤的日誌文件)。可以執行指令:yqh查看作業運行狀態:
    在這裏插入圖片描述

  12. 跑完編碼後,會生成.log文件,將全部的.log文件拿出來以後,用py腳本文件運行一遍就可以將數據統計出來了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章