Return-Path: X-Original-To: apmail-hadoop-common-user-archive@www.apache.org Delivered-To: apmail-hadoop-common-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 454609233 for ; Wed, 7 Mar 2012 20:47:38 +0000 (UTC) Received: (qmail 131 invoked by uid 500); 7 Mar 2012 20:47:34 -0000 Delivered-To: apmail-hadoop-common-user-archive@hadoop.apache.org Received: (qmail 99956 invoked by uid 500); 7 Mar 2012 20:47:33 -0000 Mailing-List: contact common-user-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: common-user@hadoop.apache.org Delivered-To: mailing list common-user@hadoop.apache.org Received: (qmail 99947 invoked by uid 99); 7 Mar 2012 20:47:33 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 07 Mar 2012 20:47:33 +0000 X-ASF-Spam-Status: No, hits=2.2 required=5.0 tests=HTML_MESSAGE,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of jieli@cs.duke.edu designates 152.3.140.1 as permitted sender) Received: from [152.3.140.1] (HELO duke.cs.duke.edu) (152.3.140.1) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 07 Mar 2012 20:47:27 +0000 Received: from mail-iy0-f176.google.com (mail-iy0-f176.google.com [209.85.210.176]) (authenticated bits=0) by duke.cs.duke.edu (8.14.5/8.14.5) with ESMTP id q27Kl6Eg010362 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=FAIL) for ; Wed, 7 Mar 2012 15:47:06 -0500 (EST) X-DKIM: Sendmail DKIM Filter v2.8.3 duke.cs.duke.edu q27Kl6Eg010362 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=cs.duke.edu; s=mail; t=1331153226; bh=qm29ncFY1KyHPx2c70I+Cex3ZvJHivTt8wgMbU2qd6A=; h=MIME-Version:In-Reply-To:References:Date:Message-ID:Subject:From: To:Content-Type; b=2p85UBZun1YS9/Bq8tcgUoE3fYflu8v/VLTYVkCQ3anI4TYCfK75r02emQi+k3z6q DRMpw2NpkGI/L+4JC3N/Uz/pYYeoyCwIORRWpnzWLa4vYWUPJEv29c1AG1V5J9HCRN 7+JyjM4eV9AhyW7Wh5IvDAgA190pyxiliTFFvKh1/2vLgALapxPqNMbZH2vb6TQCvG 8L8bFLXtE2KaXLhPDqXjq0HAYfAKUrsVjrB/TAV2Lxt93HiQff1v/V/r7Asq/atVBg KY2VUjrel8ivZdNk2QgipDs2N1yu6y0NkYNY45tgv+iqFbK6XxOHHRuI99YD719HUq 0Ai57/osGDt6A== Received: by iagw33 with SMTP id w33so12101439iag.35 for ; Wed, 07 Mar 2012 12:47:06 -0800 (PST) MIME-Version: 1.0 Received: by 10.50.219.170 with SMTP id pp10mr2854722igc.49.1331153226018; Wed, 07 Mar 2012 12:47:06 -0800 (PST) Received: by 10.42.224.202 with HTTP; Wed, 7 Mar 2012 12:47:05 -0800 (PST) In-Reply-To: References: Date: Wed, 7 Mar 2012 15:47:05 -0500 Message-ID: Subject: Re: Profiling Hadoop Job From: Jie Li To: common-user@hadoop.apache.org Content-Type: multipart/alternative; boundary=14dae93403cf2daf2a04baad43da X-Virus-Checked: Checked by ClamAV on apache.org --14dae93403cf2daf2a04baad43da Content-Type: text/plain; charset=ISO-8859-1 Hi Leo, Thanks for pointing out the outdated README file. Glad to tell you that we do support the old API in the latest version. See here: http://www.cs.duke.edu/starfish/previous.html Welcome to join our mailing list and your questions will reach more of our group members. Jie On Wed, Mar 7, 2012 at 3:37 PM, Leonardo Urbina wrote: > Hi Jie, > > According to the Starfish README, the hadoop programs must be written using > the new Hadoop API. This is not my case (I am using MultipleInputs among > other non-new API supported features). Is there any way around this? > Thanks, > > -Leo > > On Wed, Mar 7, 2012 at 3:19 PM, Jie Li wrote: > > > Hi Leonardo, > > > > You might want to try Starfish which supports the memory profiling as > well > > as cpu/disk/network profiling for the performance tuning. > > > > Jie > > ------------------ > > Starfish is an intelligent performance tuning tool for Hadoop. > > Homepage: www.cs.duke.edu/starfish/ > > Mailing list: http://groups.google.com/group/hadoop-starfish > > > > > > On Wed, Mar 7, 2012 at 2:36 PM, Leonardo Urbina wrote: > > > > > Hello everyone, > > > > > > I have a Hadoop job that I run on several GBs of data that I am trying > to > > > optimize in order to reduce the memory consumption as well as improve > the > > > speed. I am following the steps outlined in Tom White's "Hadoop: The > > > Definitive Guide" for profiling using HPROF (p161), by setting the > > > following properties in the JobConf: > > > > > > job.setProfileEnabled(true); > > > > > > job.setProfileParams("-agentlib:hprof=cpu=samples,heap=sites,depth=6," > + > > > "force=n,thread=y,verbose=n,file=%s"); > > > job.setProfileTaskRange(true, "0-2"); > > > job.setProfileTaskRange(false, "0-2"); > > > > > > I am trying to run this locally on a single pseudo-distributed install > of > > > hadoop (0.20.2) and it gives the following error: > > > > > > Exception in thread "main" java.io.FileNotFoundException: > > > attempt_201203071311_0004_m_000000_0.profile (Permission denied) > > > at java.io.FileOutputStream.open(Native Method) > > > at java.io.FileOutputStream.(FileOutputStream.java:194) > > > at java.io.FileOutputStream.(FileOutputStream.java:84) > > > at > > > org.apache.hadoop.mapred.JobClient.downloadProfile(JobClient.java:1226) > > > at > > > > > > org.apache.hadoop.mapred.JobClient.monitorAndPrintJob(JobClient.java:1302) > > > at > org.apache.hadoop.mapred.JobClient.runJob(JobClient.java:1251) > > > at > > > > > > > > > com.BitSight.hadoopAggregator.AggregatorDriver.run(AggregatorDriver.java:89) > > > at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65) > > > at > > > > > > > > > com.BitSight.hadoopAggregator.AggregatorDriver.main(AggregatorDriver.java:94) > > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > > at > > > > > > > > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > > > at > > > > > > > > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > > > at java.lang.reflect.Method.invoke(Method.java:597) > > > at org.apache.hadoop.util.RunJar.main(RunJar.java:156) > > > > > > However, I can access these logs directly from the tasktracker's logs > > > (through the web UI). For the sakes of running this locally, I could > > just > > > ignore this error, however I want to be able to profile the job once > > > deployed to our hadoop cluster and need to be able to automatically > > > retrieve these logs. Do I need to change the permissions in HDFS to > allow > > > for this? Any ideas on how to fix this? Thanks in advance, > > > > > > Best, > > > -Leo > > > > > > -- > > > Leo Urbina > > > Massachusetts Institute of Technology > > > Department of Electrical Engineering and Computer Science > > > Department of Mathematics > > > lurbina@mit.edu > > > > > > > > > -- > Leo Urbina > Massachusetts Institute of Technology > Department of Electrical Engineering and Computer Science > Department of Mathematics > lurbina@mit.edu > --14dae93403cf2daf2a04baad43da--