下載最新的TBB的庫,我的是tbb30_20100822oss_src;
tar zxvf tbb30_20100822oss_src
進入解壓縮目錄下,執行make。
cd build
chmod +x *.sh
sh generate_tbbvars.sh
sh tbbvars.sh
cd linux_intel64_gcc_cc4.1.2_libc2.5_kernel2.6.18_release
cp *.so /usr/lib
cp *.so.2 /usr/lib
/sbin/ldconfig
回到解壓縮目錄下
cd include
cp *.* /usr/local/include
cd ../examples/pipeline/square
make
如果是下面的提示,則表示編譯成功
g++ -O2 -DNDEBUG -o square square.cpp -ltbb
./square input.txt output.txt
serial run time = 0.32484
parallel run time = 0.167507
從它的例子我們看到執行時間并行的比串行的要縮短一半時間;但這個庫
只是個C++庫。tbb的特點:
提供C++模版庫,用戶不必關注線程,而專注任務本身。
抽象層僅需很少的接口代碼,性能上毫不遜色。
靈活地適合不同的多核平臺。
線程庫的接口適合于跨平臺的移植(Linux, Windows, Mac)
支持的C++編譯器 – Microsoft, GNU and Intel