泰晓科技 -- 聚焦 Linux - 追本溯源,见微知著!
网站地址:https://tinylab.org

泰晓Linux知识星球:1300+知识点,520+用户
请稍侯

泰晓资讯·7 月 / 第一期 / 2022

unicornx 创作于 2022/06/30

“泰晓资讯”,广泛报道 “Linux/开源” 业界资讯。欢迎广大读者投递相关资讯来源和素材,本站将进一步收集整理后发布给大家。

  • Linux 内核最新消息

https://lkml.org/lkml/2022/6/26/324

Linus Torvalds 上周发布了 Linux 5.19-rc4,其中首先值得一提的是内核使其签名验证码符合 FIPS 标准(Federal Information Processing Standards),通过为模块签名、Kexec 和其他功能使用的检查代码添加一些基本的自测,使内核的签名验证代码符合 FIPS。在 Linux 5.19-rc4 中发现的另一个变化是对先前报告的 Phoronix 性能回归的修复。早在 3 月份的 Linux 5.19 合并窗口期间,Phoronix 测试指出在 Linux 5.18 功能更改期间,Stress-NG 中出现了一个大的 NUMA 性能衰退。Linux 5.19-rc4 现在有一个修复程序。

https://lkml.org/lkml/2022/7/3/356

本周紧跟着就是发布了 Linux 5.19-rc5,虽然 rc4 的比往常要大,但本周的 Linux 5.19-rc5 比正常情况却要小,而且内核的运行情况整体看上去很正常并且状态良好。这让 Linus Torvalds 很高兴。Linus 评论说:"So in between the general summer vacation (Europe) and the July 4th extended weekend (US), and whatever the rest of the world is doing - take some time off, build a new kernel and boot it. Just to verify things are looking ok for you. But it should all be pretty calm."

Linux 5.19 稳定内核应该会在 7 月底左右发布。

https://www.kernel.org/ updated by 2022/7/7

分支类型版本发布时间
mainline5.19-rc52022-07-03
stable5.18.92022-07-02
stable5.17.15 [EOL]2022-06-14
longterm5.15.522022-07-02
longterm5.10.1282022-07-02
longterm5.4.2032022-07-02
longterm4.19.2502022-07-02
longterm4.14.2862022-07-02
longterm4.9.3212022-07-02
linux-nextnext-202207062022-07-06

关键词: Linux

  • 针对采用 -O3 优化 Linux 内核的讨论

A set of patches have been posted for making the “-O3” compiler optimization level more easily accessible when building the Linux kernel but still it’s not recommended and some kernel developers do not even want to see it as a Kconfig option.

现存的 Kconfig 选项 CC_OPTIMIZE_FOR_PERFORMANCE_O3 用于在构建内核时设置 “-O3” 优化级别,而不是默认的 “-O2”。启用 “-O3” 的目的无非是希望 GCC 或 Clang 编译器能够更好地优化内核以获得更好的性能。虽然 “-O3” 在优化用户空间应用程序上常常被使用并且可以获得更好的性能,但由于内核的复杂性和非常大的代码库,启用 “-O3” 很容易在底层内核代码中引入错误或不正确的行为。因此,”-O3” 编译在内核中并没有被广泛执行,因为可能会出现微妙且可能难以察觉的问题。目前该选项仅适用于 ARC CPU 架构。

Miko Larsson 上周发布了一组补丁,允许为非 ARC 架构启用 CC_OPTIMIZE_FOR_PERFORMANCE_O3 这个选项,也就是说使得所有的 ARCH 都可以启用 “-O3” 构建 Linux 内核。目前该补丁将该选项标记为 “实验性” 功能。

补丁系列已发布以供审核。尽管它一直在 ARC 上使用也没出现啥问题,但还是有人建议删除该选项。其实如果对于 “实验性功能” 感兴趣的人可以使用 make KCFLAGS=-O3 来构建内核来实现相同的优化效果。通常,上游 Linux 内核开发人员在激进的编译器功能方面非常保守,这些功能只是为了提高性能,而这可能意味着微妙且难以察觉的问题。

鉴于 Linus Torvalds 过去关于编译器优化的一些评论以及很久以前使用 GCC 的糟糕经历,不出意外地,Linus Torvalds 对这个补丁也不感冒。Linus Torvalds 评论说,他实际上反对拥有这样的 Kconfig 选项。他需要真实的数据来证明它是否真的有好处。

看来这个补丁前景堪忧。

更多介绍请阅读新闻出处,“Experimental -O3 Optimizing The Linux Kernel For Better Performance Brought Up Again​”: https://www.phoronix.com/scan.php?page=news_item&px=O3-Optimize-Kernel-2022-Patches 以及 “Linus Torvalds’ Latest Commentary Against -O3’ing The Linux Kernel”:https://www.phoronix.com/scan.php?page=news_item&px=Linus-Against-O3-Kernel

关键词: Linux, “-O3”

  • liburing 2.2 发布,方便大家在 Linux 上用 “IO_uring”

Jens Axboe, Linux storage expert and IO_uring lead developer, released liburing 2.2 this weekend as the newest version of this helper library that makes it easier for user-space software to make use of the Linux kernel’s IO_uring support.

Jens Axboe,Linux 存储专家和 “IO_uring” 首席开发人员,本周末发布了 liburing 2.2。Liburing 使得用户空间软件更容易利用 Linux 内核的 “IO_uring” 功能实现异步 I/O。Liburing 使得我们与内核交互,调用 “IO_uring” 功能变得更容易,并为那些不太了解 “IO_uring” 细节的人提供更简易的操作接口。

Liburing 2.2 在 x86/x86_64/AArch64 上带来了优化的系统调用处理,支持 “IO_uring” 的 multi-shot accept,支持 registered ring file descriptors,支持 message ring opcode,支持更新的 request cancellation 功能,以及各种其他新的和改进的功能。

Liburing 2.2 还更新了手册页,与 Linux 5.19 功能同步,它还提供了新的回归测试用例以及其他修复和增强功能。Liburing 2.2 可以通过 Git(https://github.com/axboe/liburing)下载。

更多介绍请阅读新闻出处,“liburing 2.2 Released For Easier IO_uring Usage On Linux”: https://www.phoronix.com/scan.php?page=news_item&px=liburing-2.2

关键词: Linux, liburing,IO_uring

  • 新的 MGLRU 基准测试结果看上去非常好

MGLRU as the “Multi-Gen LRU” for reworking the Linux kernel’s page reclamation code to be less taxing on the CPU and making better choices continues to look very good for the future of Linux performance.

MGLRU 是 “ “Multi-Gen LRU”” 的缩写,它重新设计了 Linux 内核的页面回收代码,优化了回收选择策略,可以大大减轻 CPU 的负担,这对于 Linux 未来性能的改善非常有利。

MGLRU 补丁最近发布了最新的 v12 版本,跟上了最新的 Linux 5.19。社区基于该版本的补丁组织了一些新的基准测试,在性能上给大家留下了深刻的印象,尤其是在内存受限的设备上。Google 已经在 Android 和 Chrome OS 上使用了 MGLRU,结果非常好。许多组织和用户报告了 MGLRU 的出色性能结果。如果一切顺利,我们可能会看到 MGLRU 在 Linux 5.20 周期进入主线。

更多测试结果细节请访问新闻出处,“Fresh MGLRU Benchmarks Are Looking Very Promising For Linux Performance”: https://www.phoronix.com/scan.php?page=news_item&px=MGLRU-July-2022-Performance

关键词: Linux,MGLRU

  • KernelMemorySanitizer v4 发布

Being worked on the past several years by Google engineers and others has been the KernelMemorySanitizer (KMSAN) that has already found more than 300 kernel bugs even prior to being mainlined. Sent out prior to the US holiday weekend as the fourth iteration of these patches, building off the “request for comments” sent out in 2020.

过去几年,Google 工程师和其他人一直在研究 KernelMemorySanitizer (KMSAN),甚至在它被主线接受之前就已经发现了 300 多个内核错误。自 2020 年首次发布 “request for comments”(RFC)以来,该补丁多次迭代,在美国国庆假期周末之前发布的版本是这个补丁的第四次迭代版本。

KernelMemorySanitizer 依靠 LLVM/Clang 来捕获未初始化的内存问题。新的 KMSAN v4 补丁在 Kconfig 中添加了 KMSAN_CHECK_PARAM_RETVAL 选项,打开该选项将使能 Clang 的 “-fsanitize-memory-param-retval” 选项,进而检查大多数按值传递的内核函数参数。KMSAN 补丁也已针对当前的 Linux 5.19 开发状态进行了更新。

针对 KMSAN 的未来和应用范围,来自 Google 的 Alexander Potapenko 评论说,"This patchset allows one to boot and run a defconfig+KMSAN kernel on a QEMU without known false positives. It however doesn't guarantee there are no false positives in drivers of certain devices or less tested subsystems, although KMSAN is actively tested on syzbot with a large config."

对 KMSAN 感兴趣的话,可以看一下这篇文稿 (https://clangbuiltlinux.github.io/CBL-meetup-2020-slides/glider/Fighting_uninitialized_memory_%40_CBL_Meetup_2020.pdf), 以及最新的补丁细节(https://lore.kernel.org/lkml/20220701142310.2188015-1-glider@google.com/)。

更多介绍请阅读新闻出处,“KernelMemorySanitizer v4 Published While Already Having Found 300+ Kernel Bugs”: https://www.phoronix.com/scan.php?page=news_item&px=KernelMemorySanitizer-v4

关键词: Linux, KernelMemorySanitizer

  • 首款配备四核 CPU、16GB RAM、运行 Linux 的 RISC-V 笔记本电脑面世

RISC-V International has relayed word to us that in China the DeepComputing and Xcalibyte organizations have announced pre-orders on the first RISC-V laptop intended for developers. The “ROMA” development platform features a quad-core RISC-V processor, up to 16GB of RAM, up to 256GB of storage, and should work with most RISC-V Linux distributions.

来自 RISC-V International 的消息,在中国,DeepComputing 和 Xcalibyte 宣布预售第一台面向开发人员的 RISC-V 笔记本电脑,他们称之为 “ROMA”。“ROMA” 开发平台听起来很有趣,它配备四核 RISC-V CPU(虽然没有注明时钟频率)、GPU/NPU 加速器、高达 16GB 的 LPDDR4/LPDDR4X RAM、高达 256GB 的存储空间,以及可以支持运行大多数的 RISC-V Linux 发行版。并声称可 “at generous discounts or for free.” 升级笔记本电脑 。

DeepComputing 和 Xcalibyte 表示这款笔记本电脑使用 “unannounced” 四核 RISC-V 处理器,因此细节透露很少。ROMA 的新闻稿继续指出,"A Web3-friendly platform with NFT creation and publication plus integrated MetaMask-style wallet, ROMA will create an even more integrated experience with future AR glasses and AI speakers operating entirely on RISC-V software and powered by RISC-V hardware." 看来这个平台的软件生态也是有所准备的,不仅对 Web3 友好,还具有 NFT 创建和发布以及集成了 MetaMask 式钱包,ROMA 将通过完全在 RISC-V 软件上运行的未来 AR 眼镜和 AI 扬声器创造更加集成的体验并由 RISC-V 硬件提供支持。

据说这款 ROMA 笔记本电脑的数量有限,让人感觉颇有收藏价值。他们令人畏惧的新闻稿充满了流行语和很少的技术细节,而且前 100 名预订 ROMA 的客户将获得独特的 NFT,以纪念世界上第一台本机 RISC-V 开发平台笔记本电脑的诞生。并且可以在自己的 ROMA 上亲自刻上您的姓名或公司名称。

但让人感到奇怪的是,还没有看到关于定价或预期可用性的消息。甚至连这台笔记本电脑应该是什么样子的图片都没有…… 所以现在这个公告提出的问题多于答案,但我们当然非常期待听到更多关于 RISC-V 笔记本电脑的信息。

更多介绍请阅读新闻出处,“The First RISC-V Laptop Announced With Quad-Core CPU, 16GB RAM, Linux Support”: https://www.phoronix.com/scan.php?page=news_item&px=RISC-V-Dev-Laptop

关键词: RISC-V,Laptop,ROMA

  • LLVM 15.0 计划于 9 月初发布

Red Hat 的 LLVM 发布经理 Tom Stellad 为 LLVM/Clang 这个开源编译器软件包的下一个主要版本 15.0 制定了发布计划。

LLVM 15.0 十分重要,因为它加入了 AMDGPU back-end,可以实现对 AMD GFX11/RDNA3 的初步支持。这种对 GFX11 的支持很重要,因为 Mesa 的 RadeonSI Gallium3D 驱动程序需要它来支持 shader 编译,并且也可以被 RADV Vulkan 驱动程序使用,虽然人们更倾向于使用 RADV 的 ACO 编译器 back-end,但这仍然不是主线 RadeonSI 的一个选项。总之,LLVM 15.0 将初步实现所有的 GFX11 代码,这样就可以用它来支持今年晚些时候推出的下一代 AMD 图形硬件了。

今年的第二个 LLVM 版本通常会在 9 月发布,因此 LLVM 15.0 的发布时间表并不特别令人惊讶。而且从发布计划中我们可以看到,LLVM 15.0 的发布日期是 9 月 6 日,而不是月末的晚些时候推出,这将有助于确保 LLVM 15.0 及时用于秋季 Linux 发行版,如 Ubuntu 22.10。像 Fedora 37 这样的发行版已经在计划加入 LLVM 15.0。

15.0 发布计划中还包括在 7 月底发布分支和第一个候选 RC 发布版本,在 8 月底发布第二个候选 RC 发布版本,最终版本在 9 月 6 日左右发布。

除了对 GFX11 (RDNA3) 的支持工作之外,LLVM 15.0 还具有对 Apple M1 的 -march=native 支持、对 Arm Cortex-M85 的支持,用于随机化结构布局的 Clang “RandStruct” 支持、更快的 AMD Zen 平方根指令、对 AmpereOne CPU 支持、初始 SPIR-V 后端代码、支持 Sony PlayStation 5、初始 DirectX/HLSL 代码和对 LoongArch 支持等与许多其他编译器改进和新功能。

新闻出处,“LLVM 15.0 Planning For Early September Release - Important For RDNA3 Graphics Support”: https://www.phoronix.com/scan.php?page=news_item&px=LLVM-15.0-Release-Plan

关键词: LLVM

  • OpenGL 30 岁了!

1992 年的 6 月 30 日,Silicon Graphics (SGI) 向全世界发布了 OpenGL。

虽然近年来 Vulkan 备受关注,但 OpenGL 作为跨供应商的业界图形 API 标准的开山鼻祖,在历史上留下它的印记。 OpenGL 至今仍在广泛使用,并且依然有新的扩展在出现,现有的 OpenGL 驱动软件也在持续优化。仍然有很多软件基于 OpenGL 开发。尤其是在工作站领域,OpenGL 在未来几年内仍会被大量使用。通过 ANGLE 和 Zink 等软件栈的支持,我们仍然可以将 OpenGL 的无缝地移植到其他图形 API 上。

OpenGL 在过去 30 年中确实取得了长足的进步,现在支持 SPIR-V 着色器、更高效的驱动程序执行、计算着色器、各种形式的纹理压缩等等。虽然 OpenGL 有 30 岁了,但目前看起来依然很健壮。

新闻出处,“OpenGL Celebrates Its 30th Birthday”: https://www.phoronix.com/scan.php?page=news_item&px=OpenGL-30-Birthday

关键词: OpenGL

联系我们

欢迎扫描二维码加微信联系我们:

tinylab wechat



Read Album:

Read Related:

Read Latest: