Petua konfigurasi untuk membina aplikasi pengkomputeran berprestasi tinggi Linux menggunakan CMake

WBOY
Lepaskan: 2023-07-04 22:37:08
asal
1007 orang telah melayarinya

Petua konfigurasi untuk membina aplikasi pengkomputeran berprestasi tinggi Linux menggunakan CMake

Membangunkan aplikasi pengkomputeran berprestasi tinggi dalam persekitaran Linux adalah tugas yang mencabar. Untuk memanfaatkan sepenuhnya pemproses berbilang teras dan sambungan rangkaian berkelajuan tinggi, proses penyusunan dan pemautan program perlu dioptimumkan. CMake ialah alat binaan popular yang memudahkan proses binaan sambil menyediakan beberapa pilihan pengoptimuman. Artikel ini akan memperkenalkan beberapa teknik konfigurasi untuk menggunakan CMake untuk membina aplikasi pengkomputeran berprestasi tinggi Linux dan menyediakan contoh kod yang sepadan.

1. Pasang CMake

Pertama, kita perlu memasang alat CMake. Dalam kebanyakan pengedaran Linux, anda boleh memasang CMake melalui arahan berikut:

$ sudo apt-get install cmake
Salin selepas log masuk

2. Cipta fail CMakeLists.txt

CMake menggunakan fail CMakeLists.txt untuk menerangkan peraturan binaan projek. Kami boleh mencipta fail CMakeLists.txt dalam direktori akar projek dan menentukan peraturan binaan di dalamnya.

Sebagai contoh, projek kami mengandungi dua fail sumber: main.cpp dan utils.cpp. Kami boleh mencipta fail CMakeLists.txt seperti berikut:

# CMake最低版本要求 cmake_minimum_required(VERSION 3.10) # 项目名称 project(MyApp) # 定义可执行文件 add_executable(MyApp main.cpp utils.cpp)
Salin selepas log masuk

Dalam contoh di atas, kami mula-mula menentukan versi minimum CMake yang diperlukan. Kemudian, gunakan arahan projek untuk menamakan projek. Akhir sekali, fail boleh laku MyApp ditakrifkan menggunakan perintah add_executable, dan main.cpp dan utils.cpp disusun sebagai fail sumber.

3. Tambahkan pilihan kompilasi dan pemautan

Apabila menyusun dan memautkan aplikasi pengkomputeran berprestasi tinggi, kami biasanya perlu menambah beberapa pilihan kompilasi dan pilihan pemautan untuk mengoptimumkan prestasi.

Sebagai contoh, kita boleh menggunakan pilihan -O3 untuk mengoptimumkan kod:

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3")
Salin selepas log masuk

Dalam contoh di atas, kita menggunakan arahan set untuk menetapkan pembolehubah CMAKE_CXX_FLAGS kepada nilai pembolehubah CXXFLAGS semasa ditambah dengan pilihan -O3, yang bermaksud memaksimumkan pengoptimuman kod C++.

Selain itu, jika program kami bergantung pada beberapa perpustakaan luaran, kami juga perlu menyatakan lokasi dan nama perpustakaan ini. Contohnya, jika program kami bergantung pada perpustakaan OpenMP, kami boleh mengkonfigurasinya seperti berikut:

# 查找OpenMP库 find_package(OpenMP REQUIRED) # 添加OpenMP编译选项 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") # 添加OpenMP链接选项 target_link_libraries(MyApp ${OpenMP_CXX_LIBRARIES})
Salin selepas log masuk

Dalam contoh di atas, kami mula-mula menggunakan arahan find_package untuk mencari perpustakaan OpenMP dan menyimpannya dalam pembolehubah OpenMP. Kemudian, gunakan arahan set untuk menetapkan pilihan kompilasi CMAKE_CXX_FLAGS kepada nilai pembolehubah CXXFLAGS semasa ditambah dengan pilihan kompilasi OpenMP. Akhir sekali, gunakan arahan target_link_libraries untuk menambah perpustakaan pautan OpenMP pada fail boleh laku MyApp.

4. Build

Selepas melengkapkan penulisan fail CMakeLists.txt, kita boleh membina. Mula-mula, kita perlu mencipta folder binaan dalam direktori akar projek dan masukkan folder:

$ mkdir build $ cd build
Salin selepas log masuk

Kemudian, gunakan arahan cmake untuk menjana Makefile:

$ cmake ..
Salin selepas log masuk

Kemudian, gunakan arahan make untuk menyusun:

$ make
Salin selepas log masuk

Itu sahaja , kami telah berjaya menggunakan CMake untuk membina aplikasi pengkomputeran berprestasi tinggi kami.

Ringkasan

Melalui pengenalan artikel ini, kami telah mempelajari cara menggunakan CMake untuk membina aplikasi pengkomputeran berprestasi tinggi Linux, dan menyediakan beberapa petua konfigurasi biasa dan contoh kod. Menggunakan CMake boleh memudahkan proses binaan dan meningkatkan kecekapan pembangunan. Saya harap artikel ini berguna dan boleh digunakan dalam projek anda.

Atas ialah kandungan terperinci Petua konfigurasi untuk membina aplikasi pengkomputeran berprestasi tinggi Linux menggunakan CMake. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!