问题标签 [hmp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux-kernel - Linux 内核 (Samsung Exynos5422) 中如何实现异构多处理 (HMP) 调度?
有人知道如何在 Linux 内核调度程序中实现异构多处理 (HMP) 调度吗?
这已在随 ODROID-XU3 板提供的内核中实现。( https://github.com/hardkernel/linux.git -b odroidxu3-3.10.y-android )
我大致知道它会计算某个进程的负载,并根据该负载重新调度到更快或更慢的 CPU。我正在寻找更详细的解释,如果可能的话,实现此功能的函数的代码位置。
multithreading - 有没有办法计算异构多核 CPU 上的高性能内核
在异构多处理模型中,CPU 或 SoC 的不同内核没有相同的性能配置文件。虽然 HMP 系统在不久前首次部署(wiki 提到三星早在 2013 年就开始使用该型号),但它们正在与苹果的 M 系列相提并论(从技术上讲,这已经是 HyperThreading 的问题,这可以被视为一种形式我猜是 HMP)。
并行化工具通常尝试通过计算系统上的内核数量来猜测他们应该创建的工作人员数量,但是在 HMP 模型中可能适得其反,尤其是对于个人设备:虽然“高效”内核在技术上是可用的,但它们性能低下,加载它们不会带来巨大的性能提升,并且会极大地影响与系统交互的交互性/愉悦性。这通常是可配置的(因此用户可以设置一些更合理的东西),但将这些工具仅隔离到“高性能”内核(至少假设它们受 CPU 限制)似乎更好的默认设置,让用户可以选择增加驻留如果他们这样选择。
那么是否有一种可移植的方式来列出“真实”和“高性能”核心并将其与“虚拟”和“高效”核心区分开来?
注意:我看过68444429 “how can I区分 high-and low-performance cores in C++”,虽然标题很相似,但问题和目标却大不相同,因为这里的目标是避免默认产生不必要和低效的工作.