[ http://issues.apache.org/jira/browse/HADOOP-815?page=all ]

Arun C Murthy updated HADOOP-815:
---------------------------------

    Attachment: HADOOP-815_20061230_4.patch
                jt_memory_profiles.tgz

Ok, here is a reasonably well-tested patch...

List of changes:
  a) Fixed HADOOP-740 i.e. ensure task entries are cleaned up on completion.
  b) Fixed HADOOP-787 i.e. ensure we keep only 100jobs per user; rest are 
available via jobhistroy anyway.
  c) Fixed both JobTracker & TaskTracker to ensure lost 
status-updates/heartbeatResponses due to lost rpcs are resent by both 
TaskTracker & JobTracker; and also that the JobTracker can detect that 
duplicate 'TaskTrackerStatus' updates and ignore them, which otherwise are 
fatal.
  d) Some miscellaneous fixes like using ArrayList instead of TreeSet and array 
for 'usableTaskIds' in TaskInProgress.java
  
  Results:
  Currently after running smallJobsBenchmark with 750 jobs each with 300 maps & 
2 reduces (i.e. total of ~225,000 tasks) the memory footprint of the JobTracker 
is ~1.5Gb after 'RETIRE_JOB_INTERVAL' (which I suspect also leads to 
degeneration of JT's performance as in HADOOP-843 since each of the JT's 
datastructures are extremely bloated leading to sluggishness). With this patch 
the memory-footprint is down to ~150MB after 'RETIRE_JOB_INTERVAL', yes, that's 
150Mb! :) (and seems to solve HADOOP-843 too).

  Appreciate any feedback...


> Investigate and fix the extremely large memory-footprint of JobTracker
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-815
>                 URL: http://issues.apache.org/jira/browse/HADOOP-815
>             Project: Hadoop
>          Issue Type: Bug
>          Components: mapred
>    Affects Versions: 0.9.1
>            Reporter: Arun C Murthy
>         Assigned To: Arun C Murthy
>             Fix For: 0.10.0
>
>         Attachments: 150k_1199_774.nps, 75k_jobs.nps, 
> HADOOP-815_20061220_1.patch, HADOOP-815_20061221_2.patch, 
> HADOOP-815_20061222_3.patch, HADOOP-815_20061230_4.patch, 
> jt_memory_profiles.tgz
>
>
> The JobTracker's memory footprint seems excessively large, especially when 
> many jobs are submitted.
> Here is the 'top' output of a JobTracker which has scheduled ~1k jobs thus 
> far:
>   PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND          
>                                                                               
>              
> 31877 arunc     19   0 2362m 261m  13m S 14.0 12.9  24:48.08 java  
> Clearly VIRTual memory of 2364Mb v/s 261Mb of RESident memory is symptomatic 
> of this issue...

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to