2017年7月

操作系统下spinlock锁解析、模拟及损耗分析

  1. 关于spinlock

    我们在知道什么是spinlock之前,还需要知道为什么需要这个spinlock?
    spinlock本质就是锁,提到锁,我们就回到了多线程编程的混沌初期,为了实现多线程编程,操作系统引入了锁。通过锁能够保证在多核多线程情况下,对临界区资源进行保护,从而保证操作数据的一致性。

- 阅读剩余部分 -

网络性能测试工具qperf使用

  1. 前言

    网络在性能方面的角色越来越重要,特别在现在云计算环境中,系统越来越分布化。任何一个网络性能问题,都有可能导致业务响应迟缓。
    我们在知道网卡、交换机型号,以及物理距离后,理论上是可以知道带宽和延迟的。但是实际环境中由于使用不同的网卡驱动,交换机跳数,网络配置导致会有不同的性能表现。那么就需要进行测试验证,我们通常使用的网络性能测试工具有netperf/iperf,这次介绍的是qperf工具,相对netperf和iperf来说是个新工具, 而且合入到了红帽系统中

- 阅读剩余部分 -

Intel RDT特性详解

  1. RDT前言

    英特尔至强 E5-2600 v4在对外宣传时候号称“为云而生”的,除了其强大的性能和众多核心外,主要亮点就是Resource Director Technology(RDT)新技术的加入。使得其有理由宣称“为云而生”。
    我们知道在一个虚拟化环境中,宿主机的资源(包括CPU cache和内存带宽)都是共享的。但是如果有一个消耗cache的应用快速消耗了L3缓存,或者一个应用消耗了系统大量内存带宽,那么如何保证其他虚拟机应用呢?如何限制这些“可恶”的邻居呢?
    针对上诉问题,以前都是通过控制虚拟机逻辑资源来实现,但是调整的粒度实在太粗,针对处理器缓存这样敏感而稀缺的资源,几乎是无能为力的。为此英特尔推出了RDT技术,希望可以解决这个问题。
    那么看下RDT到底是什么神奇技术。

- 阅读剩余部分 -

phoronix-test-suite性能测试套件使用

1.phoronix Test Suite介绍

phoronix Test Suite是综合的测试和benchmark平台,可以在Linux, Solaris, OS X, 和 BSD操作系统上进行benchmark测试。
默认自带60多个测试套件和200多个独立的测试profile。每个profile都可以在phoronix-test-suite中单独进行测试。测试套件则由一组测试profile组成。一个profile由Bash/shell脚本和xml文件组成。
此外提供了测试对比([http://www.openbenchmarking.org/][1]),不过这个需要能够连上外网。
phoronix-test-suite官网链接如下:[http://www.phoronix-test-suite.com/][2] 

- 阅读剩余部分 -