问题标签 [smp]

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.

0 投票
1 回答
962 浏览

c - 如何正确使用 startup-ipi 来启动应用处理器?

我的目标是让我自己的内核启动一个应用程序 cpu。它使用与linux 内核相同的机制:

  • 发送断言和电平触发的 init-IPI
  • 等待...
  • 发送置低和电平触发的 init-IPI
  • 等待...
  • 最多发送两个带有向量号的启动 IPI (0x40000 >> 12)(应用处理器的入口代码就在那里)

目前我只是对让它与 QEMU 一起工作感兴趣。不幸的是,0x40000应用程序 cpu 并没有跳转到,而是0x0cs寄存器设置为0x4000。(我用gdb检查过)。

英特尔多处理器规范(B.4.2) 解释说,如果目标处理器在 RESET 或 INIT 后立即停止,我注意到的行为是有效的。但这不应该也适用于linux内核的代码吗?它在 init-IPI 之后发送 startup-IPI。还是我误解了规范?

我该怎么做才能让应用程序处理器跳转到而0x000VV000不是寄存器设置为?我真的看不到,linux 在哪里做了改变行为的事情。0x0cs0xVV00

0 投票
1 回答
70 浏览

shell - How to restricit my cpu affinity to a subset of the cpus available on a given machine?

I am working on a machine with 4 sockets with another person that launch performance tests on one precise socket and does not want anybody to iterfer with this socket.

I would like to work transparently on the 3 remaining sockets. How could could I do that, something like prefixing all my commands with numactl... ??

My shell is zsh

Thanks!

0 投票
1 回答
548 浏览

linux - 理解 linux 中的 SMP 概念

最近我开始接触 SMP 编程,试图理解 Linux 中的概念和实验示例。当我开始在谷歌上搜索相同的内容时,我遇到了以下书:

现代体系结构的 UNIX 系统:内核程序员的对称多处理和缓存

这本书非常好,传达了我所说的内容,但我感到困惑或不清楚,如果相同的概念也适用于 Linux:例如:虚拟缓存,它们是否存在于 Linux...

基本上,如果我纯粹在 Linux 环境中工作,我正在寻求关于这本书会有多大帮助的建议。

0 投票
3 回答
93 浏览

arm - 多核系统能否允许两个或多个内核同时访问同一个内存位置?

我目前正在研究ARM架构。多核系统上的两个内核可以同时访问同一个内存位置吗?

0 投票
1 回答
12618 浏览

linux-kernel - Linux 内核 (Samsung Exynos5422) 中如何实现异构多处理 (HMP) 调度?

有人知道如何在 Linux 内核调度程序中实现异构多处理 (HMP) 调度吗?

这已在随 ODROID-XU3 板提供的内核中实现。( https://github.com/hardkernel/linux.git -b odroidxu3-3.10.y-android )

我大致知道它会计算某个进程的负载,并根据该负载重新调度到更快或更慢的 CPU。我正在寻找更详细的解释,如果可能的话,实现此功能的函数的代码位置。

0 投票
3 回答
3331 浏览

linux-kernel - ____cacheline_aligned_in_smp 用于 Linux 内核中的结构

在Linux内核中,为什么很多结构都使用____cacheline_aligned_in_smp宏?访问结构时是否有助于提高性能?如果是,那怎么办?

0 投票
1 回答
74 浏览

synchronization - 在 SMP 系统的弱一致性模型中,Memory Barrier 指令是如何工作的(在实现方面)?

我知道具有 PowerPC 汇编器机器和其他系统(如 Tilera)的系统采用弱存储排序,这不能保证内存操作按程序顺序对系统可见(内存排序问题)。因此,在这些类型的系统中,在同步情况下需要显式的内存屏障指令……但是如果这些类型的系统采用具有异步(无请求-应答实现)语义的存储操作,这怎么可能呢?

0 投票
1 回答
189 浏览

android - 无法执行该操作,因为该库尚未全局初始化

我正在使用 SAP Mobile Platform 3.0 和本地数据开发一个 Android 应用程序,该应用程序能够连接到 OData 服务,但是当我创建离线商店并尝试打开它时会抛出 ODataException: com.sap.smp.client .odata.offline.ODataOfflineException: [-10203] 由于库尚未全局初始化,因此无法执行操作。有谁知道我错过了什么?已经尝试查找更多信息,但我找不到有关此问题的任何信息。

提前致谢。

0 投票
2 回答
1304 浏览

operating-system - 对称多处理 (SMP) 和多处理 (MP) 有什么区别?

我知道 MP 是管理多个处理器内的多个进程,但它和 SMP 有什么区别吗?是不是在SMP中你可以同时从同一个进程执行多个线程,而MP你只能让一个进程占用一个处理器?

我认为差异的例子是:

脱模剂

P1 有 3 个线程:P1T1、P1T2 和 P1T3 P2 有 2 个线程:P2T1 和 P2T2。

在具有 3 个处理器的计算机上,您可以同时将 P1T1 分配给处理器 1,将 P1T2 分配给处理器 2,将 P1T3 分配给处理器 3(如果全部可用),或者将 P2T1 分配给处理器 1,将 P2T2 分配给处理器 2,将 P1T1 分配给处理器 3。

国会议员

P1 有 3 个线程:P1T1、P1T2 和 P1T3 P2 有 2 个线程:P2T1 和 P2T2。

在具有 3 个处理器的计算机上,您可以将 P1T1 分配给处理器 1,并且 - P1 有 3 个线程:P1T1、P1T2 和 P1T3 P2 有 2 个线程:P2T1 和 P2T2。

在具有 3 个处理器的计算机上,您可以将 P1T1 分配给处理器 1,但 P1T2 和 P1T3 必须等到 P1T1 完成才能执行,而 P2T1 可以转到处理器 2,同样,P2T2 必须等到 P2T1在它执行之前完成执行。

这有意义吗?如果是这样,我在正确的轨道上吗?谢谢,我今天参加了操作系统考试,我正在学习。感谢你们提供的任何帮助。

另外,线程是如何调度的?我知道这是一个非常广泛的问题,但是有什么具体的方法吗?还是基于系统实施的调度?我知道有循环调度,更高的优先级,时间切片,时间共享,最短的时间......如果这个问题没有意义,不用担心,我感谢你们可以提供的任何帮助。

0 投票
0 回答
169 浏览

linux - 如何在 SMP Linux 系统上计算 BogoMIPS?

我在 Linux 内核上工作,为一个 ARM SoC 实现对称多处理支持。当内核作为单处理器运行时,BogoMIPS 值为 1171。但是当我在 Linux 内核中打开 SMP 支持时,BogoMIPS 值急剧下降到 17。那么这个值是如何计算的,以及影响它的因素是什么?