https://huataihuang.gitbook.io/cloud-atlas-draft/os/linux/kernel/cpu/amd_hygon
 
2020年国产化处理器受到了广泛的关注(中美贸易战),中科海光(Hygon)是国内维二具备生产X86处理器的中国公司,其产品具有一定代表性:
  •  
    2016年中科海光(国天津海光先进技术投资有限公司(THATIC))向AMD购买了x86 和 SoC IP 技术授权
美国政府为英特尔、AMD 等公司生产的处理器进行了价值标定,一旦其算力(FLOPS)和功耗的比值过高就会被认为是「性能过强」而被限制出口。
2015 年,AMD 就已向美国国防部、商务部等机构进行了申请,并获得了向中国提供技术转让的许可。
2019 年,美国商务部将海光加入了实体清单,这意味着 AMD 难以继续向合资企业授予任何其他 IP 许可。
目前海光能够使用的是2016年已经获得的原始IP(AMD 14nm Zen架构),而不是完整的技术转让(加密技术相关技术被阉割,浮点性能削弱),底层设计和技术、专利依然属于AMD,海光只能在高级层面根据自己的需要进行修改、定制。
Hygon服务器CPU
Hygon服务器CPU是32核处理器,现代处理器都支持超线程,通过超线程技术(x2),相当于 64 HT 处理器。在服务器上采用双处理器SMP系统,则可以在服务器上通过 cat /proc/cpuinfo 看到 128 HT (32x2x2)。
  •  
    CPU缓存
     
  •  
    L1缓存
     
  •  
    64KB四路 L1指令缓存
  •  
    32KB八路 L1数据缓存
  •  
    L2缓存
     
  •  
    512KB八路 L2缓存
  •  
    L3缓存
     
  •  
    8MB十六路 L3缓存
  •  
    加密
     
  •  
    海光CPU 被去除 了 AMD原始的Zen一代处理器使用AMD虚拟化功能(SEV)的安全加密:RSA, ECDSA, ECDH, SHA 和 AES
  •  
    海光Dhyana处理器SEV被改成使用 SM2, SM3 和 SM4 算法(国密算法)
  •  
    SM2是椭圆曲线公钥密码算法,相比于RSA更先进、更节能、更安全,国家密码管理局2010年12月17日发布。
  •  
    SM3是哈希算法,属于密码散列函数标准,用于数字签名及验证、消息认证码生成及验证、随机数生成等,原理、安全性和效率都类似SHA-256,国家密码管理局2010年12月17日发布。
  •  
    SM4是分组密码算法,用于数据加密,分组和秘钥长度都是128位,类似AES-128,国家密码管理局2012年3月21日发布。
  •  
    海光获得架构的整数性能基本没变,但是浮点性能损失很大:
     
  •  
    DIV、SQRT等浮点指令直接消失
  •  
    大量的MMX/SSE简单指令则被降速
随机数生成器
早期海光CPU版本 /dev/urandom 性能较低,原因是RDSEED(用于生成随机数算法的种子生成)真随机数发生器产生种子速度不够强或质量还不足,小概率被撞上了产生了延迟。后期二代产品真随机数发生器由1个增加到3个,同时被撞上的概率接近0,就不存在这样的问题了。
参见 中科海光CPU的首次评测:基于AMD架构,覆盖桌面服务器端 提到了Hygon Dhyana(桌面版本) RDSEED 比 Hygon Dhyna Plus(服务器版本)要慢10倍。
不过海光RDRAND算法比原先AMD Zen版本快
测试服务器 /dev/urandam 设备性能:
 
head -c 1M /dev/urandom > /tmp/out
如果出现比较明显的延迟,则可能和上述 RDSEED 性能相关,有一定概率会导致操作系统加密相关应用异常(例如sshd服务)。可以考虑在BIOS设置 CBS-Moksha Common Options > RDSEED and RDRAND Control 配置成 disable (默认是 auto) ,这样操作系统会调用软随机数发生器来规避这个问题。
功能缺失
中科海光CPU的首次评测:基于AMD架构,覆盖桌面服务器端 说明,虽然海光CPU标记了 AVX 和 AVX2 功能,但实际被禁用,导致相关测试无法通过。此外 AESNI、SHA、CLMUL、FMA4、BMI、BMI2等指令也无法运行。
上述指令和加密编码相关,导致海光CPU(32核心双处理器配置)的AES编码甚至不如入门级4核心锐龙3 1200
性能结论
  •  
    海光CPU在AMD Zen 1基础上做了大量修改,例如加密功能做了替换。但是整体性能比同代原版CPU略差:
     
  •  
    整数性能基本相同,浮点性能显著下降(普通指令吞吐量只有原先1/2)
  •  
    随机数生成机制已经修改,加密引擎被替换
  •  
    不能对常见对AES指令加速(不支持AVX和AVX2功能),但是增加了国蜜要求指令 SM2, SM3 和SM$
  •  
    海光CPU基于AMD Zen1定制,由于合作协议只限于Zen 1而不是大获成功的Zen 2,所以技术上有诸多不足:例如Zen 2支持L3缓存PQoS(对标Intel RDT技术)就无法获得,这在数据中性混布计算中有非常大的局限性
  •  
    Linux从 Kernel 4.10才开始支持Zen架构,所以要能够正常工作,一定要选择 Kernel 4.10 以后版本,建议参考主流发行版本 CentOS 8以及 Ubuntu 20.04 LTS内核版本
参考

[转帖]AMD处理器ZEN一代之国产化海光的更多相关文章

  1. [转帖]AMD:Zen 2霄龙处理器每美元性能可达英特尔至强5.6倍

    AMD:Zen 2霄龙处理器每美元性能可达英特尔至强5.6倍 2019-10-20 6:35:38来源:IT之家作者:孤城责编:孤城评论:32 https://www.ithome.com/0/451 ...

  2. [转帖]AMD Zen霄龙中国版:海光x86拿下加解密全球第一

    AMD Zen霄龙中国版:海光x86拿下加解密全球第一 http://www.eetop.cn/cpu_soc/6946203.html 其实技术发展都是先模仿 剽窃 再自我创新的 要加以鼓励 总比 ...

  3. Intel SP处理机以及AMD处理器的一些对比资料

    1. EPYC 与 intel的CPU对比 2. Intel SP处理器参数: 3. AMD处理器参数 4. Intel SP处理器部分参数2 5. Intel SP处理器简单说明 6. intel ...

  4. [转帖]AIDA64 6.10版发布:全面支持中国兆芯、海光x86 CPU

    AIDA64 6.10版发布:全面支持中国兆芯.海光x86 CPU https://www.cnbeta.com/articles/soft/892877.htm 支持国产x86了 作为硬件识别工具领 ...

  5. [转帖]AMD、英特尔为何争相走向胶水多核处理器?真相在此

    AMD.英特尔为何争相走向胶水多核处理器?真相在此 胶水多核到底好不好?这个事不是简单一句话能说明的,今天的超能课堂里我们就来聊聊MCM胶水多核技术的过去及未来. 作者:孟宪瑞来源:超能网|2018- ...

  6. [转帖]AMD第三代锐龙处理器首发评测:i9已无力招架

    AMD第三代锐龙处理器首发评测:i9已无力招架 Intel 从之前的 CCX 到了 CCD 增加了缓存 改善了 ccx 之间的延迟. https://baijiahao.baidu.com/s?id= ...

  7. 【转帖】处理器史话 | 服务器CPU市场的战役, AMD、Intel和ARM的厮杀

    处理器史话 | 服务器CPU市场的战役, AMD.Intel和ARM的厮杀 https://www.eefocus.com/mcu-dsp/377300   说完了个性鲜明的消费类电子,接下来聊一聊通 ...

  8. 【转帖】处理器史话 | 这张漫画告诉你,为什么双核CPU能打败四核CPU?

    处理器史话 | 这张漫画告诉你,为什么双核CPU能打败四核CPU? https://www.eefocus.com/mcu-dsp/371324 2016-10-28 10:28 作者:付丽华预计 9 ...

  9. [转帖]AMD三代锐龙线程撕裂者命名曝光:24核心3960X

    AMD三代锐龙线程撕裂者命名曝光:24核心3960X https://www.cnbeta.com/articles/tech/900271.htm 一直搞不懂TDP啥意思 可能会高于TDP的功率.. ...

  10. [转帖]AMD霄龙安全加密虚拟化曝漏洞:已修复

    AMD霄龙安全加密虚拟化曝漏洞:已修复 https://www.cnbeta.com/articles/tech/862611.htm 硬件的安全问题 今年初,Google的一位研究人员发现,AMD ...

随机推荐

  1. linux文件和文件夹的筛选、查找及用户和组管理命令

    1.列出当前系统上所有已经登陆的用户的用户名, 注意:同一个用户登录多次,则只显示一次即可. 查看系统用户的命令为: (1)getent passwd 查看系统上的所有用户信息 (2)w 查看登录用户 ...

  2. 文心一言 VS 讯飞星火 VS chatgpt (25)-- 算法导论4.2 7题

    七.设计算法,仅使用三次实数乘法即可完成复数 a+bi和c+di 相乘.算法需接收a.b.c和d 为输入,分别生成实部 ac-bd 和虚部ad+bc. 文心一言: 可以使用如下算法来计算复数 a+bi ...

  3. Codeforces 1202D 思维 构造

    原题链接 题意 每组数据给我们一个n,然后要求我们用{1, 3, 7}这三种字符来组成一个长度小于1e5的序列,要求其中为1337的子序列(不要求相邻)的数量恰好为n 思路 首先可以考虑最简单的一种构 ...

  4. LeetCode 数、二叉树、二叉搜索树篇(94、144、145)

    94. 二叉树的中序遍历 给定一个二叉树,返回它的中序 遍历. 示例: 输入: [1,null,2,3] 1 2 / 3 输出: [1,3,2] 进阶: 递归算法很简单,你可以通过迭代算法完成吗? / ...

  5. 华为云分布式云原生UCS,助力MetaERP构建企业级高可用分布式业务

    本文分享自华为云社区<华为云分布式云原生UCS,助力MetaERP构建企业级高可用分布式业务>,作者:云容器大未来. 引言 华为云最近成为<Forrester Wave: Multi ...

  6. 解读革命性容器集群CCE Turbo:计算、网络、调度全方位加速

    摘要:CCE Turbo是华为云推出的一款革命性容器集群. 5月31日,在华为云Techwave云基础设施技术专题日上,华为云容器批量计算首席架构师马达对CCE Turbo的技术内幕进行了深度解读,C ...

  7. vue2升级vue3:composition api中监听路由参数改变

    vue2 的watch回顾 我们先回顾一下vue2中watch <watch性能优化:vue watch对象键值说明-immediate属性详解> <vue中methods/watc ...

  8. Scala Http请求工具类

    import java.io.IOException import java.util import org.apache.http.client.ClientProtocolException im ...

  9. 如何配置Apple推送证书 push证书

    ​ 转载:如何配置Apple推送证书 push证书 想要制作push证书,就需要使用快捷工具appuploader工具制 作证书,然后使用Apple的推送功能配置push证书,就可以得到了.PS:pu ...

  10. 2023年 CISO 需要高度关注的任务和趋势

    在过去的几年中,企业一直忙于应对远程办公模式下的安全要求.展望2023年,疫情局面将与过去3年大不相同.根据目前的趋势,未来一年的网络攻击的数量和严重程度都将增加,这将对各规模企业,尤其是未做好准备的 ...