-
1.
使用
vtune
分析
tasktracker,jobtracker,datanode
1.1在
conf/hadoop-env.sh
中添加如下修改,这样在
vtune
的结果中能看到
jit
信息。
export AMPLXE_EXPERIMENTAL=1
1.2在
bin/hadoop
中,将如下语句进行替换。
exec "$JAVA" $JAVA_HEAP_MAX $HADOOP_OPTS -classpath "$CLASSPATH" $CLASS "$@"
替换如下,以分析
tasktracker
为例,分析其他进程,作相应的修改即可。
if [ "$COMMAND" = "tasktracker" ] ; then
exec "/home/chengtao/soft/intel/vtune_amplifier_xe_2011/bin64/amplxe-cl" -collect hotspots -r /home/chengtao/test_tasktracker "$JAVA" $JAVA_HEAP_MAX $HADOOP_OPTS -classpath "$CLASSPATH" $CLASS "$@"
else
exec "$JAVA" $JAVA_HEAP_MAX $HADOOP_OPTS -classpath "$CLASSPATH" $CLASS "$@"
fi
这样修改的作用在于,让
vtune
启动相应的线程,能够收集数据。
1.3在
bin/hadoop-daemon.sh
中,将下面语句进行替换
echo $! > $pid
替换内容如下
if [ "$command" = "tasktracker" ];then
sleep 3
ps aux | grep -v "vtune" | grep "TaskTracker" | awk '{if(NR==1)print $2}' > $pid
else
echo $! > $pid
fi
这样修改的作用在于,将实际起来的
tasktracker id
写到
$pid
中,否则写入的是
vtune
的进程的
id
,在运行
bin/stop-all.sh
的时候,
tasktracker
的进程是
stop
不掉的。
Sleep 3
是为了等
tasktracker
确实已经起来了。
-
2.
使用
vtune
分析任务线程TaskRunner
这里需要修改
hadoop
的代码,使得
taskrunner
启动的时候,是试用
vtune
起来的。代码的具体修改是在
mapred/org/apache/hadoop/mapred/TaskRunner.java
这个文件中。在vargs.add(jvm.toString());
之前添加。
vargs.add("/home/hadoop/vtune/vtune_amplifier_xe_2011/bin64/amplxe-cl");
vargs.add("-collect");
vargs.add("hotspots");
vargs.add("-r");
vargs.add("/home/hadoop/" + taskid.toString());
这样就可以分析实际跑任务的线程了。会在
/home/hadoop
目录下出现较多的
taskid
目录,每个目录下对应着
taskid
这个线程的分析结果
通过上面的修改,可以使用
vtune
对
hadoop
进行不同层面的分析,对
hadop
的优化或许提供很好的思路。
分享到:
相关推荐
【VTune分析工具使用介绍】 VTune™ Performance Analyzer是一款由Intel公司推出的强大的性能分析工具,专为优化软件性能而设计。它能深入分析程序的性能瓶颈,帮助开发者找到算法、数据布局、应用架构以及系统层面...
**VTune 分析工具详解** VTune Amplifier,通常简称为VTune,是Intel公司推出的一款强大的性能分析工具。它专为优化高性能计算、数据中心应用和嵌入式系统的性能而设计,广泛应用于软件开发人员、系统管理员以及...
Intel的一款性能分析软件。帮助你找出性能方面问题 内容,包括Introduction,Terminology Sampling Call Graph Counter Monitor VTune on Linux
Intel VTune Profiler 使用指导 Intel VTune Profiler 是一种功能强大的性能优化和调试工具,由 Intel 公司开发,旨在帮助开发者优化和调试基于 Intel 架构的应用程序。以下是 Intel VTune Profiler 的使用指导,...
### Intel VTune性能分析工具使用说明 #### 一、引言 Intel VTune是一款由英特尔公司开发的强大性能分析工具,广泛应用于软件优化和性能调试领域。它能够帮助开发者深入理解应用程序的行为,识别性能瓶颈,从而指导...
最后,"能够使用VTune分析.ppt"可能是一份演示文稿,它可能以更直观的方式展示了VTune的使用过程,可能包括一些实际操作的截图和步骤说明。这类演示可能深入到更具体的分析技术,如并发性分析,用于查找多线程或多...
单独运行VTune Amplifier XE 时,只需指定可执行文件并选择分析类型即可开始分析,其结果与在Visual Studio中整合使用时相同。 总之,Intel VTune Amplifier XE 是一款功能强大且实用的性能分析工具,无论是初学者...
英特尔® VTune™ 性能分析器基于Intel cpu的程序性能分析工具,通过图形用户界面简化应用调试流程,无需重新编译。用于分析 C、C++、Fortran、C#、Java、.NET 等多种语言开发程序.
### 常熟理工使用VTune进行代码优化和性能调节题库知识点解析 #### 题目背景 常熟理工学院作为一所注重实践教学的高校,在计算机科学领域中,非常重视学生的实际操作能力和问题解决能力的培养。在课程设计与实践...
【VTune的使用心得】 VTune是一款由Intel公司开发的强大性能分析工具,它主要用于帮助开发者深入洞察应用程序的性能瓶颈,优化代码效率。在本文中,我们将深入探讨VTune的使用经验,分享如何有效地利用该工具来提升...
**Intel Vtune:强大的性能分析工具** Intel Vtune 是一款由Intel公司开发的高性能计算和数据中心应用的性能分析工具。它专为优化软件性能而设计,通过深入洞察应用程序的运行情况,帮助开发者识别并解决性能瓶颈,...
【Linux之性能分析工具Intel(R) VTune】 Intel VTune Amplifier XE 是一款由英特尔开发的高级性能分析工具,特别适用于搭载Intel CPU的Linux和Windows系统。它可以帮助开发者深入理解程序性能,找出代码中的瓶颈,...
7. **代码优化建议**:VTune会根据分析结果提供优化建议,包括代码重构、算法替换、使用更高效的数据结构等。 使用VTune进行性能优化的步骤通常包括: 1. **安装与配置**:首先需要在目标平台上安装VTune,并根据...
总的来说,Intel Vtune是一款强大的性能分析工具,通过其丰富的分析功能,开发者可以有效地提高软件的运行效率,优化资源使用,从而在硬件成本不变的情况下实现更高的计算性能。而Vtune lisence文件则是使用该工具的...
- **VTune on Linux**:这部分专门针对Linux环境,详细说明了在Linux系统上如何配置和使用VTune进行性能分析。 通过这些技术,开发者可以深入理解程序的运行模式,发现性能问题的根源,从而进行针对性的优化。总的...
VTune™ 性能分析器是一款强大的工具,用于优化各种编程语言如C、C++、Fortran、C#、Java和.NET应用的性能,而无需重新编译代码。这款工具独立于编译器和语言,使得它具备广泛的适用性。VTune不仅仅提供调用图分析,...
Bottlenecks in algorithms Bottlencks due to data layout Application architecture bottlenecks System-Level and hardware bottlenecks
英特尔助力Linux平台运转Vtune性能分析器.pdf
Vtune是一款强大的性能分析工具,由Intel公司开发,专为优化各种编程语言如C、C++、Fortran、C#、Java、.NET等应用的性能而设计。它提供了直观的图形用户界面,允许开发者在不修改源代码的情况下进行性能优化。VTune...
虽然`.lic`文件明确指出它是为Visual Fortran Composer XE 2013提供的,但它同样适用于VTune Amplifier,意味着用户可以在使用Intel的Fortran编译器开发的程序上运行VTune分析,以获得全面的性能评估和优化指导。...