问题标签 [affinity]

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 投票
4 回答
5557 浏览

c++ - 有没有办法使用 boost 线程库将线程关联设置到处理器内核?

如果我需要处理器内核以 100% 的速度运行十几秒钟,或者如果我让系统决定如何处理线程,我会获得更好的性能吗?

我需要的是快速执行,我担心系统可能会在使用所有内核之前花费几秒钟,但我还没有找到任何使用 boost 线程的方法。

0 投票
1 回答
1408 浏览

multithreading - 错误:在 windows xp 上未定义对“sched_setaffinity”的引用

基本上,下面的代码是为在 linux 上使用而设计的,也许这就是我得到错误的原因,因为我使用的是 windows XP,但我认为 pthreads 应该在两台机器上都能正常工作。我使用 gcc 作为我的编译器,并且我确实与 -lpthread 链接,但我还是得到了以下错误。

|21|对sched_setaffinity'| |30|undefined reference tosched_setaffinity 的未定义引用'|

如果有另一种方法可以使用 pthreads(在 Windows 上)设置线程亲和性,请告诉我。我已经知道所有可用的 windows.h 线程关联函数,但我想保持多平台。谢谢。

0 投票
2 回答
1386 浏览

linux - 在 gdb 中设置应用程序亲和性

有没有一种简单的方法来设置我正在调试的应用程序的亲和力而不将 gdb 锁定到同一个核心?我问的原因是应用程序以实时优先级运行,它需要在单核上运行。目前我使用这个命令行

但是应用程序停止响应并冻结 gdb 服务器,从而无法进行调试。我怀疑应用程序的实时优先级阻止 gdb 执行。如果我启动应用程序,然后在没有关联设置的情况下启动 gdb,那么我可以在不冻结 gdb 的情况下附加和调试应用程序。

有没有一种简单的方法来启动 gdb 和具有不同亲和力的应用程序?或者最好:是否有一个 gdb 命令来设置子进程的亲和力?

0 投票
1 回答
134 浏览

c++ - Windows Phone 中的进程关联

我的 WP 库项目,我正在尝试将繁重的进程绑定到硬件线程(0 或 1)。因此,使用该库的应用程序使用其他可用核心。

我们可以在 Windows Phone 8 应用程序中设置进程关联吗?我找不到关于SetProcessAffinityWP8 之类的文档。

0 投票
4 回答
7202 浏览

c# - 使用 C# 设置 CPU 的亲和性

我在 C# 中创建了一个窗口应用程序。现在我想为这个应用程序设置 CPU 亲和性。我可能有 2 个处理器、4 个处理器、8 个处理器或可能超过 8 个处理器。

我想使用来自接口的输入来设置 cpu 亲和性。

我怎样才能做到这一点?如何使用 Environment.ProcessorCount 设置亲和力?

0 投票
3 回答
4086 浏览

linux - CPU 亲和力的优缺点

假设我有一个多线程应用程序(比如大约 40 个线程)在以 Linux 作为操作系统的多处理器系统(比如 8 个内核)上运行,其中不同的线程更本质上是由内核调度的 LWP(轻量级进程)。

使用 CPU 亲和性有什么好处/缺点?CPU 亲和性是否会通过将线程本地化到核心子集从而最小化缓存共享/未命中来提供帮助?

0 投票
2 回答
355 浏览

c - 在 Ubuntu 中从 Eclipse 运行 C 代码时如何设置 CPU 亲和性?

我可以使用“taskset -c 0 ./out”从终端执行此操作。我怎样才能从 Eclipse 做同样的事情?

0 投票
0 回答
510 浏览

process - 使用 WMI 更改关联(非优先级)进程

在 C# 应用程序和 WMI 中,我尝试更改进程的关联性(如任务管理器)。

我必须为远程计算机执行此操作。System.Diagnostics不要那样做。

我没有找到 WMI 课程。有一些类Win32_NamedJobObjectProcessWin32_NamedJobObjectLimit或者Win32_NamedJobObjectLimitSetting但它似乎是为亲和的工作内核......

可能吗 ?哪些课?在 C#、ps1、vbs...

谢谢你的帮助

0 投票
1 回答
2746 浏览

windows - Windows 上的 Pin 处理器 CPU 隔离

在我主要工作的 linux 中,我们使用一种称为 CPU 隔离的技术,它可以有效地将进程锁定在处理器上,并阻止处理器运行其他任何东西。我们的内核人员做了一些魔术来处理中断。

在 Windows 中,我发现的最接近的东西是一个相似性概念,它似乎将进程/线程绑定到处理器。但它不能保证处理器仅运行该进程/线程,这意味着仍然可能存在上下文切换和其他抖动。

有没有办法在 Windows 上隔离 CPU 以获得半确定性的运行时间?

0 投票
2 回答
4164 浏览

command-line - 在 cmd.exe (Windows XP) 中使用 /affinity 启动可执行文件

我有一个我正在尝试使用的程序经常崩溃,对此的修复之一是将其设置为仅使用一个处理器。我可以通过任务管理器手动轻松地做到这一点,但我更喜欢双击快捷方式的解决方案。

我试过用这行代码制作 .bat 文件:C:\Windows\System32\cmd.exe /C start /affinity 1 KSP.exe

但是,它只是拒绝运行。删除 /C 开关只会启动 cmdbox。

尝试在 cmdbox 中键入 /affinity 1 KSP.exe(谢天谢地,cmdbox 以 .bat 文件所在的目录开头,该目录与 .exe 所在的文件夹相同,因此没有问题)只会给出以下错误:

无效的开关 - “/affinity”。