关于affinity mask

Windows CPU大核手动调度优化实战 现代处理器的大小核架构(如Intel P/E核或ARM big.LITTLE)通过异构计算提升能效比,但其线程调度机制可能无法满足高性能场景需求。通过处理器亲和性(Affinity Mask)技术,开发者可以精确控制进程与CPU核心的绑定关系。本文以12代酷睿为例,详解二进制掩码计算原理,提供四种强制大核运行的工程方案(启动绑定、运行时设置、永久关联和注册表配置),实测显示视频渲染和代码编译等场景可获得30%左右的性能提升。针对多NUMA节点服务器和高负载进程监控,还给出了自动化PowerShell脚本实现 阅读详情

affinity mask 选项

在 Microsoft® Windows NT® 4.0 和 Windows® 2000 中,进行中的活动(线程)可以在处理器间迁移,每次迁移都刷新处理器高速缓存。在系统负荷繁重的情况下,指定一个处理器运行某特定的线程可以提高系统性能,方法是减少处理器缓存重新加载的次数。处理器和线程之间的关联称为处理器亲和力。

利用 affinity mask 选项可以在系统负荷过重时提高对称多处理器 (SMP) 系统(多于 4 个处理器)的性能。可以将线程与特定的处理器相关联,并指定 Microsoft SQL Server™ 要使用的处理器。也可以使 SQL Server 的活动在已由 Windows NT 4.0 或 Windows 2000 操作系统指派了特定工作负荷的处理器之外的处理器上运行。

如果将代表某处理器的位设为 1,则该处理器将被选择进行线程分配。如果将 affinity mask 设为 0(默认值),则由 Windows NT 4.0 或 Windows 2000 调度算法设置线程的亲和力。当把 affinity mask 设为任一非零值,SQL Server 亲和力逻辑将该值解释为指定可选处理器的位掩码。使 SQL Server 线程不运行在特定的处理器上有助于评估系统对 Windows NT 4.0 或 Windows 2000 专用进程的处理能力。例如,可以使用 affinity mask 评估其它网络接口卡 (NIC) 是否提高了性能,或评定负荷增加时的 NIC 性能。

由于 SQL Server 处理器亲和力是一项特殊的操作,建议仅在需要时才使用该功能。大多数情况下,Windows NT 4.0 或 Windows 2000 的默认亲和力可提供最佳性能。

在更改 affinity mask 设置前,要注意 Windows NT 4.0 和 Windows 2000 将与 NIC 相关联的延迟进程调用 (DPC) 活动指派给系统中编号最大的处理器。在安装了多块活动的 NIC 的系统中,每一块额外卡的活动都分配给系统中下一个最高数字代号的处理器。例如,一个有八个处理器、两块 NIC 卡的系统分别把其 DPC 安排给处理器 7 和处理器 6。

说明  可以使用系统监视器(在 Windows NT 4.0 中是性能监视器)查看并分析个别处理器的使用情况。

 

例如,如果处理器 1、2 和 5 是可用的,且位 1、2 和 5 均设为 1,而位 0、3、4、6 和 7为 0,则指定十六进制值 0x26,即十进制值的 38。将位从右至左进行编号。最右边的位为位 0。设置位 1、2 和 5(即第 3、第 5 和第 6 位)为 1,则根据指定的位计算而得的数字为为二进制的 00100110,亦即十进制的 38 或十六进制的 0x26。

下面是一个八处理器系统的 affinity mask 值。

十进制值二进制掩码允许 SQL Server 线程运行在哪些处理器上
1000000010
3000000110 和 1
7000001110、1 和 2
15000011110、1、2 和 3
31000111110、1、2、3 和 4
63001111110、1、2、3、4 和 5
127011111110、1、2、3、4、5 和 6(仅使 SQL Server 活动与 DPC 处理器隔离)

affinity mask 是一个高级选项。如果使用 sp_configure 系统存储过程更改设置,则仅当 show advanced options 设置为 1 时才能更改 affinity mask。该设置在服务器停止并重新启动后生效。 

视觉-语言模型:BLIP与Flamingo如何理解图文? 视觉-语言模型:BLIP与Flamingo如何理解图文? ,人工智能,计算机视觉,大模型,AI,在当今人工智能飞速发展的时代,视觉 - 语言模型作为多模态领域的关键技术,正逐渐改变着我们与数字世界交互的方式。它们致力于打破图像与文本之间的模态壁垒,使计算机能够像人类一样,综合理解和处理视觉与语言信息。其中,BLIP 和 Flamingo 两款模型脱颖而出,以独特的架构和创新的训练方法,在图像描述生成、视觉问答、图文检索等任务中展现出卓越的性能。本文将深入剖析 BLIP 与 Flamingo 模型的工作原理。 阅读详情

相关推荐

车辆TBOX科普 第7次 TBOX技术深度解析:硬件架构与核心组件详解

摘要: TBOX(车载远程信息处理单元)是智能网联汽车的核心组件,承担数据采集、通信连接与安全交互等关键功能。其硬件架构以主控单元为核心,采用ARM架构处理器(如NXP i.MX系列)实现高效能低功耗处理,搭配DDR4/LPDDR5内存保障性能,eMMC/UFS存储确保数据可靠性。设计中需平衡车规级可靠性(AEC-Q100)、EMC兼容性及成本控制,同时集成通信、定位与安全模块。未来趋势聚焦异构计算、先进制程及功能安全(ASIL-D)与信息安全融合,推动TBOX向边缘计算节点演进。该技术是汽车智能化转型的重

IT深耕十余载,大道之简 863

如何快速解决Affinity mask和Affinity I/O mask冲突(conflict)问题

SQL Server Engine, 关联掩码,I/O关联掩码,冲突,Error 5834

pengloo的专栏 1643

训练AI:从数据收集到模型部署的完整指南

如果你刚开始接触AI,建议先学习一些基础的编程和机器学习知识,还可以使用现成的AI平台和工具来帮助你训练AI模型。在这篇文章中,我们将详细探讨从数据收集到模型部署的完整步骤,并提供一些有用的技巧和工具,以帮助你成功地训练自己的AI模型。在收集数据时,你需要从可靠的数据源(如数据仓库、数据集市、API接口)获取数据,确保数据的准确性和完整性。常用的划分比例是70%的数据集用于训练模型、15%的数据集用于验证模型,5%的数据集用于超参数调整,最后10%的数据集用于测试模型的性能。测试数据集用于测试模型的性能。

a_wsnd的博客 4166

SetThreadAffinityMask中掩码的问题

在我们进行多线程开发的过程时,常常需要自己分配线程到不同的处理器上运算,以保证我们程序的运行效率。SetThreadAffinityMask是我们常见的选择。 1.MSDN中函数的定义DWORD_PTR WINAPI SetThreadAffinityMask( _In_ HANDLE hThread, _In_ DWORD_PTR dwThreadAffinityMask );参数

索命的博客 4794

MCAL配置之CAN模块及源码分析

该文章详细解析了Autosar中MCAL配置里的CAN模块,详细分析了重要的配置选项,并对CAN的发送和接收函数进行了剖析。

u013624141的博客 1423

DAC8568实战指南:如何用STM32实现8通道DAC精准控制(附代码)

本文提供DAC8568与STM32结合的实战指南,详细解析8通道16位DAC的精准控制方法。内容涵盖硬件连接、SPI配置、驱动层构建、时序调试及多通道同步输出等关键步骤,并附有经过验证的HAL库驱动代码,帮助工程师快速解决实际项目中的通信与输出稳定性问题。

weixin_29175469的博客 746

高性能编程的一些总结

高性能编程 文章目录高性能编程高性能技术问题c++的编译器优化核绑定内存池无锁队列内存对齐 高性能技术问题 如何充分利用单个CPU资源 如何高效调节多处理器任务分配 如何提高输入输出速度 如何在多任务间高效传递数据 如何更高效利用内存 如何确保计算与存储一致性 如何利用专用硬件提升部门任务的计算性能 c++的编译器优化 普通静态优化 O1 一级优化 O2 二级优化 O3 三级优化 指令集支持 编译期特性支持 这里主要介绍普通静态优化 O1 一级优化,在不影响编译速度的前提下,尽量采用一些优

SWX230162的博客 844

YOLOv11 改进策略 | HWD:引入 Haar 小波变换,减少信息丢失

在卷积神经网络(CNN)中,下采样(Downsampling)是降低特征图分辨率、扩大感受野的关键操作,通常通过最大池化(MaxPool)或步长为 2 的卷积(Strided Convolution)实现。然而,这些方法在降低分辨率的同时,往往会丢失图像中的高频细节信息(如边缘、纹理)和精确的空间位置信息,这可能对后续特征提取和目标检测精度产生不利影响,尤其是对于小目标和需要精细定位的任务。

走向CTO的路上... 1792

thread affinity mask与process affinity mask

process affinity mask的值必须是通过函数GetProcessAffinityMask所获得的system affinity mask值的子集。一个thread affinity mask必须是包含该线程的进程的affinity mask的一个子集。一个线程只能运行在它的线程所能运行的处理器们上。因此,当process affinity mask将某个processor指定为0的时候,thread affinity mask就不能将这个处理器指定为1。

weixin_43638873的博客 382

Edge浏览器IE模式全攻略:从企业应用到老旧网站兼容(含常见问题解答)

本文详细解析了微软Edge浏览器的IE模式,这是解决企业遗留系统与老旧网站兼容性问题的关键技术。文章从核心原理出发,提供了从个人用户临时启用到企业级组策略部署的完整配置指南,并深入探讨了文档模式调优、ActiveX控件处理等高级技巧,最后汇总了常见问题排查与安全实践,帮助用户高效平衡兼容性与现代化浏览体验。

weixin_29227425的博客 612

Open3D (C++) 计算点云坐标最值及其索引

使用C++版本的Open3D计算点云最值点及其对应的下标索引

点云侠的博客 731

c语言设置cpu affinity (设置程序需要使用的cpu内核) cpu mask

c语言设置cpu affinity (设置程序需要使用的cpu内核) cpu mask

Work Hard, Play Harder! 7886

2 中望CAD二次开发-绘制图形(ZRX C++)

本文讲解中望CAD二次开发,关于块的概念及基本图形的绘制

cilvsuanna的博客 412

c语言设置cpu affinity (设置程序需要使用的cpu内核) cpu mask

最近打算写个小程序, 需要控制使用的是哪个 cpu 内核,所以做了一些调查, 整理一下分享给大家。 主要参考: http://www.gnu.org/software/libc/manual/html_node/CPU-Affinity.html/ http://stackoverflow.com/questions/7296963/gnu-source-and-use-gnu htt...

蓝精灵的专栏 1822

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

绑定大核失败:pid 1286‘s current affinity mask: f taskset: failed to set 1286‘s affinity: Invalid argument

绑定大核失败:pid 1286's current affinity mask: f taskset: failed to set 1286's affinity: Invalid argument

happyball115的博客 2407

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

背景移除:Topaz Mask AI vs Affinity Photo 选择笔刷 vs Remove.bg

这段文字介绍了两个 AI 图像处理工具:Topaz Mask AI 和 Remove.BG,并以 Topaz Mask AI 为例,详细讲解了它的使用方法。 Topaz Mask AI 是一个可安装在电脑上的软件,它可以帮助用户快速创建高质量的图像蒙版。 主要功能和特点: 自动检测功能: 可以自动检测图像中的主体和天空,并自动生成蒙版。 多种蒙版模式: 包括 AI 辅助模式、半透明模式、对比度模...

OlivioSarikas的博客 509

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

C语言作用Cpu,c语言设立cpu affinity (设置程序需要使用的cpu内核) cpu mask

c语言设置cpu affinity (设置程序需要使用的cpu内核) cpu mask最近打算写个小程序, 需要控制使用的是哪个 cpu 内核,所以做了一些调查, 整理一下分享给大家。ps: 因为毕业季很久没有写博客了, 以后继续。 顺便鄙视一下那些转载不声明出处的, by watkins.songpps: 最近有了个新的id, 因为在Oracle, wei.x.song, 不知到以后用哪个id...

weixin_32208021的博客 597

绑定进程到某个cpu核上

使用affinity模块可以方便的获取和设置进程所运行的内核。affinity模块中有两个主要的接口:get_process_affinity_mask(pid)set_process_affinity_mask(pid,value)刚开始使用set_process_affinity_mask接口时,我犯了严重的错误,其中value的值设置的是内核的个数值。结果绑定CPU怎么也不正确。再仔细一查,...

hl234的专栏 967

Multi person-pose estimation

几篇人体关键点检测的论文 一、Mask R-CNN Mask R-CNN Mask R-CNN同时进行目标检测和实例分割,在Faster-RCNN框架基础上增加mask分支,多任务损失为: L=Lcls+Lbox+LmaskL=Lcls+Lbox+LmaskL=L_{cls}+L_{box}+L_{mask} 对于每个RoI,mask分支有Km2Km2Km^2维的输出,表示K个分辨率为m...

cv_family_z的博客 1163

BoxInst: High-Performance Instance Segmentation with Box Annotations 论文笔记

BoxInst: High-Performance Instance Segmentation with Box Annotations 论文链接: https://arxiv.org/abs/2012.02310 一、 Problem Statement 实例分割是像素级的标注,耗时耗力。能否只使用Bounding box的标注来进行实例分割呢? 二、 Direction 重新设计mask的loss function,不修改网络框架。 新的一个projection loss来最小化预测的mask和gro

Tianchao龙虾 667

【小样本分割】VAT:Cost Aggregation Is All You Need for Few-Shot Segmentation

与HSNet类似,采用的是直接对相似度矩阵进行编码、解码操作的架构。该论文主要是由Pyramidal Transformer Encoder、Affinity-aware Transformer Decoder构成,需要一点预备的swin transformer的知识。

qq_51964221的博客 1001

DPDK多线程:EAL pthread和lcore Affinity(F-Stack配置文件的配置参数:lcore_mask、lcore_list)

目录 多线程 EAL pthread和lcore Affinity 非EAL pthread支持 公共线程API 控制线程API 已知的问题 cgroup控件 多线程 DPDK通常每个内核固定一个pthread,以避免任务切换的开销。这可以显着提高性能,但缺乏灵活性,而且并不总是有效的。 电源管理通过限制CPU运行时间来帮助提高CPU效率。但是,也可以利用可用的空闲周期来利用CPU的全部功能。 通过利用cgroup,可以简单地分配CPU利用率配额。这提供了另一种提高CPU效率的方法,

RToax 2807

Process Governor CPU限制全攻略:亲和性设置与速率控制终极指南

Process Governor是一款功能强大的Windows进程管理工具,它允许用户对进程施加各种限制,包括CPU亲和性设置和速率控制。本文将为新手和普通用户提供一份简单易懂的CPU限制全攻略,帮助你轻松掌握进程CPU资源管理的关键技巧。 ## 为什么需要CPU限制? 在日常使用电脑时,我们经常会遇到某些程序占用过多CPU资源的情况,导致系统卡顿、响应缓慢。这时候,CPU限制就显得尤为重要。

gitblog_00442的博客 539

python如何指定使用的cpu核_python设置CPU亲缘性

由于未知的原因,一个python程序总是占用一个CPU核心,导致一个使用率满的,另一个很低,不均衡。固然可以在任务管理中设置进程相关性为所有处理器,但是每次都设置太过麻烦,查了下可以使用windows的API设置,但是要在python中设置,需要做点工作。其次,下载affinity模块安装,这里提供了访问然后就可以使用了。举例如下,在程序的开始地方加上代码1 import affinity #ne...

weixin_39958100的博客 3720

人体骨骼关键点检测

AI Challenger 其中的人体骨骼关键点检测主要依赖的技术背景为Human pose estimation。 该领域分为单人和多人两类,根据竞赛数据集来看,该任务为mult-person pose estimation。以下先介绍该竞赛的相技术背景。 -- Background 专业术语:multi-person pose estimation 多人姿态估计的两种研究方法—— ...

华仔的博客 6936

一次栈内数据释放后被引用,引起的kernel crash

/这里会变成野指针吧?sipa_hal_init 定义的struct cpumask cpu_mask;地址为not mapped。affinity_hint = 0xffffff8010baba40, //此处地址引起的死机。一次栈内数据释放后被引用,引起的kernel crash。crash 现场梳理过程。

stability 928
上一篇: What's the meaning of the saturation arithmetic
下一篇: Linux "processor affinity" explained
DigBug
博客等级 码龄20年 15粉丝 19原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值