VCPU负载压测

由于云主机项目提供的是整套虚拟化服务,上层服务并没有直接用到物理节点上的CPU,而是通过创建云主机的时候,指定规格来申请vcpu资源来使用,虚拟化出vcpu,需要得到硬件的支持,通常来说就是Intel VT和AMD-V,在此基础上一个云主机实际上是通过一个QEMU用户进程而在节点机上运行的,而vcpu实际上就是以QEMU进程的线程而存在

来看云主机vcpu和节点cpu之间的关系

~$[......]

Read more

BurnlnTest

最近又了解了一下BurnlnTest,主要用来对虚拟机进行加压,可以进行压测CPU,内存,IO等,我主要是测试了Linux主机,版本稍微有点老

下载链接:

wget http://www.passmark.com/ftp/burnintest_2.1.tar.gz

下载完解压后,先看下目录下各个玩意,README和帮助文档就不管了,这里有个shell脚本

#!/bin/bash

#Chec[......]

Read more

VCPU的调度信息

一直没有弄明白宿主机CPU和虚拟机VCPU的对应关系是如何调度,或者说如何辨别,刚刚突然发现virsh可以直接查到这项信息

首先在一个安装有devstack的物理机上操作,当然假如有分布式openstack的节点机环境操作也行

# virsh
Welcome to virsh, the virtualization interactive terminal.

Type:  'help' for[......]

Read more

Debian系列通过top查看进程绑定的CPU_ID

debian系列与rhel系列有些地方差别还是挺大的,rhel里直接top,f,j,回车,即可看到所有进程所在的cpu id,ubuntu里找了找,也是可以做到的

 

当然如果不想用top来看,通过ps命令也是可以找的

lihui@2015-vm1:~$ pgrep mysql
2209


lihui@2015-vm1:~$ ps -eo pid,psr | grep 2209
  2[......]

Read more

不同CPU指令集添加编译选项

今天在处理程序在不同CPU架构,不同的指令集上编译的运行问题,其实没跨平台,算不上交叉编译,但需要将gcc按照不同cpu指令集在编译过程中提供给gcc选项,基本内容可以从gcc的man page里查找,下面是man里根据SSE4.2为标准的部分内容

core2
       Intel Core 2 CPU with 64-bit extensions, MMX, SSE, SSE2, SSE3 a[......]

Read more

神秘的虚拟CPU以及性能考虑

VMware上一块物理网卡能虚拟出几块一样的虚拟网卡,那一个物理CPU是否能虚拟出多个呢,如果可以的话,岂不是能够单CPU模拟多处理并行

由于公司系统的运行环境对于多核的CPU Affinity绑定要求十分高,这样问题来了,假如安装在虚拟机里,分配了两个不同的CPU,如何能保证不会跨CPU呢,感觉想不通,试试再说

通过VMware ESXi来进行测试,宿主服务器2个物理CPU,12核

首先虚拟机属[……]

Read more

查询网卡连接的CPU

为了个破性能,调试了一下午,莫名其妙性能低得可怜,cpu affinity,memory,swap都在关注的范围内

为此,细心地看了下网卡卡槽位置,因为不同的体系结构,不同的CPU由于位置差异,表现出来的工作能力是有区别的,Sandy Bridge架构(26XX)非对称,咱们的系统主要进程在CPU1上才能更好的发挥性能优势,为此必须首先查看服务器是否安装正确,其次可以通过下面命令查看你所关心的网卡[……]

Read more

linux环境通过TOP查看进程所在CPU

多核程序,需要查看进程绑定的CPU Affinity是否正确无误,否则性能可能大受影响,通常想知道进程所在cpu可通过下面命令查询:

pgrep 进程名得到进程pid: process_id

ps –eo pid,psr | grep process_id 就可以得到绑定的cpu id

假如多进程进程名都一致,那么一个一个查询显得不那么直观,也可以直接通过top显示出cpu affinity情况

[……]

Read more

性能提升之CPU

这篇文章来自同事加哥们阿福同学以前写在csdn博客里的,因为我经常需要搜索,这里就直接copy过来了,由于他就坐我旁边,肯定不会涉及到侵权问题,来瓶雪花就打发了,不过他csdn已经没维护了,有兴趣的可以前往他个人主页:http://www.hiyoufu.com/

我们知道现在服务器都是多核, 最新的intel Sandybridge是NUMA IO结构, 以网卡为例, 也就是说PCI插槽并[……]

Read more

Perl Cpu Affinity

在多核体系结构上,cpu affinity的合理运用对并行程序运行性能的影响举足轻重,为了避免资源竞争,会将不同的进程或者线程绑在不同的核上执行,充分发挥多核并行的性能优势

在linux操作系统里,可以通过shell里taskset命令直接对程序运行或者正在运行的进程的pid进行绑核,只需要lscpu或者/proc/cpuinfo得到cpu核的NUMA结构以及编号,进行合理的设置cpu af[……]

Read more