0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

RISC-V公測平臺發(fā)布 使用YCSB測試SG2042上的MySQL性能

澎峰科技PerfXLab ? 來源:澎峰科技PerfXLab ? 作者:澎峰科技PerfXLab ? 2023-08-10 19:15 ? 次閱讀

實驗介紹:

YCSB(全稱為Yahoo! Cloud Serving Benchmark),該性能測試工具由Java語言編寫(在之前的MC文章中也提到過這個,如果沒看過的讀者可以去看看之前MC那一期),主要用于云端或者服務(wù)器端的數(shù)據(jù)庫性能測試工具,其內(nèi)部涵蓋了常見的NoSQL數(shù)據(jù)庫產(chǎn)品,如Cassandra、MongoDB、HBase、Redis等等。

MySQL數(shù)據(jù)庫服務(wù)是一個完全托管的數(shù)據(jù)庫服務(wù),可使用世界上最受歡迎的開源數(shù)據(jù)庫來部署云原生應(yīng)用程序。它是百分百由MySQL原廠開發(fā),管理和提供支持。

當然,本次實驗所用到的平臺還是衡山-2(HS-2)RISC-V通用主板,該主板是一款專為開發(fā)者設(shè)計的標準mATX主板,該主板最高支持128GB內(nèi)存,通過類似PC的豐富的接口和較強的兼容性,賦予開發(fā)者桌面級的RISC-V開發(fā)體驗。

HS-2主板搭載了一顆國產(chǎn)的服務(wù)器級RISC-V 64核處理器(SG2042)。SG2042是目前已量產(chǎn)的性能最高的RISC-V處理器,主要針對高性能計算領(lǐng)域需求設(shè)計,適用于科學(xué)計算、工程計算、AI計算、融合計算等大算力應(yīng)用場景。

實驗材料:

MySQL/MySQL源代碼

一臺SG2042服務(wù)器(HS-2)

TPCC源代碼

YCSB源代碼

JDK(本教程使用系統(tǒng)自帶的JDK 11)

實驗過程:

安裝MySQL:

方式一:直接通過apt安裝

sudo apt install mysql-server

方式二:編譯安裝(此路不通)

下載源碼

wget

https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.34.tar.gz

如果wget太慢,可以先提前下載到電腦上,然后再傳到服務(wù)器上。

解壓并進入


tar -xzvf mysql-8.0.34.tar.gz
cd mysql-8.0.34/
mkdir build
cd build/

由于MySQL需要boost,而且直接下載boost比較慢,因此我們選擇手動下載boost

https://boostorg.jfrog.io/artifactory/main/release/1.77.0/source/boost_1_77_0.tar.gz

解壓

tar -xzvf boost_1_77_0.tar.gz

回到mysql的build文件夾下:

cd mysql-8.0.34/build/

運行cmake


sudo cmake .. -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_unicode_ci 
-DENABLED_LOCAL_INFILE=ON                                    -DWITH_SSL=system 
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql/server  -DMYSQL_DATADIR=/usr/local/mysql/data 
-DMYSQL_TCP_PORT=3306                                        -DDOWNLOAD_BOOST=0 
-DWITH_BOOST=/home/perfxlab01/boost_1_77_0/

編譯并安裝

sudo make -j64

結(jié)果提示SHM_Buffer.hpp上的代碼報錯,后來發(fā)現(xiàn)當時不支持RISC-V平臺編譯,因此在此建議還是通過包管理器安裝mysql。

注意,如果是之前已經(jīng)卸載并重裝過mysql,如果出現(xiàn)sock無法訪問,請參考:

https://stackoverflow.com/questions/70813122/getting-error-mysql-service-failed-because-the-control-process-exited-with-erro

如果提示mysql.cnf出錯,只要執(zhí)行以下命令即可修復(fù)。


sudo touch /etc/mysql/mysql.cnf(新建mysql.cnf文件)
sudo dpkg --configure -a(重新配置)

初始化設(shè)置:

sudo mysql_secure_installation
wKgZomTUwCaACIfzAACfjZ3-_y8194.png

發(fā)現(xiàn)沒有權(quán)限

進入mysql

sudo mysql

執(zhí)行以下命令:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by '[你想設(shè)置的密碼]';

然后退出mysql shell

接下來我們運行YCSB測試

獲取YCSB

https://hub.yzuu.cf/brianfrankcooper/YCSB/releases/download/0.17.0/ycsb-0.17.0.tar.gz

https://github.com/brianfrankcooper/YCSB/releases/download/0.17.0/ycsb-0.17.0.tar.gz

如果wget下載太慢的話可以先在電腦上使用多線程下載工具下載到電腦上,然后上傳到服務(wù)器上

傳到服務(wù)器上后解壓:

tar -xzvf ycsb-0.17.0.tar.gz

進入YCSB文件夾

cd ycsb-0.17.0/

由于YCSB使用的Java語言編寫,因此我們還需要JDK。不過系統(tǒng)以已經(jīng)提前提供了JDK11,因此無需另外安裝JDK。

登錄數(shù)據(jù)庫,創(chuàng)建數(shù)據(jù)庫和表:


create database ycsb;
use ycsb;
CREATE TABLE usertable (
YCSB_KEY VARCHAR(255) PRIMARY KEY,
FIELD0 TEXT, FIELD1 TEXT,
FIELD2 TEXT, FIELD3 TEXT,
FIELD4 TEXT, FIELD5 TEXT,
FIELD6 TEXT, FIELD7 TEXT,
FIELD8 TEXT, FIELD9 TEXT
);
wKgZomTUwGaAK5RTAAATWyGzu7Y975.png

編輯db.properties

cd jdbc-binding/conf/
mv db.properties db.properties.bak
vim db.properties

db.properties內(nèi)容如下:


db.driver=com.mysql.cj.jdbc.Driver
db.url=jdbc:mysql://localhost:3306/ycsb
db.user=root
db.passwd=[你的密碼]

然后下載所需要的數(shù)據(jù)庫驅(qū)動

wget

https://downloads.mysql.com/archives/get/p/3/file/mysql-connector-j-8.0.33.tar.gz

解壓并將驅(qū)動安裝到指定文件夾下:


tar -xzvf mysql-connector-j-8.0.33.tar.gz 
cp mysql-connector-j-8.0.33/mysql-connector-j-8.0.33.jar ~/ycsb-0.17.0/jdbc-binding/lib/

載入數(shù)據(jù):

bin/ycsb load jdbc -P workloads/workloada -P ./jdbc-binding/conf/db.properties 
-cp ./jdbc-binding/lib/mysql-connector-j-8.0.33.jar

然后就是跑分時間:


bin/ycsb run jdbc -P workloads/workloada -P ./jdbc-binding/conf/db.properties 
-cp ./jdbc-binding/lib/mysql-connector-j-8.0.33.jar

(上面兩個步驟時間比較長,可以在等的時候順便泡杯咖啡或者看一會番等等)

如果提示Python報錯,那是因為YCSB使用的是Python 2代碼,雖然有人試圖將Python3支持與主倉庫合并,但是卻一直沒有被合并進去(0.17.0依舊還是使用Python 2)。

先安裝python2


sudo apt install python2

更改鏈接


sudo rm /usr/bin/python
sudo ln -s /usr/bin/python2 /usr/bin/python

測試一下:


python --version

如果提示Python 2.7.18那就說明已經(jīng)成功將鏈接改到python 2了。

然后重新嘗試執(zhí)行載入數(shù)據(jù)并跑分

跑分結(jié)果:


[OVERALL], RunTime(ms), 1180970
[OVERALL], Throughput(ops/sec), 84.67615604122035
[TOTAL_GCS_Copy], Count, 127
[TOTAL_GC_TIME_Copy], Time(ms), 2214
[TOTAL_GC_TIME_%_Copy], Time(%), 0.18747300947526185
[TOTAL_GCS_MarkSweepCompact], Count, 6
[TOTAL_GC_TIME_MarkSweepCompact], Time(ms), 526
[TOTAL_GC_TIME_%_MarkSweepCompact], Time(%), 0.044539658077681905
[TOTAL_GCs], Count, 133
[TOTAL_GC_TIME], Time(ms), 2740
[TOTAL_GC_TIME_%], Time(%), 0.23201266755294375
[READ], Operations, 49947
[READ], AverageLatency(us), 1485119.70881134
[READ], MinLatency(us), 20192
[READ], MaxLatency(us), 66584575
[READ], 95thPercentileLatency(us), 3217407
[READ], 99thPercentileLatency(us), 3725311
[READ], Return=OK, 49947
[CLEANUP], Operations, 100
[CLEANUP], AverageLatency(us), 207285.48
[CLEANUP], MinLatency(us), 4828
[CLEANUP], MaxLatency(us), 6111231
[CLEANUP], 95thPercentileLatency(us), 999935
[CLEANUP], 99thPercentileLatency(us), 1299455
[UPDATE], Operations, 50053
[UPDATE], AverageLatency(us), 609746.7518030887
[UPDATE], MinLatency(us), 22224
[UPDATE], MaxLatency(us), 2666495
[UPDATE], 95thPercentileLatency(us), 1309695
[UPDATE], 99thPercentileLatency(us), 1539071
[UPDATE], Return=OK, 50053

總結(jié):從跑分結(jié)果來看,SG2042在數(shù)據(jù)庫應(yīng)用方面還是比較不錯的,但是由于YCSB使用的是Python 2,而Python 2已于2020年1月1日停止支持,因此也希望YCSM盡快遷移到Python 3上。

參考資料

MySQL中文官網(wǎng):

https://www.mysql.com/cn/

YCSB的jdbc文檔

https://github.com/brianfrankcooper/YCSB/tree/master/jdbc

Port ycsb to Python3 and also make it Python2 compatible #1421(Github)

https://github.com/brianfrankcooper/YCSB/pull/1421

MySQL server fails to build on RISC-V 64

https://bugs.mysql.com/bug.php?id=100356

正文完


  • About HS-2

HS-2 RISC-V通用主板是澎峰科技與合作伙伴共同研發(fā)的一款專為開發(fā)者設(shè)計的標準mATX主板,它預(yù)裝了澎峰科技為RISC-V高性能服務(wù)器定制開發(fā)的軟件包,包括各種標準bencmark、支持V擴展的GCC編譯器、計算庫、中間件以及多種典型服務(wù)器應(yīng)用程序。

HS-2 RISC-V通用主板搭載了一顆國產(chǎn)RISC-V 64核處理器(SG2042)。SG2042是目前已量產(chǎn)的性能最高的RISC-V處理器,主要針對高性能計算領(lǐng)域需求設(shè)計,適用于科學(xué)計算、工程計算、AI計算、融合計算等大算力應(yīng)用場景。

wKgZomTUwSaACzXRAAZ34cPcisY858.png
  • 關(guān)于RISC-V公共測試平臺
wKgZomTUwUSAa2dyAA2V8stwnBo166.png

RISC-V高性能處理器公共測試云平臺 ·快速使用指南,下載鏈接:https://www.kdocs.cn/l/cmnYcyFIlVRx

  • RISC-V公共測試云平臺系列文章

1. RISC-V公測平臺發(fā)布 ·Stream帶寬完整測試

2. RISC-V公測平臺發(fā)布 · 我的世界MohistMC

3. RISC-V公測平臺發(fā)布 · 第一個WEB Server“Hello RISC-V world!”

4. RISC-V公測平臺發(fā)布 ·如何在SG2042上玩轉(zhuǎn)k3s

5. “RISC-V成長日記” blog發(fā)布,第一個運行在RISC-V服務(wù)器上的blog?

6. RISC-V公測平臺發(fā)布:如何在SG2042上玩轉(zhuǎn)OpenMPI

7. RISC-V公測平臺發(fā)布:Compiling The Fedora Linux Kernel Natively on RISC-V

8. RISC-V公測平臺發(fā)布 · Unix Bench完整測試

9. RISC-V公測平臺發(fā)布 · 使用YCSB測試SG2042上的MySQL性能(本篇)

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • JAVA
    +關(guān)注

    關(guān)注

    19

    文章

    2952

    瀏覽量

    104482
  • MySQL
    +關(guān)注

    關(guān)注

    1

    文章

    797

    瀏覽量

    26399
  • RISC-V
    +關(guān)注

    關(guān)注

    44

    文章

    2204

    瀏覽量

    45958
  • 澎峰科技
    +關(guān)注

    關(guān)注

    0

    文章

    48

    瀏覽量

    3156
收藏 人收藏

    評論

    相關(guān)推薦

    算能 SG2042 / Milk-V Pioneer 的含金量還在不斷提升:RISC-V 生態(tài)逐步完善,玩大型游戲已經(jīng)不遠了!

    SG2042性能RISC-V處理器的臺式機Milk-VPioneer上成功玩了一把并錄制了一段視頻,可以看到即使最為入門級的AMDRX580系列顯卡,游戲過程也非常流暢。
    的頭像 發(fā)表于 11-01 08:10 ?86次閱讀
    算能 <b class='flag-5'>SG2042</b> / Milk-<b class='flag-5'>V</b> Pioneer 的含金量還在不斷提升:<b class='flag-5'>RISC-V</b> 生態(tài)逐步完善,玩大型游戲已經(jīng)不遠了!

    加入全球 RISC-V Advocate 行列,共筑 RISC-V 的未來 !

    ,貢獻內(nèi)容,在社交媒體推廣RISC-V。加入我們,共同發(fā)展RISC-V社區(qū),傳播RISC-V的消息!成為RISC-VAdvocate的好處
    的頭像 發(fā)表于 09-10 08:08 ?281次閱讀
    加入全球 <b class='flag-5'>RISC-V</b> Advocate 行列,共筑 <b class='flag-5'>RISC-V</b> 的未來 !

    中國電信“北?!?b class='flag-5'>RISC-V云計算試驗平臺發(fā)布

    首個RISC-V云計算試驗平臺“北?!薄4舜?b class='flag-5'>發(fā)布活動得到了RVEI戰(zhàn)略指導(dǎo)委員會主任、中國工程院院士倪光南的鼎力支持與親自參與,彰顯了“北?!?b class='flag-5'>平臺在
    的頭像 發(fā)表于 08-28 16:06 ?847次閱讀

    2024 RISC-V 中國峰會:華秋電子助力RISC-V生態(tài)!

    、生態(tài)伙伴、公開課、開發(fā)者社區(qū)、評測試用等欄目,是為各生態(tài)廠商量身定制的硬件開發(fā)平臺,通過線上社區(qū)+一站式供應(yīng)鏈服務(wù)讓硬件開發(fā)變得更簡單。他表示,RISC-V開放平臺已吸引30+廠商入
    發(fā)表于 08-26 16:46

    Imagination CPU 系列研討會 | RISC-V 平臺性能分析和調(diào)試

    為了讓開發(fā)者及工程師深入了解Imagination的CPU產(chǎn)品及相關(guān)解決方案,Imagination將陸續(xù)推出5期線上研討會,包含:RISC-V平臺性能分析和調(diào)試;RISC-V安全和
    的頭像 發(fā)表于 08-10 08:28 ?232次閱讀
    Imagination CPU 系列研討會 | <b class='flag-5'>RISC-V</b> <b class='flag-5'>平臺</b>的<b class='flag-5'>性能</b>分析和調(diào)試

    risc-v的發(fā)展歷史

    Foundation),旨在促進RISC-V架構(gòu)的發(fā)展和推廣。該基金會由大量的企業(yè)和機構(gòu)支持,包括英特爾、Nvidia、谷歌、華為、IBM、紅帽、西部數(shù)據(jù)等。 2015年:RISC-V基金會發(fā)布了第一個穩(wěn)定版
    發(fā)表于 07-29 17:20

    rIsc-v的缺的是什么?

    RISC-V作為一種開源的指令集架構(gòu)(ISA),自其誕生以來就受到廣泛關(guān)注和應(yīng)用,但它也存在一些不足之處。以下是RISC-V架構(gòu)目前存在的主要缺點: 1. 性能問題 相對于專用ISA的性能
    發(fā)表于 07-29 17:18

    國產(chǎn)RISC-V芯片性能穩(wěn)定嗎?

    想使用國產(chǎn)的RISC-V架構(gòu)的芯片做無人機投送快遞的方案,可行性高嗎?國產(chǎn)的RISC-V MCU穩(wěn)定么?
    發(fā)表于 05-20 15:43

    國產(chǎn)RISC-V MCU推薦

    ,可以消除外部電路的缺陷,更好地適應(yīng)外部環(huán)境的變化。因此,ESP32的批量生產(chǎn)不需要昂貴的專用Wi-Fi測試設(shè)備。 性能超凡的RISC-V MCU 有些網(wǎng)友推薦先楫的產(chǎn)品,devinfanyang認為
    發(fā)表于 04-17 11:00

    什么是RISC-VRISC-V的關(guān)鍵技術(shù)

    RISC-V不僅僅是一個流行語;它建立在堅實的技術(shù)基礎(chǔ)之上,使其有別于其他指令集架構(gòu) (ISA)。RISC-V的核心是基于精簡指令集計算(RISC)原則,強調(diào)效率和性能
    發(fā)表于 03-26 09:34 ?3372次閱讀

    潤開鴻基于高性能RISC-V開源架構(gòu)DAYU800通過OpenHarmony兼容性測評

    近期,江蘇潤開鴻數(shù)字科技有限公司(以下簡稱“潤開鴻”)基于高性能RISC-V開源架構(gòu)處理器研發(fā)的OpenHarmony標準系統(tǒng)開發(fā)平臺HH-SCDAYU800通過OpenHarmony 3.2.2
    發(fā)表于 12-14 17:33

    256核!賽昉發(fā)布全新RISC-V眾核子系統(tǒng)IP平臺

    (StarLink-500),一款高性能RISC-V多核子系統(tǒng)IP平臺。 本次發(fā)布,賽昉科技再次擴充自研IP矩陣,引領(lǐng)RISC-V邁入更高
    發(fā)表于 11-29 13:37

    賽昉科技發(fā)布全新RISC-V眾核子系統(tǒng)IP平臺

    11月23日,中國RISC-V軟硬件生態(tài)領(lǐng)導(dǎo)者賽昉科技正式發(fā)布自主研發(fā)的片一致性互聯(lián)IP——昉·星鏈-700(StarLink-700),并推出基于StarLink-700和昉·天樞-90(Dubhe-90)的高
    的頭像 發(fā)表于 11-27 10:25 ?561次閱讀
    賽昉科技<b class='flag-5'>發(fā)布</b>全新<b class='flag-5'>RISC-V</b>眾核子系統(tǒng)IP<b class='flag-5'>平臺</b>

    256核!賽昉科技發(fā)布全新RISC-V眾核子系統(tǒng)IP平臺

    11月23日,中國RISC-V軟硬件生態(tài)領(lǐng)導(dǎo)者賽昉科技正式發(fā)布自主研發(fā)的片一致性互聯(lián)IP——昉·星鏈-700(StarLink-700),并推出基于StarLink-700和昉·天樞-90
    的頭像 發(fā)表于 11-24 08:19 ?458次閱讀
    256核!賽昉科技<b class='flag-5'>發(fā)布</b>全新<b class='flag-5'>RISC-V</b>眾核子系統(tǒng)IP<b class='flag-5'>平臺</b>

    安路科技發(fā)布全新FPSoC?器件,芯來RISC-V內(nèi)核助力高性能融合

    、可擴展SoC平臺的優(yōu)勢。 DR1V90內(nèi)置RISC-V內(nèi)核為 芯來科技UX900系列RISC-V處理器內(nèi)核。 RISC-V處理器配合片
    的頭像 發(fā)表于 11-17 15:50 ?1177次閱讀
    安路科技<b class='flag-5'>發(fā)布</b>全新FPSoC?器件,芯來<b class='flag-5'>RISC-V</b>內(nèi)核助力高<b class='flag-5'>性能</b>融合