让你的PHP7更快之Hugepage用法分析
本文整理自网络,侵删。
本文实例讲述了让你的PHP7更快之Hugepage用法。分享给大家供大家参考,具体如下:
PHP7刚刚发布了RC4, 包含一些bug修复和一个我们最新的性能提升成果(NEWS), 那就是”HugePageFy PHP TEXT segment”, 通过启用这个特性,PHP7会把自身的TEXT段(执行体)”挪“到Huagepage上,之前的测试,我们能稳定的在Wordpress上看到2%~3%的QPS提升。
关于Hugepage是啥,简单的说下就是默认的内存是以4KB分页的,而虚拟地址和内存地址是需要转换的, 而这个转换是要查表的,CPU为了加速这个查表过程都会内建TLB(Translation Lookaside Buffer), 显而易见如果虚拟页越小,表里的条目数也就越多,而TLB大小是有限的,条目数越多TLB的Cache Miss也就会越高, 所以如果我们能启用大内存页就能间接降低这个TLB Cache Miss,至于详细的介绍,Google一搜一大堆我就不赘述了,这里主要说明下如何启用这个新特性, 从而带来明显的性能提升。
新的Kernel启用Hugepage已经变得非常容易了,以我的开发虚拟机为例(Ubuntu Server 14.04,Kernel 3.13.0-45), 如果我们查看内存信息:
$ cat /proc/meminfo | grep HugeAnonHugePages: 444416 kBHugePages_Total: 0HugePages_Free: 0HugePages_Rsvd: 0HugePages_Surp: 0Hugepagesize: 2048 kB
可见一个Hugepage的size是2MB, 而当前并没有启用HugePages. 现在让我们先编译PHP RC4, 记得一定不要加: –disable-huge-code-pages (这个新特性是默认启用的, 你加了这个就关了)
阅读剩余部分
相关阅读 >>
ECSHOP实现的支付宝手机网页支付功能免费版示例
云网在线支付漏洞初探(图)
ECSHOP显示某商品销售累计效果的实现代码
javascript弹出窗口中增加确定取消按钮
mysql 数据库设计复习笔记及项目实战
在ECSHOP的商品列表调用评论数量的方法
把无限级分类生成数组
让你的php7更快之hugepage用法分析
c#权限管理和设计浅谈
smarty中post用法实例
更多相关阅读请进入《ECSHOP》频道 >>
猜你喜欢
联络方式:
400-123-789
邮箱:xiachao@163.com
Q Q:12345678