[置顶] 泰晓 RISC-V 实验箱,配套 30+ 讲嵌入式 Linux 系统开发公开课
泰晓资讯·12 月 / 第一期 / 2021
“泰晓资讯”,广泛报道 “Linux/开源” 业界资讯。欢迎广大读者投递相关资讯来源和素材,本站将进一步收集整理后发布给大家。
Linux 内核最新消息
https://lkml.org/lkml/2021/11/28/300
Linus Torvalds 于 11 月 28 日发布了包含大量 bugfix 的 Linux 5.16-rc3。由于是在美国感恩节期间,为庆祝节日,他还将 codename 改为 “Gobble Gobble”(大概是 “饕餮大餐” 的意思),让大家一起来享受内核的乐趣。
在 5.16-rc3 的发布公告中,Torvalds 指出,"So rc3 is usually a bit larger than rc2 just because people had some time to start finding things. So too this time, although it's not like this is a particularly big rc3. Possibly partly due to the past week having been Thanksgiving week here in the US. But the size is well within the normal range, so if that's a factor, it's not been a big one."
看上去因为恰逢美国的节假日,所以这个 rc3 看上去比往常的要小一些。值得注意的是 Linux 5.16-rc3 中合入了针对 Intel Alder Lake 系统的 ITMT 问题修复,这个问题可能导致在某些主板任务调度时导致处理器选择发生问题(improper P vs. E core selection
)。不过这个问题现在已不复存在啦。本周另一个值得注意的 “修复” 是让 FUTEX2 futex_waitv
在更多 CPU 架构上工作。Linux 5.16-rc3 的其余部分主要是常见的错误修复。
Linux 5.16 稳定版应该会在年底左右发布。
https://www.kernel.org/ updated by 2021/12/3
分支类型 | 版本 | 发布时间 |
---|---|---|
mainline | 5.16-rc3 | 2021-11-28 |
stable | 5.15.6 | 2021-12-01 |
stable | 5.14.21 [EOL] | 2021-11-21 |
longterm | 5.10.83 | 2021-12-01 |
longterm | 5.4.163 | 2021-12-01 |
longterm | 4.19.219 | 2021-12-01 |
longterm | 4.14.256 | 2021-11-26 |
longterm | 4.9.291 | 2021-11-26 |
longterm | 4.4.293 | 2021-11-26 |
linux-next | next-20211202 | 2021-12-02 |
关键词: Linux
近期 Linux 内核的重要补丁(节选)
Architecture-specific
- ARM: add support for IRQ stacks: https://lwn.net/Articles/876144/
- ARM: add vmap’ed stack support: https://lwn.net/Articles/876145/
- ARM: Support KFENCE feature: https://lwn.net/Articles/876139/
- arm64: Enable BTI for the executable as well as the interpreter: https://lwn.net/Articles/876142/
- arm64/sme: Initial support for the Scalable Matrix Extension: https://lwn.net/Articles/876146/
- KVM: arm64: Make CPU ID registers writable by userspace: https://lwn.net/Articles/876275/
- perf/x86/amd: Add AMD Fam19h Branch Sampling support: https://lwn.net/Articles/875869/
- x86-64: Stack protector and percpu improvements: https://lwn.net/Articles/876081/
Core kernel
- extensible prctl task isolation interface and vmstat sync: https://lwn.net/Articles/875876/
- bpf: CO-RE support in the kernel: https://lwn.net/Articles/875879/
- trace: Add trace any kernel object: https://lwn.net/Articles/876080/
- tracing: Add ·__rel_loc· support: https://lwn.net/Articles/876095/
- user_events: Enable user processes to create and write to trace events: https://lwn.net/Articles/876183/
- signal: requeuing undeliverable signals: https://lwn.net/Articles/876187/
- Introduce BPF iterators for io_uring and epoll: https://lwn.net/Articles/876200/
关键词: Linux
新的 Linux 调度程序补丁可以提高某些工作负载下 AMD Zen 的性能
A set of two patches under review on the kernel mailing list for tweaking some kernel scheduler behavior can provide noticeable performance benefits to those using AMD EPYC and Ryzen processors on various workloads.
内核邮件列表上正在审查的一组两个补丁,这两个补丁的用途在于调整某些内核调度程序的行为,可以为那些在各种工作负载上使用 AMD EPYC 和 Ryzen 处理器的用户带来显著的性能提升。
去年,Linux 内核调度程序代码被调整为在 CPU 的使用率达到 25% 之前在 NUMA 节点之间支持 “浮动不平衡(floating imbalance)”。在此之前,仅当目标节点完全空闲时才允许在 NUMA 节点之间实现不平衡。
“浮动不平衡” 的实现者 - 资深 Linux 内核开发人员 Mel Gorman 重新审视了内核代码。他认为,如果 last-level cache (LLC) 和节点之间不满足 1:1 关系的情况下,例如 AMD Zen 处理器的情况,对于多个 LLC,不平衡算法处理的结果并不是是最优的。
长话短说,基于该考量修订后的 NUMA 不平衡代码,它可以提供最优的性能提升。通过 Gorman 执行的基准测试,在 AMD Zen 3 系统上运行基于 Stream OpenMP 的内存基准测试时,他看到了 180% 到 268% 的性能改进。对于 Coremark CPU 综合基准,他看到 harmonic 平均值和最大性能提高了 15%,而最低分数也提高了近 10%。对于 SPECjbb Java 工作负载,他通常也看到了更好的性能。
感兴趣的人可以通过内核邮件列表找到补丁。希望这项改进工作最终被证明是正确的,如果能赶上 Linux 5.17 发布就更好了。
原文新闻出处,“New Linux Scheduler Patches Can Improve AMD Zen Performance For Some Workloads” https://www.phoronix.com/scan.php?page=news_item&px=Linux-Sched-NUMA-Imbalance-Zen。
关键词: Linux, Schedular
Linux 5.17 为 AF_UNIX
套接字提供延迟优化
Net-next has been queuing a number of enticing performance optimizations ahead of the Linux 5.17 merge window kicking off around the start of the new year. Covered already was a big TCP optimization and a big improvement for csum_partial() that is used in the network code for checksum computation. The latest optimization is improving the AF_UNIX code path for those using AF_UNIX sockets for local inter-process communication.
在新的一年开始之际,也是 Linux 5.17 合并窗口开始之前,Net-next 仓库中已经累积了许多诱人的性能优化。这其中包括了针对 TCP 的重大优化和对 csum_partial()
的重大改进,该改进在网络代码中用于校验和计算。最新的优化可以为那些使用 AF_UNIX
套接字进行本地进程间通信的用户带来帮助。
来自 Amazon Japan 的 Kuniyuki Iwashima 提交了这个补丁,他采用的方法是使用 per-hash 锁替换 AF_UNIX
套接字的单个大锁。除此之外,该补丁还加快了 autobind 的执行。
该补丁对于大量使用 AF_UNIX
的应用很有吸引力。在 Amazon AWS 进行的测试中,更换大锁对 latency improvement 有一个很好的改进。此外通过从随机数中搜索名称来并行自动绑定多个套接字,减缓了 unix_autobind()
中的竞争,提供了另一个很好的延迟改进。
Linux 5.17 中的好货看起来还有很多,让我们对 2022 年的下一个内核版本充满期待。
新闻出处,“Linux 5.17 To Boast Latency Optimization For AF_UNIX Sockets” https://www.phoronix.com/scan.php?page=news_item&px=Linux-5.17-AF_UNIX-Optimization。
关键词: Linux,AF_UNIX
支持 OpenCL 1.2 的开源的基于 FPGA 的 RISC-V GPGPU
While there was the Libre RISC-V GPU effort aiming to provide an open-source GPU accelerator based on RISC-V, it ultimately turned into Libre-SOC with a focus now on the POWER ISA. Meanwhile Vortex is continuing to mature as an open-source, FPGA-based RISC-V GPGPU processor.
虽然 Libre RISC-V GPU 项目旨在提供基于 RISC-V 的开源 GPU 加速器,但它最终变成了 Libre-SOC 项目,现在专注于 POWER ISA。与此同时,Vortex 作为开源的、基于 FPGA 的 RISC-V GPGPU 处理器正在继续成熟。
Vortex 是一种 RISC-V GPGPU,目前用于基于 FPGA 的实现,可在 Intel Arria 10 或 Intel Stratix 10 上运行。这种通用 GPU 使用 RISC-V RV32IMF 32 位 ISA,在 250MHz 下可以产生多达 1024 个线程。
Vortex 提供对 OpenCL 1.2 的支持,但显然作为基于 FPGA 的实现和早期设计,它的计算带宽只能达到大约 128 Gflops。内存带宽额定为 16GB/s。
为了让 OpenCL 在这个软 GPGPU 上运行,它确实依赖于 POCL “Portable Computing Language” 项目的基于 LLVM 的可移植的 OpenCL 实现。
更多介绍请阅读新闻出处,“Open-Source FPGA-Based RISC-V GPGPU That Supports OpenCL 1.2”: https://www.phoronix.com/scan.php?page=news_item&px=Vortex-RISC-V-GPGPU。
关键词: OpenCL, RISC-V
LLVM 实现了新的 ThreadSanitizer 运行时,速度更快,内存消耗更低
LLVM developers have been working recently to land their new ThreadSanitizer run-time. The TSan as a reminder is the compiler instrumentation with associated run-time library for being able to detect data races.
LLVM 开发人员最近一直在努力实现他们新的 ThreadSanitizer 运行时,用于能够检测数据竞争。
即使在大型复杂的代码库中,ThreadSanitizer 也能成功检测数据竞争条件。但不幸的是,启用该特性后对算力的消耗特别大,性能下降 5 ~ 15 倍,内存开销可能会增大 5 ~ 10 倍。
在启用新的 ThreadSanitizer 运行时后,shadow memory 要少一半。还带来了更快的 fully-vectorized 竞争检测、快速 vectorized vector clock 操作,并且可以处理无限数量的活动线程/goroutine。换句话说,新的 TSan 运行时体现出对当前代码的重大改进。
开发人员一直在努力实现这个新的运行时,但中间由于测试失败曾经经历了多次反复。改进的测试用例和其他 ThreadSanitizer 增强功能已经提交,而最新的 TSan 运行时补丁已发布,希望所有这些都可以加速 ThreadSanitizer 的开发。
更多介绍请阅读新闻出处,“LLVM Prepares New ThreadSanitizer Runtime That Is Faster, Lower Memory Use”: https://www.phoronix.com/scan.php?page=news_item&px=LLVM-TSan-ThreadSanitizer-v3。
关键词: LLVM,ThreadSanitizer
联系我们
资讯内容部分来自 “LWN.net“。如果您对某些 LWN 文章感兴趣(譬如希望获得全文翻译的)请扫描二维码加微信联系我们:
猜你喜欢:
- 我要投稿:发表原创技术文章,收获福利、挚友与行业影响力
- 泰晓资讯:汇总一周技术趣闻与文章,查看「Linux 资讯」
- 知识星球:独家 Linux 实战经验与技巧,订阅「Linux知识星球」
- 视频频道:泰晓学院,B 站,发布各类 Linux 视频课
- 开源小店:欢迎光临泰晓科技自营店,购物支持泰晓原创
- 技术交流:Linux 用户技术交流微信群,联系微信号:tinylab
支付宝打赏 ¥9.68元 | 微信打赏 ¥9.68元 | |
请作者喝杯咖啡吧 |
Read Album:
- 泰晓资讯·11 月 / 第一期 / 2024
- 泰晓资讯·10 月 / 第二期 / 2024
- 泰晓资讯·10 月 / 第一期 / 2024
- 泰晓资讯·9 月 / 第二期 / 2024
- 泰晓资讯·9 月 / 第一期 / 2024