瑞芯微RK3576芯片作為一款中高端的八核Arm架構(gòu)嵌入式處理器,集成 Mali-G52 MC3的GPU。本次OpenGL性能測(cè)試,基于觸覺智能RK3576開發(fā)板Purple Pi OH2演示。
OpenGL開放圖形庫(kù)
- OpenGL協(xié)議簡(jiǎn)介
OpenGL(Open Graphics Library,開放圖形庫(kù))是一套跨平臺(tái)、跨語言的開源圖形編程接口,而非編程語言或獨(dú)立軟件,核心作用是為開發(fā)者提供標(biāo)準(zhǔn)化的函數(shù) / 指令集,讓程序能直接控制顯卡(GPU)渲染 2D/3D 圖形,廣泛應(yīng)用于游戲、可視化、工業(yè)設(shè)計(jì)、虛擬現(xiàn)實(shí)(VR)等領(lǐng)域。
- 應(yīng)用場(chǎng)景
觸覺智能Purple Pi OH2開發(fā)板采用RK3576核心板+底板設(shè)計(jì),支持二次開發(fā)底板。該開發(fā)板可支持OpenGL ES、OpenGL。同時(shí)觸覺智能作為專業(yè)RK方案商,可提供RK3576配套的工業(yè)控制、智能終端、車載顯示、邊緣計(jì)算等場(chǎng)景的核心硬件方案。
演示環(huán)境
演示設(shè)備為觸覺智能RK3576開發(fā)板Purple Pi OH2:
系統(tǒng)固件為Ubuntu20.04(定制固件);
測(cè)試工具軟件包括Glmark2、Glxgears、QT應(yīng)用程序;
QT版本:Qt-5.15.8
觸覺智能RK3576核心板,僅40.5×40.5mm極致小尺寸,郵票孔封裝,支持LPDDR4或LPDDR5高速內(nèi)存,率先適配開源鴻蒙OpenHarmony5.0國(guó)產(chǎn)操作系統(tǒng),100%全國(guó)產(chǎn),支持最高-40~85℃工業(yè)級(jí)環(huán)境。

OpenGL測(cè)試
- Glmark2工具
通過RK3576開發(fā)板Ubuntu系統(tǒng)安裝GLmark2工具軟件,并執(zhí)行以下命令進(jìn)行測(cè)試:
sudo apt-get install glmark2glmark2
測(cè)試分值結(jié)果為675分:

- Glxgears測(cè)試
該工具屬于mesa-utils套件,是OpenGL測(cè)試工具,適合快速驗(yàn)證GPU的基礎(chǔ)渲染功能和初步性能,主要用于測(cè)試GPU幀率。
首先我們將Glxgears工具進(jìn)行安裝:
sudo apt install mesa-utils
測(cè)試GPU幀率:
輸入Glxgears測(cè)試會(huì)彈出帶三個(gè)旋轉(zhuǎn)齒輪的窗口,終端每5秒打印一次幀率,命令如下:
sudo glxgears
由于測(cè)試HDMI顯示器刷新率限制60FPS,下述測(cè)試結(jié)果平均幀率在60FPS,無法更高:

解除顯示器刷新率限制,測(cè)試GPU極限幀率,執(zhí)行如下命令:
sudo vblank_mode=0 glxgears
可以看到極限幀率平均在達(dá)到了2516FPS!

QT程序測(cè)試OpenGL
接下來的測(cè)試使用QT官方的OpenGL測(cè)試?yán)?,該程序核心測(cè)試OpenGL 的核心功能,包括著色器編程、VBO 緩沖、紋理映射、光照計(jì)算、3D 坐標(biāo)變換、深度測(cè)試等。相關(guān)例程源碼請(qǐng)關(guān)注觸覺智能公眾號(hào),添加客服134-2385-6106獲取。
- 編譯&測(cè)試
進(jìn)入系統(tǒng)執(zhí)行如下命令,編譯QT程序:
qmake .make
返回結(jié)果:


編譯完成后,運(yùn)行QT測(cè)試程序:
./qopenglwidget &
運(yùn)行如圖:

后臺(tái)查看GPU占用率,占比68%,處于中等負(fù)載狀態(tài):
watch -n 0.3 cat /sys/devices/platform/27800000.gpu/devfreq/27800000.gpu/load

QT程序OpenGL部分核心代碼分析:
//OPENGL初始化 void GLWidget::initializeGL() { // 1. 初始化OpenGL函數(shù) initializeOpenGLFunctions(); // 2. 創(chuàng)建紋理 m_texture = new QOpenGLTexture(QImage(":/qt.png")); // 3. 設(shè)置Program1(Qt Logo渲染) setupProgram1(); // 4. 設(shè)置Program2(紋理立方體渲染) setupProgram2(); // 5. 初始化變量 m_fAngle = 0; m_fScale = 1; // 6. 創(chuàng)建幾何數(shù)據(jù) createGeometry(); // 7. 設(shè)置VBO1(Qt Logo頂點(diǎn)數(shù)據(jù)) setupVBO1(); // 8. 創(chuàng)建氣泡效果 createBubbles(bubbleNum - m_bubbles.count()); } //OpenGL渲染 void GLWidget::paintGL() { // 1. 氣泡管理 createBubbles(bubbleNum - m_bubbles.count()); // 2. 開始QPainter繪制 QPainter painter; painter.begin(this); painter.beginNativePainting(); // 3. OpenGL狀態(tài)設(shè)置和清理 glClearColor(...); glClear(...); // 4. 3D渲染設(shè)置 glFrontFace(GL_CW); glCullFace(GL_FRONT); glEnable(GL_CULL_FACE); glEnable(GL_DEPTH_TEST); // 5. 模型視圖矩陣計(jì)算 QMatrix4x4 modelview; ... // 6. 3D物體渲染 if (m_qtLogo) { paintQtLogo(); // 渲染Qt Logo } else { paintTexturedCube(); // 渲染紋理立方體 } // 7. 恢復(fù)OpenGL狀態(tài) glDisable(GL_DEPTH_TEST); glDisable(GL_CULL_FACE); painter.endNativePainting(); // 8. 2D疊加繪制 if (m_showBubbles) { ... // 繪制氣泡 } // 9. 幀率顯示 if (const int elapsed = m_time.elapsed()) { ... // 顯示FPS } painter.end(); // 10. 氣泡動(dòng)畫更新 for (Bubble *bubble : qAsConst(m_bubbles)) bubble->move(rect()); // 11. 動(dòng)畫狀態(tài)更新 updateAnimationState(); }
本次測(cè)試完畢,可以看出RK3576擁有不凡的GPU性能,加上八核CPU與6Tops算力,可作為RK3588超值平替!
觸覺智能Purple Pi OH2開發(fā)板,基于瑞芯微第二代8nm高性能AIOT平臺(tái)RK3576,基于瑞芯微第二代8nm高性能AIOT平臺(tái)RK3576,現(xiàn)專享秒殺活動(dòng),可聯(lián)系客服參與活動(dòng)。
-
gpu
+關(guān)注
關(guān)注
28文章
5283瀏覽量
136095 -
OpenGL
+關(guān)注
關(guān)注
1文章
88瀏覽量
30750 -
核心板
+關(guān)注
關(guān)注
6文章
1425瀏覽量
32153 -
gpu渲染
+關(guān)注
關(guān)注
0文章
5瀏覽量
2921 -
rk3576
+關(guān)注
關(guān)注
1文章
304瀏覽量
1682
發(fā)布評(píng)論請(qǐng)先 登錄
如何移植EtherCAT Igh--基于米爾RK3576開發(fā)板
【作品合集】米爾RK3576開發(fā)板測(cè)評(píng)
【作品合集】靈眸科技EASY EAI Orin Nano(RK3576)開發(fā)板測(cè)評(píng)
新品體驗(yàn) | RK3576開發(fā)板
米爾RK3576開發(fā)板特惠活動(dòng)!
基于RK3576開發(fā)板的MIPI-DSI使用
RK3576開發(fā)板OpenGL性能大起底,這數(shù)據(jù)我真的服了
評(píng)論