1.安装gcc9

# Install GCC 9
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-9 g++-9

2.安装tbb

可以用代码下载,如果网络不好也可以网盘自取,下载后记得将文件名字改为tbb-2019_U8,这样粘后面部分命令会方便很多。

链接:https://pan.baidu.com/s/1gPVgz5viGINtjgSzLj2BoA?pwd=yari 
提取码:yari

wget https://github.com/intel/tbb/archive/2019_U8.tar.gz
tar zxvf 2019_U8.tar.gz
rm 2019_U8.tar.gzcd tbb-2019_U8
  • 编辑linux.gcc-9.inc
cp build/linux.gcc.inc build/linux.gcc-9.inc vi build/linux.gcc-9.inc# 把大约是15,16 行的CPLUS ?= g++ CONLY ?= gcc修改为下面语句,然后保存
CPLUS ?= g++-9
CONLY ?= gcc-9
  • 编译tbb
make compiler=gcc-9 stdver=c++17 tbb_build_prefix=my_tbb_build
  • 安装tbb
sudo mkdir /usr/local/tbb-2019_U8
sudo cp -r include /usr/local/tbb-2019_U8/include
sudo ln -s /usr/local/tbb-2019_U8/include/tbb /usr/local/include/tbb
sudo cp -r build/my_tbb_build_release /usr/local/tbb-2019_U8/libsudo ln -s /usr/local/tbb-2019_U8/lib/libtbb.so.2 /usr/local/lib/libtbb.so
sudo ln -s /usr/local/tbb-2019_U8/lib/libtbbmalloc.so.2 /usr/local/lib/libtbbmalloc.so
sudo ln -s /usr/local/tbb-2019_U8/lib/libtbbmalloc_proxy.so.2 /usr/local/lib/libtbbmalloc_proxy.so
echo 'export LD_LIBRARY_PATH=/usr/local/tbb-2019_U8/lib:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc

3.测试

  • 测试代码

创建t0.cpp

#include <algorithm>
#include <chrono>
#include <execution>
#include <iostream>
#include <random>
#include <vector>void printDuration(std::chrono::steady_clock::time_point start, std::chrono::steady_clock::time_point end, const char *message)
{auto diff = end - start;std::cout << message << ' ' << std::chrono::duration<double, std::milli>(diff).count() << " msn";
}
template <typename T>
void test(const T &policy, const std::vector<double> &data, const int repeat, const char *message)
{for (int i = 0; i < repeat; ++i){std::vector<double> curr_data(data);const auto start = std::chrono::steady_clock::now();std::sort(policy, curr_data.begin(), curr_data.end());const auto end = std::chrono::steady_clock::now();printDuration(start, end, message);}std::cout << 'n';
}int main()
{// Test samples and repeat factorconstexpr size_t samples{5'000'000};constexpr int repeat{10};// Fill a vector with samples numbersstd::random_device rd;std::mt19937_64 mre(rd());std::uniform_real_distribution<double> urd(0.0, 1.0);std::vector<double> data(samples);for (auto &e : data){e = urd(mre);}// Sort data using different execution policiesstd::cout << "std::execution::seqn";test(std::execution::seq, data, repeat, "Elapsed time");std::cout << "std::execution::parn";test(std::execution::par, data, repeat, "Elapsed time");
}
  • 编译程序
g++-9 -std=c++17 -Wall -Wextra -pedantic -O2 t0.cpp -o t0_opt -L /usr/local/lib/ -ltbb
  • 运行代码
./t0_opt

参考:(1条消息) linux tbb 安装_Ubuntu18.04 GCC9 安装_天街踏尽公卿骨的博客-CSDN博客

ubuntu18.04安装tbb library相关推荐

  1. Ubuntu18.04安装cuDNN和Tensorflow的正确姿势

    文章目录 Ubuntu18.04安装cuDNN和Tensorflow的正确姿势 一.检查NVIDIA驱动是否安装成功 二.检查CUDA是否安装成功 三.安装cuDNN 1. 确定版本 2. 下载安装包 ...

  2. Ubuntu18.04安装RTL8125/RTL8168等网卡驱动程序

    Ubuntu下的驱动程序在这里下载, Realtek PCIe FE / GBE / 2.5G / Gaming Ethernet Family Controller Software - REALT ...

  3. Ubuntu18.04安装后要做的事

    Ubuntu18.04安装后要做的事 一.安装好第一件事:换源!! 按Windows键在搜索框中找到Software & Updates, 将源更新为阿里云的源. 在Other Softwar ...

  4. Ubuntu18.04安装pcl教程以及踩坑记录

    参考教程:Ubuntu18.04安装PCL(详细教程)_一盆柠檬的博客-CSDN博客 1.安装依赖 sudo apt-get update sudo apt-get install git build ...

  5. 笔记本显卡1660Ti,Ubuntu18.04安装Cuda、Cudnn、Anaconda、PyTorch、Tensorflow和Keras

    /**********************************************************************/ 注:写到最后不能放图片了,安装PyTorch.Tens ...

  6. 超详细 ubuntu18.04 安装 UHD 和 GNURadio

    1.版本号 系统环境:ubuntu18.04 UHD:v3.14.1.0 GNU radio: v3.9 2.参考链接 在参考本教程之前,建议浏览下列参考链接,对安装过程能初步判断对与错,也能明白其中 ...

  7. 【ubuntu18.04安装】128G u盘安装ubuntu18.04

    Ubuntu18.04下安装Nvidia驱动和CUDA10.1+CUDNN_那记忆微凉的博客-CSDN博客_ubuntu18.04安装cuda10.1 Ubuntu 18.0.4安装以及深度学习基本环 ...

  8. Ubuntu18.04安装CUDA、cudnn、pycharm、tensorflow-gpu

    前言 虚拟机里的linux系统似乎不能安装nvidia显卡驱动,在虚拟机Ubuntu系统上跑tensorflow只能使用cpu..看来还得去物理机装双系统或者用服务器了 因为,安装nvidia驱动报错 ...

  9. ubuntu18.04安装、使用、远程访问mariadb

    1.安装mariadb服务器 ~$sudo apt install mariadb-server 2.链接.测试 ~$sudo mysql -u root -p 测试结果: ~/Desktop$ su ...

最新文章

  1. SAP SD基础知识之文本确定(Text Determination)
  2. 使用HBase Client访问阿里云NoSQL数据库表格存储
  3. 使用IShellView接口函数CreateViewWindow
  4. 【HDU - 1968】【UVA - 12096】The SetStack Computer (模拟,集合求交集并集操作,STL实现)
  5. 几段表单处理的JQuery代码
  6. 什么?print 函数还可以打印彩色围棋局面?
  7. .Net 让网页列表的前3条显示New图标
  8. 经典SFM步骤——Lowe2005
  9. ADB调试关闭荣耀手机的系统更新(烦人的推送)
  10. 1265:【例9.9】最长公共子序列 LCS 朴素做法O(n*2)
  11. Cox 比例风险模型中HR和置信区间
  12. 打印杨辉三角 - C语言实现
  13. 设计计算机程序时 要考虑计算的过程,算法和程序设计练习题
  14. 试题 B: 既约分数
  15. 解決svchost.exe 100%的問題 (真的中毒了)
  16. OneDrive两台电脑之间文件同步操作
  17. 手动搭建服务器—Python
  18. 火狐 看网页注释_在Firefox内部(外部)创建注释
  19. 模型中各变量对模型的解释程度
  20. pyradiomics使用——1. 医学影像的组学特征值(Radiomics Features)提取

热门文章

  1. C#winform TreeView编程
  2. net start命令的使用
  3. win7 64蓝牙耳机连接问题
  4. 【WebView】关于Android WebView 的一些坑
  5. andorid 手机APP应用程序开发介绍
  6. 一个人的孤独,一群人的狂欢!
  7. 如何利用python解方程_如何用python解方程
  8. 在编译humanoid_navigation相关软件包,出现 Error at /usr/share/cmake-3.5/Modules/FindPkgConfig.cmake:解决方案
  9. RemoteViews完全解析
  10. IOS开发使用@IBInspectable给控件添加额外属性