https://www.51cto.com/article/686171.html
刚才我们关闭SMT是把CPU10-CPU19全关了,只留下每对里面的1个CPU,也就是留下了CPU0-CPU9。

默认情况下是Intel I9,10核,每个核2个threads,共20个CPUs:

下面编译内核:

需要2分钟30秒左右。

再来一遍:

这说明make clean, drop_caches后时间也差不多。

现在我们关闭smt,只保留10个CPU:

具体的关闭方法就是:

复制

sudo sh -c 'echo off > /sys/devices/system/cpu/smt/control' 
  • 1.

这样只剩下10个CPU,下面来编译:

时间2分51秒,相对于2分30秒,速度下降仅仅14%。

这说明超线程SMT对性能的提升绝对没有达到100%,甚至都没有达到20%。

我们现在重新开启超线程:

复制

sudo sh -c 'echo on > /sys/devices/system/cpu/smt/control' 
  • 1.

看一下哪个CPU和哪个CPU是thread sibling:

看起来CPU0和CPU10是一对,CPU1和CPU11是一对,依次类推。

刚才我们关闭SMT是把CPU10-CPU19全关了,只留下每对里面的1个CPU,也就是留下了CPU0-CPU9。

在开启SMT的时候(假设蓝色和红色是一个CORE里面的两个CPU):

在关闭SMT的时候,等于每对里面只留1个CPU:

现在我们换一种关法,一对对关,只留下五对:

指令如下:

实现效果如下:

再重新编译内核:

现在耗时是3分10秒,想对于所有CPU全开,下降27%。相对于每个core里面只关一个线程,下降12%。

这就比较神奇了?为什么我关了5个core,性能没有下降100%呢?这至少说明一个问题,从5core到10core,Intel I9编译内核性能并没有线性地scale。只是从3分10秒,提升到2分30秒。

这到底是为什么?「元芳,你怎么看?」

本文转载自微信公众号「Linux阅码场」,可以通过以下二维码关注。转载本文请联系Linux阅码场公众号。

[转帖]超线程 Smt 究竟可以快多少?的更多相关文章

  1. [转帖]5G网速那么快,基站辐射会很大吗?

    5G网速那么快,基站辐射会很大吗? 鲜枣课堂 2019-04-20 21:19收藏55评论6社交通讯     题图来自东方IC,本文来自微信公众号:鲜枣课堂(ID:xzclasscom),作者:小枣君 ...

  2. CSS 和 JS 动画哪个更快

    基于Javascript的动画暗中同CSS过渡效果一样,甚至更加快,这怎么可能呢?而Adobe和Google持续发布的富媒体移动网站的性能可媲美本地应用,这又怎么可能呢? 本文逐一遍览了基于Javas ...

  3. CSS VS JS动画,哪个更快[译]

    英文原文:https://davidwalsh.name/css-js-animation 原作者Julian Shapiro是Velocity.js的作者,Velocity.js是一个高效易用的js ...

  4. SMT实用工艺

    第一章 SMT概述 SMT(表面组装技术)是新一代电子组装技术.经过20世纪80年代和90年代的迅速发展,已进入成熟期.SMT已经成为一个涉及面广,内容丰富,跨多学科的综合性高新技术.最新几年,SMT ...

  5. CSS vs. JS Animation: 哪个更快

    CSS vs. JS Animation: 哪个更快? CSS vs. JS Animation: 哪个更快? 基于JavaScript的动画竟然已经默默地比CSS的transition动画快了?而且 ...

  6. CSS3动画 相比JS Animation 哪个更快?

    CSS vs. JS Animation: 哪个更快? 基于JavaScript的动画竟然已经默默地比CSS的transition动画快了?而且,Adobe和 Google竟然一直在发布可以媲美原生应 ...

  7. 参加:白帽子活动-赠三星(SAMSUNG) PRO....

    参加:白帽子活动-—赠三星(SAMSUNG) PRO.... Everybody~小i在这里提前祝大家国庆假期愉快,咱们期待已久的国庆活动终于开始拉,下面进入正题,恩,很正的题! 活动地址:http: ...

  8. 每个程序员都应该了解的 CPU 高速缓存

    每个程序员都应该了解的 CPU 高速缓存 英文原文:Memory part 2: CPU caches 来源:oschina [编者按:这是Ulrich Drepper写“程序员都该知道存储器”的第二 ...

  9. What every programmer should know about memory 笔记

    What every programmer should know about memory, Part 1(笔记) 每个程序员都应该了解的内存知识[第一部分] 2.商用硬件现状      现在硬件的 ...

  10. 《用 Python 学微积分》笔记 2

    <用 Python 学微积分>原文见参考资料 1. 13.大 O 记法 比较两个函数时,我们会想知道,随着输入值 x 的增长或减小,两个函数的输出值增长或减小的速度究竟谁快谁慢.通过绘制函 ...

随机推荐

  1. GDAL从二进制数据流中构造数据集

    目录 1. 概述 2. 实现 1. 概述 参看<从二进制数据流中构造GDAL可以读取的图像数据>这篇文章.这个问题的内涵在于,处理图像时都会将其读取成宽X高X波段的三维数组的内存Buffe ...

  2. Markdown 编辑器及语法使用入门指南

    一.如何打开预览? 打开在线编辑器 - 点击如图所示 - 写作预览按钮即可: 如图所示,编写下面 Markdown 语法,进行对应语法的编写,愉快的写作了! 左侧 Markdown 语法 右侧实时显示 ...

  3. 昇腾CANN 7.0 黑科技:大模型推理部署技术解密

    本文分享自华为云社区<昇腾CANN 7.0 黑科技:大模型推理部署技术解密>,作者:昇腾CANN. 近期,随着生成式AI.大模型进入公众视野,越来越多的人意识到抓住AI的爆发就是抓住未来智 ...

  4. 大数据实践解析(上):聊一聊spark的文件组织方式

    摘要: 在大数据/数据库领域,数据的存储格式直接影响着系统的读写性能.Spark针对不同的用户/开发者,支持了多种数据文件存储方式.本文的内容主要来自于Spark AI Summit 2019中的一个 ...

  5. 实战案例丨ModelArts在数据标注、数据过滤上的应用技巧:自动分组

    大量复杂.乱序的图片依次标注效率极低,如果一次可以标注一大片的图片将极大地提升标注效率. 自动分组识别并提取图像特征,通过ModelArts先进的聚类算法可以将所有图片分组:将特征相似的图片归为一类, ...

  6. 多模态AI开发套件HiLens Kit:超强算力彰显云上实力

    摘要:Huawei HiLens Kit是一款端云协同多模态AI开发套件,支持图像.视频.语音等多种数据分析与推理计算,可广泛用于智能监控.智能家庭.机器人.无人机.智慧工业.智慧门店等分析场景. 在 ...

  7. SparkSQL高并发:读取存储数据库

    摘要:实践解析如何利用SarkSQL高并发进行读取数据库和存储数据到数据库. 本文分享自华为云社区<SarkSQL高并发读取数据库和存储数据到数据库>,作者:Copy工程师 . 1. Sp ...

  8. 中企出海,用火山引擎DataTester开启增长第一步

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群   今年 Google 宣布其提供的A/B测试工具 Optimize 将在2023年9月30号停止服务.在全球化浪 ...

  9. 断点续传(上传)C#版

    断点续传(上传)Java版 1. 客户每次上传前先获取一下当前文件已经被服务器接受了多少 2. 上传时设定偏移量 服务端代码如下: /// <summary> /// 断点续传,获取已上传 ...

  10. Sublime Ctrl+B 编译输出乱码

    1.输入乱码如图 2.Preferences -> Browse Packages.. 3.加入  "env": { "PYTHONIOENCODING" ...