Ubuntu下测试RT-Linux的性能

来源:互联网 发布:linux清屏命令快捷键 编辑:程序博客网 时间:2024/06/06 03:43

上次在Ubuntu上编译了3.12.6的rt_kernel,安装内核后无法进入系统(原因暂未查找),重新下载3.4.72的内核编译后正常进入系统

wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.4.72.tar.gz
wget https://www.kernel.org/pub/linux/kernel/projects/rt/3.4/patch-3.4.72-rt89.patch.bz2

好,下面要检验下rt-linux究竟有何不同,这里要使用工具cyclictest,下载:

git clone https://git.kernel.org/pub/scm/linux/kernel/git/clrkwllms/rt-tests.git

然后编译

cd rt-tests && make
报错   fatal error: numa.h: No such file or directory compilation terminated.

安装libnuma-dev:

sudo apt-get install libnuma-dev

重新编译后得出cyclictest文件,执行命令如下:

stewart@stewart:#cyclictest -t1 -n -l 10000
# /dev/cpu_dma_latency set to 0us
policy: other/other: loadavg: 0.66 0.32 0.12 2/335 2291

T: 0 ( 2278) P: 0 I:1000 C:  10000 Min:      8 Act:  55 Avg:  75 Max:   2738

然后重新进入普通内核的系统,同样执行如上命令:

stewart@stewart:#cyclictest -t1 -n -l 10000
# /dev/cpu_dma_latency set to 0us
policy: other/other: loadavg: 0.61 0.33 0.15 1/358 2689

T: 0 ( 2688) P: 0 I:1000 C: 10000 Min: 8 Act:68 Avg:85 Max: 14271

这里输入的参数如下:

-t:设置线程的数字

-n:使用clock_nanosleep

-l:循环次数,默认0

这里的输出含义如下:

T:0 序号为0的线程

P:0 线程优先级为0

C:9397 计数器。线程的时间间隔每达到一次,计数器加1

I:1000 时间间隔为1000微秒(us)

Min: 最小时延(us)

Act: 最近一次的时延(us)

Avg:平均时延(us)

Max: 最大时延(us)

 

由此可见rt内核的linux在时延上小于普通的内核,在实时性应用领域很有意义。



1 0
原创粉丝点击