当前位置: 首页 > 编程日记 > 正文

平头哥玄铁处理器Linux新版本,5大亮点速览

来源 | 芯片开放社区

为了便于 CPU 评估,系统集成,快速上手玄铁处理器 Linux 操作系统,平头哥更新了玄铁处理器 linux 版本,结合 gitlab 开源 CI/CD 系统,对已发布到开源社区的玄铁架构 CPU 相关的生态软件形成持续保障。

目前 linux 支持的玄铁系列 CPU 有:

64位系列 (RISCV):

  • C910 三发射,深度乱序,12级流水线,搭载AI向量加速引擎的高性能多核处理器

32位系列:

  • C860 三发射,深度乱序,12级流水线,搭载AI加速引擎的高性能多核处理器

  • C810 双发射,乱序,10级流水线,高性能超标量处理器

  • C807 双发射,乱序,8级流水线,面向实时控制领域的高性能处理器。

详细的支持型号可复制https://github.com/c-sky/buildroot/releases 用浏览器打开查看

更新后的玄铁处理器Linux有如下5大亮点

极简开发,轻松上手

对于嵌入式开发者来说,能有易于上手的开发环境,简单操作的系统是能够节省很多时间的。玄铁处理器 linux 开发平台是基于 buildroot.org 构建的,帮助开发者快速构建玄铁 CPU Linux 学习和实验环境,快速集成开源组件。

Buildroot 是一款简单,高效,易于使用的开源嵌入式linux 交叉编译开发平台(https://buildroot.org),每一款 CPU 提供了最小系统参考配置,通过

https://github.com/c-sky/buildroot/releases 按季度进行发布,同时结合 gitlab 开源 CI/CD (持续集成/持续发布) 系统,保障发布给开源社区代码正确性。

玄铁 linux 开发平台融入代码仓库的动态 readme.txt 设计,将上手指引精确到每一个 config,逐行精简命令,一目了然(每一个步骤不超过 10 条命令,支持 'ctrl c' + 'ctrl v' 秒贴执行,极速上手)。在如下的演示环境动图中,最快用时不到15秒的时间,用户即可完成快速上手,进入极简开发的环境。

演示环境--快速上手玄铁linux 开发平台

利用云上 CI/CD 系统,预先编译完成各个配置,并把结果存在云上,供开发者直接下载快速体验 linux 环境。其中 hw 目录下,存放着玄铁系列 CPU 最小系统硬件平台,包含 fpga, asic。

配合玄铁 CPU Jtag 调试器,提供清晰简洁的运行脚本,不浪费第一次上手玄铁 CPU 用户的一分一秒。

(具体请参考 readme.txt -> 'Quick Start for hw run' 章节)

软件丰富,定制灵活

通过开发平台,可获得:

  • linux 最小系统样例

  • Bootloader 和 Opensbi 样例

  • 基于最小系统硬件,调试环境 (Jtag + DRAM + 网络)

  • 基于 QEMU 的配套验证环境

  • 丰富的诊断工具 (gdb, perf PMU state/record, ftrace, kprobe/uprobe, tracecmd + kernelshard, bpf 等)

一般来说,对于一个新的 CPU 体系架构,构建一套最小系统,要从基础编译器,内核,最小文件系统开始准备,费时耗力。玄铁 linux 开发平台通过一个配置,将工具链,内核,根文件系统的软件包集成在一起,一条简洁的命令就可以让开发者从源码级构建整个 linux 系统,十分方便。

配置图例

易于诊断,高效定位

玄铁处理器linux 诊断性工具众多,包含如下工具:

  • 以 Perf, ftrace, K/Uprobe, stap, BPF tools 组合形成的 linux 性能分析,动态追踪,系统观测工具

  • 以 GDB/KGDB/KDUMP 为代表的 交互式,在/离线调试工具

  • 以 top/free/slabtop/iostat/iotop/netstat/sar 为代表的 linux 系统监控工具

在 v1.0.9 版本中,实现了玄铁 C800 CPU kprobe/uprobe 指令流插桩功能,即使在没有源码的情况下,也可以通过 perf probe, tracecmd 等前端工具,从容调试,极大提升开发效率。

  • 支持 Perf stat/record + callchain (配合图形前端工具可生成火焰图,timechart )

    火焰图

    timechart图

  • 支持 Perf PMU 硬事件统计 & 采样,覆盖指令数/周期数/CACHE行为/TLB行为/LSU行为 等多个 CPU 内部模块,方便 CPU 评估,分析性能瓶颈,快速定位问题。

  • 支持 ftrace 内核追踪框架

  • 支持 kprobe/uprobe linux 动态追踪功能

  • 支持 gdb,gdbserver,kdump,coredump 交互调试工具

  • 支持 lockdep 内核死锁检查

  • 支持 gcov 内核代码覆盖率统计

  • 支持 strace 系统调用追踪

  • 支持 mtrace (glibc) 内存泄漏分析

未来会持续完善 Linux 诊断性工具集,提供丰富的 Linux 诊断手段。

图片来源brendangregg.com

持续集成

玄铁系列 CPU 已被众多开源生态软件支持,为了让大家在使用这些开源软件时,得到更好的保障,建立了持续跟踪系统,确保开源软件在迭代过程中的质量。

在 gitlab 上构建了一个开源开放的 CI/CD 系统。它经历了1年多的运行与完善,累计执行数千次 pipeline 版本迭代,有效保障了开源社区 CPU 后端代码的质量。

https://gitlab.com/c-sky/buildroot/pipelines/charts

源于开源,回馈社区

一款优秀的 CPU,离不开社区软件生态的支持和积极参与 社区的开发,开发者也拥有自己的 mailing list:

linux-csky@vger.kernel.org (https://lore.kernel.org/linux-csky/),

并随着 linux 开发节奏,定期向 Linus Torvalds 先生发出来自中国 CPU 架构 的 pull-request。

复制链接马上动手试试吧:

https://github.com/c-sky/buildroot/releases

推荐阅读
  • 性能超越最新序列推荐模型,华为诺亚方舟提出记忆增强的图神经网络

  • 阿里云科学家入选计算机顶会HPCA名人堂,他是什么来头?

  • 干货 | 基于SRS直播平台的监控系统之实现思路与过程

  • DevOps 在移动应用程序开发中扮演什么角色?

  • 又一国产数据库诞生!腾讯发布 TGDB,实时查询比 Neo4j 快 20-150 倍!

  • 稳定币经济:十大稳定币简史

你点的每个“在看”,我都认真当成了AI

相关文章:

费用保险单,如何失焦时自动补零

费用,如何失焦时自动补零转载于:https://www.cnblogs.com/maojiayan/p/5606247.html

腾讯AI种番茄双丰收:参赛AI全胜专家,辽宁试点净利增千元

6月9日,腾讯宣布了两项AI农业领域进展。在研究侧,腾讯 AI Lab 与荷兰瓦赫宁根大学(下称WUR)联办的“第二届国际智慧温室种植挑战赛”(下称比赛)落幕。在全球疫情肆虐之时,复赛的五支队伍挑战用 …

在ASP.NET中值得注意的两个地方

在ASP.NET中ASPX页面的Page_Load事件有两个让人奇怪的地方,你应该记住它们: a.有时Page_Load事件在你的ASP.NET页面里会发生多次。这种情况发生的一个可能的原因是你把ASPX页面的AutoEvenWireup值设置成了True。如果是这样,那么在“Sub Page…

yii 级联删除

alter table 外键表 add constraint 级联删除名 foreign key (外键字段) references 主表名(主表字段)ON delete CASCADE go 转载于:https://blog.51cto.com/dasangshu/624605

iOS--优秀博客记录

感谢唐巧整理,我又加了一些备注。原地址:https://github.com/tangqiaoboy/iOSBlogCN 博客地址RSS地址psOneVs Denhttp://onevcat.com/atom.xml 一只魔法师的工坊http://blog.ibireme.com/feed/图片处理、YYKit破船之家http://beyondvincent.com/atom.xml…

linux环境下和网络服务相关的配置文件含义及如何配置

要建立一个安全Linux服务器就首先要了解Linux环境下和网络服务相关的配置文件的含义及如何进行安全的配置。那天查看服务器的eth0地址,后来想了一些问题,到家里就翻了翻以前的文档,无意中看到了这个,现在发布出来,希望…

ASP.NET保持用户状态的九种选择

2003-06-10 ■陶刚编译 ■yesky摘要:ASP.NET为保持用户请求之间的数据提供了多种不同的途径。你可以使用Application对象、cookie、hidden fields、Sessions或Cache对象,以及它们的大量的方法。决定什么时候使用它们有时很困难。本文将介绍了上述的技术&…

Python 图像处理 | 图像平滑之均值滤波、方框滤波、高斯滤波及中值滤波

作者 | 杨秀璋,责编 | 夕颜 题图 | 视觉中国出品 | CSDN博客本篇文章主要讲解Python调用OpenCV实现图像平滑,包括四个算法:均值滤波、方框滤波、高斯滤波和中值滤波。全文均是基础知识,希望对您有所帮助。知识点如下:…

Laravel Lumen之Eloquent ORM使用速查-基础部分

使用Eloquent [eləkwənt] 时&#xff0c;数据库查询构造器的方法对模型类也是也用的&#xff0c;使用上只是省略了DB::table(表名)部分。 在模型中使用protected成员变量$table指定绑定的表名。<?php namespace App;use Illuminate\Database\Eloquent\Model;class Flight…

数据库连接字在Web.config里的用法

作者&#xff1a;未知 请速与本人联系在asp.net中的WEB程序的设置中我们必须用到Web.config来存储数据库连接字.事实上这是个很好的做法,因为可以省去我们很多的麻烦还可以帮助我们避免不必要的错位,是的很多情况下我就是这样做.它通过XML来记录这些信息.具体的是在....这个标…

重构ncnn,腾讯优图开源新一代移动端推理框架TNN

来源 | 腾讯优图从学界到工业界&#xff0c;“开源”已经成为AI领域的一个关键词。一方面&#xff0c;它以“授人以渔”的方式为AI构建了一个开放共进的生态环境&#xff0c;帮助行业加速AI应用落地&#xff1b;另一方面&#xff0c;在解决行业实际问题时持续更新和迭代&#x…

java读取文件

1 java8读取文本文件2 3 4 public static void java8ReadFileLines(String fileName) throws IOException {5 List lineList Files.readAllLines(Paths.get(fileName), StandardCharsets.UTF_8);6 7 for(String line:lineList){8 Sys…

常见 Datagrid 错误

Marcie Robillard DatagridGirl.comDatagrid 控件是 Microsoft ASP.NET 中功能最强、用途最广的 Web 控件之一&#xff0c;这一点已经得到了 ASP.NET 权威人士的认同。虽然 Datagrid 控件易于使用&#xff0c;但同样易于给使用者带来麻烦。以下是许多人所犯的一些错误&#xff…

干货!3 个重要因素,带你看透 AI 技术架构方案的可行性!

作者 | 房磊责编 | Carol出品 | AI 科技大本营&#xff08;ID&#xff1a;rgznai100&#xff09;人工智能这几年发展的如火如荼&#xff0c;不仅在计算机视觉和自然语言处理领域发生了翻天覆地的变革&#xff0c;在其他领域也掀起了技术革新的浪潮。无论是在新业务上的尝试&…

mysql从另一张获取数据的方法

方法一 CREATE TABLE tmp AS SELECT a.id FROM t_user t JOIN temp a ON t.email a.email; 方法二 INSERT INTO t_user (id,username,PASSWORD,email,user_type,STATUS) SELECT id,REPLACE(email,,_),PASSWORD,email,0,0 FROM temp; 这两个sql都是从另外一张中获取的数据插入…

手动创建Spring项目 Spring framework

之前学习框架一直是看的视频教程&#xff0c;并且在都配套有项目源码&#xff0c;跟着视频敲代码总是很简单&#xff0c;现在想深入了解&#xff0c;自己从官网下载文件手动搭建&#xff0c;就遇到了很多问题记载如下。 首先熟悉一下spring的官方网站&#xff1a;http://spring…

使用 ASP+ DataGrid 控件来创建主视图/详细资料视图

Nikhil Kothari Microsoft Corporation 2000年8月简介 Microsoft Visual Studio.NET 的下一发行版包括 DataGrid Web 控件 (作为服务器控件的 Active Server Page (ASP) 套件的一部分)。 该控件提供用以根据数据源的内容来表示 HTML 的功能。 DataGrid 控件可以用于若干个只…

如何将广告始终定位到网页右下角

body{margin:0;border:0;height:100%;overflow-y:auto;}#test{display:block; bottom:3px; right:3px; width:130px; position:fixed;}/* 以下是写给IE6的 */* html #test{position:absolute;right:18px} * html{overflow-x:auto; overflow-y:hidden;}转载于:https://www.cnblo…

如何用 Python 将 Excel 表格转成可视化图形?| 原力计划

作者 | Waao666责编 | 王晓曼出品 | CSDN 博客前言大家知道&#xff0c;考研很大一部分也是考信息收集能力。每年往往有很多人就是在这上面栽跟头了&#xff0c;不能正确分析各大院校往年的录取信息&#xff0c;进而没能选择合适的报考院校。至于很多院校的录取信息是以 PDF 形…

Mac OS X 下mysql配置备忘

从windows过渡到os x确实需要适应&#xff0c;对于开发人员来讲更是这样。从官网下载目前最新版本的mysql 5.7.13&#xff0c;下载地址&#xff1a;http://dev.mysql.com/downloads/mysql/刚开始非常顺利的安装完mysql&#xff0c;这时候我还没有意识到密码的问题&#xff0c;直…

为 ASP.NET Datagrid 创建自定义列

Marcie Robillard DatagridGirl.com 2003 年 9 月 简介 不得不承认&#xff0c;为 Microsoft ASP.NET 编写 Datagrid 代码包括大量的重复工作。尽管我深受该控件的困扰&#xff0c;但我还是不断寻找简化这类任务的捷径。谁都不愿意做重复的工作&#xff0c;对不对&#xff1…

不怕面试被问了!二叉树算法大盘点

作者 | BoCong-Deng题图 | 视觉中国出品 | CSDN博客树结构对于程序员来说应该不陌生&#xff0c;特别是二叉树&#xff0c;基本只要接触算法这一类的都一定会碰到的&#xff0c;所以我打算通过一篇文章&#xff0c;对二叉树结构的相关算法进行总结汇总&#xff0c;思路和代码实…

Field types

2019独角兽企业重金招聘Python工程师标准>>> Field types The generated Form class will have a form field for every model field. Each model field has a corresponding default form field. For example, a CharField on a model is represented as a CharFie…

【51CTO学院三周年】我的职业生涯有贵人相助--小强老师

个人认为功能测试做到一定年限之后&#xff0c;自然会遇到职业生涯中最大瓶颈——转型。对此&#xff0c;我的经历是这样的。话说那还是两年前&#xff0c;在搜索某问题的时候发现了51CTO&#xff0c;从中看到了很多大牛的博文和视频课程&#xff0c;顿时感觉自己找到宝了&…

在.NET中实现彩色光标,动画光标和自定义光标

作者&#xff1a;孟宪会 微软MVPTest.cs using System;using System.Drawing;using System.Windows.Forms;using System.Runtime.InteropServices;using System.Reflection; namespace ColorCursor{ public class Form1 : System.Windows.Forms.Form { [DllImport("us…

magento模板区块--首页content区块

首页替换 自定义首页content内容 在cms-->>page 新建首页 在content 里加入 -------------------------- <div class"col-left side-col"> <p class"home-callout"><a href"{{store direct_url"apparel/shoes/womens/anash…

遮挡也能识别?地平线提出时序信息提升行人检测准确度|​CVPR 2020

来源 | 驭势科技行人检测作为计算机视觉领域最基本的主题之一&#xff0c;多年来被广泛研究。尽管最先进的行人检测器已在无遮挡行人上取得了超过 90% 的准确率&#xff0c;但在严重遮挡行人检测上依然无法达到满意的效果。究其根源&#xff0c;主要存在以下两个难点&#xff1…

通过响应式web设计,使本站支持手机浏览

2019独角兽企业重金招聘Python工程师标准>>> 2014-01-28 14:49:14 现在越来越多的人通过手机来上网&#xff0c;手机由于屏幕尺寸的原因&#xff0c;当浏览为PC端浏览器设计的网页的时候&#xff0c;往往会出现各种各样的问题。 糊涂僧的这个小博客也一样&#xff0…

在ASP.NET中跨页面实现多选

作者&#xff1a;孟宪会 微软MVP SelectMultiPages.aspx <% Page EnableViewState"true" CodeBehind"SelectMultiPages.aspx.cs" Language"c#" AutoEventWireup"false" Inherits"eMeng.Exam.SelectMultiPages" %><…

c#有多少种可能导致写文件失败?

1.路径中有非法字符 Path.GetInvalidPathChars() 2.文件名中有非法字符 Path.GetInvalidFileNameChars() 3.文件创建时&#xff0c;文件夹只读。 4.文件创建时&#xff0c;文件夹权限不足&#xff0c;如需要管理员权限。 5.文件创建时&#xff0c;文件夹不存在。 6.系统目录&am…