最近给hadoop集群升级了RHEL6,发现性能比之前的差了不少。发现淘宝内核组发现并解决了这个问题

原文链接:http://blog.donghao.org/2013/03/20/hadoop%E9%9B%86%E7%BE%A4%E4%B8%8A%E6%8D%89%E5%88%B0kernel-bug%E4%B8%80%E4%B8%AA/

于是在测试机器上面跑了一下对比,收货很大:

环境介绍:

测试机型:IBM X3630 M3 48G 12X2TSAS

集群:master 1台,salve3台

测试方式:官方terasort

测试数据:100G  (10亿条,每条100字节)

Map个数:736

Reduce个数:30

测试结果:

  1. 1.   Job用时对比:

 

1

2

3

4

5

6

7

平均用时

自带内核用时

7m30s

8m10s

8m7s

8m15s

8m6s

8m3s

8m16s

8m8s

打patch后用时

6m40s

6m45s

6m44s

6m45s

6m49s

6m53s

7m1s

6m48s

七次平均用时对比(去掉最大最小取平均),打patch后用时少了16%。

  1. 2.    BenchMark数据对比

BenchMark

自带内核

patch

对比

ReduceShufferTime

2804003

1950012

下降30%

ReduceSortTime

122149

113363

下降7%

MapNextKeyTime

3503416

3629686

上升4%

ReduceNextKeyTime

56035

57081

上升2%

ReduceUserTime

2319175

1881118

下降19%

MapUserTime

6621552

5504168

下降17%

CPU time spent (ms)

20498470

16503790

下降19%

Total committed heap usage (byte)

595103383552

594591481856

持平

Physical memorg (bytes)

363650875392

353246367744

持平

Virtual memory (bytes)

1561136439296

1560911613952

持平

  1. 3.      系统状况

没有使用ganglia等工具,大体数据如下:

 

cpu峰值

load峰值

内存使用

自带内核用时

92%

40

8%

打patch后用时

90%

32

10%

  1. 4.      结论

从测试数据看,无论是直观的job用时,还是benchmark数据,打patch后性能均有明显的提升。

BenchMark的耗时在shuffle阶段提升最明显,shuffle阶段也正是IO最密集的时候,跟原文对IO的改进基本吻合。

RHEL6 kernel bug在hadoop上的测试的更多相关文章

  1. 线上centos6出现软死锁 kernel:BUG: soft lockup

    线上centos6出现软死锁 kernel:BUG: soft lockup 今天线上一台centos6机器用xshell一直连接不上,然后在xshell上显示 Message from syslog ...

  2. 让python在hadoop上跑起来

    duang~好久没有更新博客啦,原因很简单,实习啦-好吧,我过来这边上班表示觉得自己简直弱爆了.第一周,配置环境:第二周,将数据可视化,包括学习了excel2013的一些高大上的技能,例如数据透视表和 ...

  3. 在Hadoop上运行基于RMM中文分词算法的MapReduce程序

    原文:http://xiaoxia.org/2011/12/18/map-reduce-program-of-rmm-word-count-on-hadoop/ 在Hadoop上运行基于RMM中文分词 ...

  4. I.MX6 Kernel BUG at include/linux/netdevice.h:520!

    /*************************************************************************** * I.MX6 Kernel BUG at i ...

  5. 在Hadoop上用Python实现WordCount

    一.简单说明 本例中我们用Python写一个简单的运行在Hadoop上的MapReduce程序,即WordCount(读取文本文件并统计单词的词频).这里我们将要输入的单词文本input.txt和Py ...

  6. 【技术博客】Postman接口测试教程 - 环境、附加验证、文件上传测试

    Postman接口测试教程 - 环境.附加验证.文件上传测试 v1.0 作者:ZBW 前言 继利用Postman和Jmeter进行接口性能测试之后,我们发现Postman作为一款入门容易的工具,其内置 ...

  7. [转帖]上云测试,这些关键点你get 到没有

    上云测试,这些关键点你get 到没有 https://www.cnblogs.com/mypm/p/10852656.html?tdsourcetag=s_pcqq_aiomsg sticky 还有s ...

  8. 分布式文件系统 - FastDFS 配置 Nginx 模块及上传测试

    也不说废话,直接干 上一篇 分布式文件系统 - FastDFS 在 CentOS 下配置安装部署 中安装了 FastDFS 后,并配置启动了 Tracker 和 Storage 服务,已经可以上传文件 ...

  9. 微软官方网站线上兼容测试平台-Browser screenshots

    前端开发时最不想做的就是在不同浏览器.平台和分辨率测试网页显示效果,通常这会浮现许多问题,尤其浏览器版本就可能让显示成效完全不同,也只好尽力维持让每一种设备都能正常浏览网页.修改到完全没有问题必须投入 ...

随机推荐

  1. [DS+Algo] 004 栈、队列及其代码实现

    1. Stack FILO (FirstInLastOut) 的链表结构 在程序编译环境上使用较多 常用操作 push pop peek is_empty size Python 代码示例 class ...

  2. Java 14 可能带来什么新特性?

    JDK/Java 13 在一个月前已经发布,该版本带来了 5 大新特性,笔者观察到其中的 Text Blocks(文本块)特性似乎被讨论最多. 文本块特性与常见的 Python "" ...

  3. 通过修改host解决VS2019下载极慢的问题

    原文:通过修改host解决VS2019下载极慢的问题 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn ...

  4. htpwdScan — 一个简单的HTTP暴力破解、撞库攻击脚本

    李姐姐之前跟我们分享了子域名枚举工具subDomainBrute<subDomainsBrute — 改进渗透测试时暴力枚举子域名的python脚本>,这回带给我们htpwdScan ht ...

  5. 【React 8/100】 React路由

    React路由 React路由介绍 现代的前端应用大多数是SPA(单页应用程序),也就是只有一个HTML页面的应用程序.因为它的用户体验更好.对服务器压力更小,所以更受欢迎.为了有效的使用单个页面来管 ...

  6. Vue中如何引入第三方icon库(阿里巴巴矢量图标库)

    1.进入阿里巴巴矢量图标库: 2.新建项目 3.前缀注意不要跟element-ui自带的icon(el-icon)重名就ok 4.创建完成后,去阿里选自己要使用的图标,加入购物车           ...

  7. 关于cron4j的使用

    cron4j的主要实体是调度程序.使用it.sauronsoftware.cron4j.scheduler实例,您可以在一年中的固定时间执行任务.调度程序可以每分钟执行一次任务,每五分钟执行一次,星期 ...

  8. vue,一路走来(17)--vue使用scss,并且全局引入公共scss样式

    最近朋友问如何在vue项目中使用scss样式,想起之前项目是直接在main.js直接import css文件的,然而main.js不可以直接import scss文件. import './asset ...

  9. Codeforces Round #427 (Div. 2) - C

    题目链接:http://codeforces.com/contest/835/problem/C 题意:在二维坐标里,有n个星星,m个询问,星星的最大亮度c.然后输入n个星星的坐标和初始亮度,对于每个 ...

  10. 【转】内核中的内存申请:kmalloc、vmalloc、kzalloc、kcalloc、get_free_pages

    转自:https://www.cnblogs.com/yfz0/p/5829443.html 在内核模块中申请分配内存需要使用内核中的专用API:kmalloc.vmalloc.kzalloc.kca ...