RISC-V公测平台发布· CoreMark测试报告

一. CoreMark简介

CoreMark是一款用于评估CPU性能的基准测试程序,它包含了多种不同的计算任务,包括浮点数、整数、缓存、内存等方面的测试。CoreMark的测试结果通常被用来作为CPU性能的参考,它可以帮助开发人员和系统管理员评估不同处理器和系统的性能,比较不同处理器之间的性能差异,也可以用来测试处理器在多线程并行计算方面的性能。

官网地址:

https://www.eembc.org

二. 平台环境

[硬件参数]

处理器: 算能SG2042 x 1

核心数: 64核

L1 Cache: I:64KB and D:64KB

L2 Cache: 1MB/Cluster

L3 Cache: 64MB System Cache

DRAM: DDR4  16Gx4

[软件环境]

linux版本: 22.10

gcc版本: 10.2.0

三. 获取源码

EEMBC将CoreMark源码托管在GitHub上,可以访问以下链接获得源码;也可以通过git命令下载到本地。

链接

https://github.com/eembc/coremark

四. 编译

本次采用的编译器是支持RVV的编译器,在我们的体验机器上已经完成了部署,可以通过文章下方的联系方式进群体验。

1:首先需要修改core_portme.mak文件,(在LFLAGAS_END变量添加-lpthread)

2:添加编译参数:-march=rv64gcv0p7_zfh_xtheadc -mabi=lp64d -mtune=c920。

添加完成后效果如下:

# Flag: CC
#    Use this flag to define compiler to use
CC = gcc
# Flag: CFLAGS
#    Use this flag to define compiler options. Note, you can add compiler options from the command line using XCFLAGS="other flags"
PORT_CFLAGS = -O3
#===============================Alter by me===========================
PF_CFLAGS = -march=rv64gcv0p7_zfh_xtheadc -mabi=lp64d -mtune=c920
FLAGS_STR = "$(PORT_CFLAGS) $(XCFLAGS) $(XLFLAGS) $(LFLAGS_END) $(PF_CFLAGS)"
CFLAGS = $(PORT_CFLAGS) $(PF_CFLAGS) -I$(PORT_DIR) -Iposix -I. -DFLAGS_STR=\"$(FLAGS_STR)\"
#===============================Alter by me===========================
# Flag: NO_LIBRT
#    Define if the platform does not provide a librt
ifndef NO_LIBRT
#Flag: LFLAGS_END
#    Define any libraries needed for linking or other flags that should come at the end of the link line (e.g. linker scripts). 
#    Note: On certain platforms, the default clock_gettime implementation is supported but requires linking of librt.
#===============================Alter by me===========================
LFLAGS_END += -lrt -lpthread 
#===============================Alter by me===========================

单核编译

ubuntu@perfxlab:/public/benchmark/coremark$ make compile  XCFLAGS="-DMULTITHREAD=1 -DUSE_PTHREAD"

多核编译

ubuntu@perfxlab:/public/benchmark/coremark$ make compile  XCFLAGS="-DMULTITHREAD=64 -DUSE_PTHREAD"

五. 在SG2042上执行coremark

1. 单核测试结果如下:

图片

2. 64核测试结果如下:

图片

六. CoreMark分数排行榜

SG2042 的64核跑分结果为:692303.531830  ,cpu主频是2GHz。

根据公式:

CoreMark / MHz = (CoreMark 分数) / (时钟频率,以兆赫兹为单位)

我们可以算出SG2042的 CoreMark / MHz=692303.531830/2000=346.55

从官网可以看到,截止目前(2023-8-16 )总共上传了767款型号的CoreMark跑分结果。

官网链接

https://www.eembc.org/coremark/scores.php 

图片
图1:Coremark分数从高到低排序

图片
图2:Coremark/MHz 分数从高到低排序

从排行榜上可以看到(上图1和图2),无论是基于 CoreMark 分数还是 CoreMark/MHz 分数,SG2042都展现出令人瞩目的表现。作为全球第一款 RISC-V 处理器芯片,它的分数已经值得充分的赞赏。尽管与第一名之间还存在一定的差距,但国产芯片将持续不断地努力,不断进步。让我们为国产芯片的未来发展加油!

正文完


  • About HS-2

HS-2 RISC-V通用主板是澎峰科技与合作伙伴共同研发的一款专为开发者设计的标准mATX主板,它预装了澎峰科技为RISC-V高性能服务器定制开发的软件包,包括各种标准bencmark、支持V扩展的GCC编译器、计算库、中间件以及多种典型服务器应用程序。

HS-2 RISC-V通用主板搭载了一颗国产RISC-V 64核处理器(SG2042)。SG2042是目前已量产的性能最高的RISC-V处理器,主要针对高性能计算领域需求设计,适用于科学计算、工程计算、AI计算、融合计算等大算力应用场景。

图片

  • 关于RISC-V公共测试平台

    图片

RISC-V高性能处理器公共测试云平台 ·快速使用指南,下载链接:https://www.kdocs.cn/l/cmnYcyFIlVRx

  • RISC-V公共测试云平台系列文章

  1.  RISC-V公测平台发布 ·Stream带宽完整测试

  2.  RISC-V公测平台发布 · 我的世界MohistMC

  3.  RISC-V公测平台发布 · 第一个WEB Server“Hello RISC-V world!”

  4.  RISC-V公测平台发布 ·如何在SG2042上玩转k3s

  5. “RISC-V成长日记” blog发布,第一个运行在RISC-V服务器上的blog?

  6. RISC-V公测平台发布:如何在SG2042上玩转OpenMPI

  7. RISC-V公测平台发布:Compiling The Fedora Linux Kernel Natively on RISC-V

  8.  RISC-V公测平台发布 · Unix Bench完整测试

  9. RISC-V公测平台发布 · 使用YCSB测试SG2042上的MySQL性能

  10. RISC-V公测平台发布 · 7-zip 测试

  11. RISC-V公测平台发布·  CoreMark测试报告(本篇)

欢迎投稿,发送至riscvinfo@perfxlab.com

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/47832.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ClickHouse(二十三):Java Spark读写ClickHouse API

进入正文前,感谢宝子们订阅专题、点赞、评论、收藏!关注IT贫道,获取高质量博客内容! 🏡个人主页:含各种IT体系技术,IT贫道_Apache Doris,大数据OLAP体系技术栈,Kerberos安全认证-CSDN博客 &…

部署问题集合(十九)linux设置Tomcat、Docker,以及使用脚本开机自启(亲测)

前言 因为不想每次启动虚拟机都要手动启动一遍这些东西,所以想要设置成开机自启的状态 设置Tomcat开机自启 创建service文件 vi /etc/systemd/system/tomcat.service添加如下内容,注意修改启动脚本和关闭脚本的地址 [Unit] DescriptionTomcat9068 A…

C语言编写图形界面

文章目录 环境使用库基础概念句柄 程序的入口创建窗口定义窗口类注册窗口类创建窗口 完整代码运行效果 环境 使用的是VSCode MinGW&#xff1b; 使用库 我们使用windows.h库来实现图形化界面。 头文件如下&#xff1a; #include <windows.h>windows.h是 Windows 操作…

5.2 汇编语言:标志位测试指令

汇编语言是一种面向机器的低级语言&#xff0c;用于编写计算机程序。汇编语言与计算机机器语言非常接近&#xff0c;汇编语言程序可以使用符号、助记符等来代替机器语言的二进制码&#xff0c;但最终会被汇编器编译成计算机可执行的机器码。 标志位测试指令是汇编语言中用于测…

春秋云镜 CVE-2019-2725

春秋云镜 CVE-2019-2725 Weblogic < 10.3.6 ‘wls-wsat’ XMLDecoder 反序列化漏洞 靶标介绍 Oracle Fusion Middleware&#xff08;子组件&#xff1a;Web Services&#xff09;的 Oracle WebLogic Server 组件中的漏洞。受影响的受支持版本为 10.3.6.0.0 和 12.1.3.0.0。…

cornerstoneJS加载图片(base、矩阵)

cornerstoneJS默认加载dicom影像数据&#xff0c;将识别到的dicom数据转换成imageData数据&#xff0c;在界面上展示。故&#xff0c;cornerstoneJS也可直接加载imageData。 imageData数据的data是一个数组&#xff0c;每四个元素代表一个点&#xff0c;四个元素分别表示R、G、…

油画欣赏|《纯洁的梦乡》,心中的宇宙

《纯洁的梦乡》 80x60cm 陈可之2021年绘 油画《纯洁的梦乡》&#xff0c;以绮丽的想象&#xff0c;精湛的技艺&#xff0c;描绘出梦境中的蜻蜓、山、水、星空等事物&#xff0c;展现出一个纯洁美好的心灵宇宙世界。 油画采用水平构图的方式&#xff0c;在位置偏低的山脚设置水…

Java实现单例模式的几种方法

单例模式作为23中设计模式中最基础的设计模式&#xff0c;一般实现方式为 ①私有化构造方法 ②提供一个获取对象的静态方法 除此之外&#xff0c;实现单例模式的方法还有很多种&#xff0c;这篇文章主要介绍实现单例模式的几种方法。 目录 一、懒汉式单例 二、懒汉式单例优化…

分析Flink,源和算子并行度不一致时,运行一段时间后,看似不再继续消费的问题,提供解决思路。

文章目录 背景分析 问题来了比较一开始的情况解决方式 背景 之前有分析过一次类似问题&#xff0c;最终结论是在keyby之后&#xff0c;其中有一个key数量特别庞大&#xff0c;导致对应的subtask压力过大&#xff0c;进而使得整个job不再继续运作。在这个问题解决之后&#xff…

信息经济环境下 OSSP 的目标和基本思想

在信息经济环境下&#xff0c;OA 系统软件的应用十分广泛&#xff0c;对于企业内部OA 系统软件 的开发管理&#xff0c;一直是很多企业信息化建设的一个重点内容&#xff0c;鉴于不同企业所面临的 环境和企业经营项目的差别&#xff0c;每个企业的OA 系统应该是符合内部应用特…

UG\NX二次开发 创建中心线

文章作者:里海 来源网站:王牌飞行员_里海_里海NX二次开发3000例,C\C++,Qt-CSDN博客 简介: 下面是在制图模块创建中心线的例子,用的是ufun函数。 效果: 代码: #include "me.hpp"#include <stdio.h> #include <string.h> #include <uf.h>…

postgresql 谨慎使用正则删除(%,_)

建表 CREATE TABLE public.ellistest (id bigserial NOT NULL,"name" varchar null,primary key (id) );插入数据 删除含有_线的数据 你会发现表被清空了 delete from ellistest where name like %_%原因 百分号(%)用于表示0、1或多个字符或数字。 下划线通配符…

Java面试题--SpringCloud篇

一、Spring Cloud 1. 什么是微服务架构&#xff1f; 微服务架构就是将单体的应用程序分成多 个应用程序&#xff0c;这多个应用程序就成为微服 务&#xff0c;每个微服务运行在自己的进程中&#xff0c;并 使用轻量级的机制通信 这些服务围绕业务能力来分&#xff0c;并通过自…

【【萌新的STM32学习-12】】

萌新的STM32学习-12 GPIO八种模式 1输入浮空 输入用&#xff0c;完全浮空&#xff0c;状态不定 2输入上拉 输入用&#xff0c;用内部上拉&#xff0c;默认是高电平 3输入下拉 输入用&#xff0c;用内部下拉&#xff0c;默认是低电平 4模拟功能 ADC DAC 5开漏输出 软件IIC的…

2023年上半年,吉利汽车销量增长13.1%,同比增长38%

根据吉利汽车发布的中期业绩报告&#xff0c;2023年上半年&#xff0c;吉利汽车取得了令人瞩目的销售和收入增长。该公司在中国乘用车市场表现出色&#xff0c;销量增长了13.1%&#xff0c;达到了69.4万辆&#xff0c;超过了整体市场增长率&#xff08;8.8%&#xff09;。 这主…

Gitlab部署和基础使用

一. 环境准备 1.1 Ubuntu 环境 允许 root 远程 ssh 连接 ~$ sudo su - root [sudo] password for stevenux: ~# passwd Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully ~# vim /etc/ssh/sshd_config ... PermitRootLogin yes P…

学习笔记|按键原理|消抖|按键点灯的4种模式|STC32G单片机视频开发教程(冲哥)|第七集:按键点灯

文章目录 第六集&#xff08;下&#xff09;课后练习解答&#xff1a;SOS求救灯光编写求救信号原理冲哥代码及解析分模块设计&#xff1a;math.h&#xff1a;math.c:while主程序部分 按键点灯&#xff08;下&#xff09;1.按键的原理Tips&#xff1a;按键消抖 2.按键的代码实现…

python 基础篇 day 1 初识变量和数据类型

文章目录 变量变量作用——用于存储和表示数据。变量命名规则命名法大驼峰小驼峰下划体n j i a x 通常作为临时变量使用 建议 变量种类全局变量&#xff08;Global Variables&#xff09;局部变量&#xff08;Local Variables&#xff09;静态变量&#xff08;Static Variables…

九耶丨阁瑞钛伦特-请描述一下如何用Axure绘制banner图效果,并且将这个功能进行详细描述。

第一步&#xff1a;准备图片 首先准备三张大小相同的图片。 第二步&#xff1a;创建动态面板 右键点击第一张图片&#xff0c;唤起菜单&#xff0c;选择“创建动态面板”。 双击动态面板&#xff0c;进入动态面板编辑界面。点击“复制状态”图标&#xff0c;复制出三个状态…

在vue3+ts项目里使用query和params传参

在Vue 3 TypeScript项目中&#xff0c;您可以使用query和params来传递参数。以下是如何在Vue 3 TypeScript中使用这两种方式进行参数传递的示例&#xff1a; // 路由配置 import { createRouter, createWebHistory, RouteRecordRaw } from vue-router;const routes: Array&l…