小學期 Day3 課程作業要求 一些編譯優化命令

2021-08-21 12:54:05 字數 1299 閱讀 5158

昨天寫了第乙個lab,沒來得及更新,今天追更,第一次用csdn的markdown,有點意思。

1、parallel optimization basics (並行優化)

程式型別:計算(computing)密集型、io密集型

並行型別:指令級(instruction level)- simd - 通過調編譯器引數(compiler parameters)優化

執行緒級(cpu core level)

機器級(machine level) - mpi

2、compiling optimizations (gcc)

與編譯器優化無關的選項(功能性選項)

-g:開關除錯資訊

-l :鏈結庫

-l:增加鏈結庫的搜尋路徑

-i :增加標頭檔案搜尋路徑

-d:傳巨集檔案

-s:不完成編譯,只生成彙編

-c:.c => .o

-o:輸出檔名

-pthread / -qopenmp // icc specified :呼叫pthread庫,進行多執行緒編譯

-openmp:呼叫openmp庫,進行多執行緒編譯

-emit-llvm // clang specified

編譯器優化選項

-o[0-3](optimization):優化等級開關(等級越高,優化越強,也有可能出現更大的bug,看不出編譯處的語句對應哪條源**,編譯速度越慢)。是乙個比較大的開關。具體資訊參考

-f(flag):是個小開關,[ ]內填引數,有的和優化相關(-funroll-loop),有的和語義相關.

-fno-:例如-fno-expetions

-mtune

-march=[ivybridge, haswell, broadwell, native]:其中native引數指和本地一致,調到本機cpu支援的最新指令

cpuid instruction:執行時判斷cpu版本的指令

gcc編譯器引數手冊

3. hpc related toolchains

編譯器:

gcc(開源)

clang / clang++ - llvm c/c++ (開源)

icc - intel c++ compiler(付費):對intel自家的優化效果特別好

gpi - nvidia (付費)

day1 day2課程總結

內容包括 python2 python3介紹及區別 資料型別 迴圈語句 選擇語句 檔案開啟讀寫等。python 3 vs 2.x 1 預設支援中文 2 不相容2.x 3 核心語法調整,更易學 4 新特性預設在3.x上有 系統位數 32bit 記憶體的最大定址空間是2 32,4gb 64bit,2 6...

Day3課後總結

目錄前言 2.7版本和3.6版本是當時版本最穩定且功能齊全的版本,所以大部分的程式設計師都會用這兩個版本。如果我們出去工作了碰到了公司有較老的專案可能就需要用python2.7去進行維護,因此我們電腦中要安裝多個版本的python 情況一 在cmd視窗中 2.將兩個版本的python所在路徑都新增到...

3 課程相關5張表設計

課程類別 max length 16 sequence models.integerfield 展示順序 default 10 class meta db table tb coursetype def str self return self.title class coursetag base ...