內存測試工具multichase OS安裝優化


 

multichase可以衡量內存間的帶寬、延遲,是一種新的內存測試工具。

 

系統、工具版本:

RHEL 8.3安裝gcc和glibc
OS gcc版本8.3.1
OS glibc版本 glibc-2.28
 
以下操作需要root
 
操作方案:
 
1.安裝最新版gcc gcc-10.2
去gcc官網隨便找個快的mirror site,網站列表: https://gcc.gnu.org/mirrors.html
 
例如:wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-10.2.0/gcc-10.2.0.tar.xz
物理距離來說,這個霓虹的看起來快一點~
 
下載后執行:
tar -xvf gcc-10.2.0.tar.xz
cd gcc-10.2.0/
./contrib/download_prerequisites
 
依賴關系解決最快捷的方法是執行上述命令,不用安裝時報錯解決,不然有可能還會出現版本問題導致的安裝報錯,要是網絡有問題,還是去gcc官網 ftp://gcc.gnu.org/pub/gcc/infrastructure/找對應顯示版本下載安裝
 
創建build文件夾和編譯庫文件夾,兩個文件夾路徑分開,編譯時--prefix指定編譯庫文件夾,以免混亂
build文件夾:mkdir ../gcc-10.2.0/build
編譯庫文件夾:mkdir /usr/lib/gcc-10.2.0
 
編譯安裝:
cd build/
../configure --prefix=/usr/lib/gcc-10.2.0/ --enable-checking=release --enable-languages=c,c++ --disable-multilib
make -j64
make install
 
編譯完成后查看
cd /usr/lib/gcc-10.2.0/ 目錄下有gcc的各種庫
 
修改舊版本軟鏈接,建立新的版本鏈接
mv /usr/bin/gcc /usr/bin/gcc-8.3.1
mv /usr/bin/g++ /usr/bin/g++-8.3.1
alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8.3.1 99 --slave /usr/bin/g++ g++ /usr/bin/g++-8.3.1
alternatives --install /usr/bin/gcc gcc /usr/lib/gcc-10.2.0/bin/x86_64-pc-linux-gnu-gcc 99 --slave /usr/bin/g++ g++ /usr/lib/gcc-10.2.0/bin/x86_64-pc-linux-gnu-g++
alternatives --config gcc
輸入2,就是我們剛剛裝的gcc-10.2.0
 
查看當前版本
gcc -v
g++ -v
 
庫報錯的話,把/usr/lib或者/usr/lib64底下軟鏈接刪除,重新把/usr/lib/gcc-10.2.0/下的相應庫鏈接過去
 
 
 
 
2. 拷貝multichase源碼包:git clone https://github.com/google/multichase.git
 
安裝:
cd multichase
make
 
multichase到目前為止已經可以安裝了,只在本機使用的話把makefile里的-static靜態編譯選項去掉,其他參數等同后續步驟,若要其他機器進行使用,則還需裝靜態編譯需要的靜態庫
 
直接編譯報錯:
 
解決方案:
/usr/lib里查看下該報錯庫版本號,執行以下命令查看庫屬於哪個包:
rpm -qf librt-2.28.so
得到:
glibc-2.28-127.el8.i686
 
其他幾個庫同理,都是glibc的
 
安裝glibc源碼包,編譯靜態庫。安裝時裝glibc-2.33,其他版本的glibc安裝時會出現-Werror=array-parameter的報錯,詳情查看 https://sourceware.org/bugzilla/show_bug.cgi?id=26647
 
既然大佬更新解決了就直接用glibc-2.33版本,直接下載:
wget http://ftp.gnu.org/gnu/libc/glibc-2.33.tar.xz
 
解壓:
tar -xvf glibc-2.33.tar.xz
cd glibc-2.33
 
同樣的套路:
build文件夾:mkdir ../glibc-2.33/build
編譯庫文件夾:mkdir /usr/local/glibc-2.33
 
安裝:
cd build
../configure --prefix=/usr/local/glibc-2.33
make
make install
 
裝好了,去相應文件夾底下看一眼
cd /usr/local/glibc-2.33/lib
可以看到已經有.a的靜態庫了
 
 
 
 
3. 修改multichase的Makefile:
在LDLIBS最后 -L/路徑 加上剛剛編譯的靜態庫的路徑
-march=znver3是x86 AMD MILAN平台的優化參數,x86 INTEL做gcc其他參數修改,其他x86平台可以不用添加,下面那里需要保留,填寫: x86-64
 
改完makefile重新make,生成可執行文件,執行測試。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM