前言
CPU并行加速
CPU并行加速的本質就是通過硬體并發(hardware concurrency)的形式來實作,這種的操作方式是通過單個行程里多執行緒,從而實作共享地址空間,全域變數,指標,參考,但是這種方式相對而言更加傳統,但是同時更加具有普適性,

其中操作是使用以pthread為代表的多執行緒并行加速
pthread
這是一個pthread的簡單示例代碼,
class helloFromObject{
public:
void operator()() const{
std::cout << "Hello, My Second thread!" << std::endl;
}
};
int main() {
std::cout << "Hello, Coconut Cat!" << std::endl;
std::thread bthread((helloFromObject()));
bthread.join();
return 0;
}
我們可以發現pthread這種多執行緒加速v-slam場景下都有著充分的應用
OpenMP
openmp作為另一種CPU提速方式,在SLAM的特征提取中擁有比較良好的加速代碼,當然thread對于openmp還是有一定的影響的,每個thread分配給omp的執行緒可能減小或者是在thread里面繼續呼叫omp再開執行緒會帶來更大的成本,導致omp單獨執行時變慢,
…詳情請參照古月居
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/300024.html
標籤:其他
