ChinaUnix.net
相关文章推荐:

linux 绑定 cpu

linux 多核下绑定硬件中断到不同 cpu 硬件中断发生频繁,是件很消耗 cpu 资源的事情,在多核 cpu 条件下如果有办法把大量硬件中断分配给不同的 cpu (core) 处理显然能很好的平衡性能。现在的服务器上动不动就是多 cpu 多核、多网卡、多硬盘,如果能让网卡中断独占1个 cpu (core)、磁盘 IO 中断独占1个 cpu 的话将会大大减轻单一 cpu 的负担、提高整体处理效率。VPSee 前天收到一位网友的邮件提到了 SMP IRQ Affinity,引发了今天...

by 凝望长空 - 集群和高可用 - 2011-04-29 15:34:34 阅读(2694) 回复(2)

集群

相关讨论

什么是中断 中文教材上对 “中断” 的定义太生硬了,简单的说就是,每个硬件设备(如:硬盘、网卡等)都需要和 cpu 有某种形式的通信以便 cpu 及时知道发生了什么事情,这样 cpu 可能就会放下手中的事情去处理应急事件,硬件设备主动打扰 cpu 的现象就可称为硬件中断,就像你正在工作的时候受到 QQ 干扰一样,一次 QQ 摇头就可以被称为中断。 中断是一种比较好的 cpu 和硬件沟通的方式,还有一种方式叫做轮询(polling),就是让 ...

by net-boy - 服务器及硬件技术 - 2010-11-08 22:32:57 阅读(3401) 回复(1)

一直没怎么关注过linux 磁盘、网络等操作怎么完成的, 不知道磁盘、网络操作是否基于内核线程调度进行,是否可以将之绑定到固定的cpu上,比如cpu 0,如果cpu 1上有磁盘操作则或被调度到cpu 0上进行。 可以实现这种功能吗?

by nudthuafeng - 内核源码 - 2009-04-17 10:13:44 阅读(2176) 回复(3)
by rain_fish - C/C++ - 2010-08-18 13:18:47 阅读(4816) 回复(7)

在SMP情况下,linux调度器有负载均衡机制,将一个进程在不同cpu之间进行迁移。因此,一个进程运行在哪个cpu上是不确定的,但有时候为了测试数据方便,却有这样的需求,就是将某个进程绑定到一个cpu上运行。 怎么办呢?如果你有源代码,那么很简单,在代码里面加上sched_setaffinity()函数就可以了,但如果没有呢? 没关系,我们有秘密武器,那就是taskset命令。 该命令最简单的用法是: taskset [mask] [command] mask是cpu掩码,用...

by int345 - Linux文档专区 - 2009-11-01 23:15:15 阅读(819) 回复(0)

各位,HP-UX的主机(8cpu),绑定了4个,运行的时候,实际是从第二个(序号AFF_SPROC+1)cpu开始绑定的,而不是第一个,是这样的么? 那我如何使用系统的第一个cpu呢? AFF_SPROC 0 # Affinity start processor AFF_NPROCS 4 # Affinity number of processors cpu states: cpu LOAD USER NICE SYS IDLE BLOCK SWAIT INTR SSYS 0 0.02 0.8% 0.0% 0.8% 98.4%...

by welion - Informix - 2009-02-02 15:26:04 阅读(2206) 回复(4)

相关函数: sched_setaffinity, sched_getaffinity, cpu_CLR, cpu_ISSET, cpu_SET, cpu_ZERO - set and get a process's cpu affinity mask #define _GNU_SOURCE #include int sched_setaffinity(pid_t pid, unsigned int cpusetsize, cpu_set_t *mask); int sched_getaffinity(pid_t pid, unsigned int cpusetsize, cpu_set_t *...

by Aquester - Linux文档专区 - 2008-12-20 12:04:47 阅读(1493) 回复(0)

下午整理代码,发现一切写的两个小工具,绑定进程到特定cpu上,一个set,一个get 其实可以合二为一,哎,懒的改了 保存一下 就用到了两个系统调用,详细描述在见LKD

by 印随 - C/C++ - 2008-12-18 08:20:41 阅读(3282) 回复(8)

#include #include #include #include #include #define __USE_GNU #include #include #include int main(int argc, char* argv[]) { int num = sysconf(_SC_NPROCESSORS_CONF); int created_thread = 0; int myid; int i; int j = 0; cpu_set_t mask; cpu_set_t get; if (argc != 2) { printf("usage : ./cpu num\n"); ...

by gaocheng - Linux文档专区 - 2007-08-01 01:44:28 阅读(792) 回复(0)

我用iptables做本机上面多个进程的负载均衡,发现性能比单进程只提高了30%,怀疑是iptables遇到瓶颈, iptables属于系统进程,我怎么才能看到它的cpu消耗,还有,怎么把它绑定到特定的cpu组呢?

by yogi_bear - Linux系统管理 - 2012-04-10 12:10:43 阅读(1057) 回复(2)

进程a只由cpu0处理 进程b只由cpu1处理

by stonerose - Linux论坛 - 2004-07-29 09:40:10 阅读(687) 回复(2)