资料介绍
软件简介
Php-affinity 通过设置cpu亲和性,可以将进程绑定到一个cpu核心上。一般在如下场景我们可能会希望修改进程的cpu亲和性:
-
频繁的并行运算
-
线程可伸缩性测试(通过增加cpu核心数量模拟线性扩展)
-
运行时间敏感的,决定性的进程
向nginx,swoole等开源软件,都提供了设置cpu亲和性的方法。nginx官方建议worker数量等同于cpu核心数量也是为了将一个进程绑定到一个cpu核心上,同时避免进程切换带来的开销。
Php本身并没有提供设置cpu亲和性的函数,我们可以通过两种方式实现:
-
调用系统命令,修改当前进程cpu亲和性
-
编写php扩展,封装系统调用。
php-affinity是使用c编写的php扩展,项目地址:https://github.com/huyanping/php-affinity
/** * set CPU affinity * * @param $cpu_id * @return bool */ functionsetaffinity($cpu_id){ $num= getcpucores(); if($cpu_id>= $num){ returnfalse; } $set= system_call($cpu_id); if($set=== -1){ returnfalse; } returntrue; } /** * get CPU affinity * * @return bool */ functiongetaffinity(){ $cpu_id= system_call(); if($cpu_id=== -1){ returnfalse; } return$cpu_id; } /** * get number of CPU * * @return bool */ functiongetcpucores(){ $nums= system_call(); if($nums=== -1){ returnfalse; } return$nums; }
提供了如下三个函数:
-
setaffinity – 设置cpu亲和性
-
getaffinity – 获取cpu亲和性
-
getcpucores – 获取cpu核心数量
API 如下:
参考文献:
- PHP-XLSWriter PHP Excel C扩展
- PHP Taint检测XSS漏洞的扩展
- PHP教程:foreach使用引用注意的问题
- PHP学习教程分享 7次下载
- 如何使用PHP-X快速开发一个PHP扩展 8次下载
- 学习PHP需要注意那几点 8次下载
- PHP教程之PHP与MySQL数据库连接的资料说明 8次下载
- smarty如何调用PHP常量 3次下载
- 如何使用PHP-X快速开发一个PHP扩展 9次下载
- PHP基础知识的详细资料总结 7次下载
- PHP多个版本的比较资料说明 0次下载
- PHP从入门到精通(免费) 9次下载
- php程序实例下载
- PHP/MySQL教程 0次下载
- PHP完全自学手册
- phpy:PHP与Python互调用库 1.9k次阅读
- PHP中的生成器 1.5k次阅读
- php版冒泡排序是如何实现的? 1.7k次阅读
- 如何在Ubuntu 20.04安装PHP 8.1并将其与Nginx集成 4.5k次阅读
- php是什么语言编写的 5.5k次阅读
- 一文知道PHP的优点和缺点 7.6k次阅读
- 为什么PHP的开发效率比java高但是java比PHP流行 1.1w次阅读
- PHP与Python对比 如何选择? 4.7k次阅读
- php开发中遇到的难点有哪些_十大php开发常见问题盘点 1.9w次阅读
- php开发环境的搭建和使用 3.9k次阅读
- PHP 集成开发环境比较 2.4k次阅读
- 实现php毫秒定时器方法详解 2.8k次阅读
- php实现定时器任务方法详解 1.6k次阅读
- PHP定时器实现每隔几秒运行一次方法详解 1.7w次阅读
- PHP实现定时任务的几种方法详解 7.3k次阅读
下载排行
本周
- 1矽力杰 Silergy SY7215A 同步升压调节器 规格书 Datasheet 佰祥电子
- 1.12 MB | 5次下载 | 免费
- 2HT81696H 内置升压的30W立体声D类音频功放数据手册
- 1.21 MB | 1次下载 | 免费
- 3HTA6863 3W超低噪声超低功耗单声道D类音频功率放大器数据手册
- 0.87 MB | 次下载 | 免费
- 4南芯 Southchip SC8802C 充电控制器 规格书 Datasheet 佰祥电子
- 88.16 KB | 次下载 | 免费
- 5矽力杰 Silergy SY7065 同步升压转换器 规格书 Datasheet 佰祥电子
- 910.67 KB | 次下载 | 免费
- 6矽力杰 Silergy SY7066 同步升压转换器 规格书 Datasheet 佰祥电子
- 989.14 KB | 次下载 | 免费
- 7WD6208A产品规格书
- 631.24 KB | 次下载 | 免费
- 8NB685 26 V,12 A,低静态电流,大电流 同步降压变换器数据手册
- 1.64 MB | 次下载 | 2 积分
本月
- 1EMC PCB设计总结
- 0.33 MB | 12次下载 | 免费
- 2PD取电芯片 ECP5702规格书
- 0.88 MB | 5次下载 | 免费
- 3矽力杰 Silergy SY7215A 同步升压调节器 规格书 Datasheet 佰祥电子
- 1.12 MB | 5次下载 | 免费
- 4氮化镓GaN FET/GaN HEMT 功率驱动电路选型表
- 0.10 MB | 3次下载 | 免费
- 5PD取电芯片,可取5/9/12/15/20V电压ECP5702数据手册
- 0.88 MB | 3次下载 | 免费
- 6SY50655 用于高输入电压应用的伪固定频率SSR反激式稳压器英文资料
- 1.01 MB | 3次下载 | 免费
- 7怎么为半导体测试仪选择精密放大器
- 0.65 MB | 2次下载 | 免费
- 8SY52341 次级侧同步整流英文手册
- 0.94 MB | 2次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935137次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420064次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233095次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191469次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183360次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81606次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73832次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65991次下载 | 10 积分
电子发烧友App





创作
发文章
发帖
提问
发资料
发视频
上传资料赚积分
评论