[
https://issues.apache.org/jira/browse/MAPREDUCE-7208?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16967872#comment-16967872
]
Hudson commented on MAPREDUCE-7208:
-----------------------------------
SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #17610 (See
[https://builds.apache.org/job/Hadoop-trunk-Commit/17610/])
MAPREDUCE-7208. Tuning TaskRuntimeEstimator. (Ahmed Hussein via jeagles)
(jeagles: rev ed302f1fed6d124d682486d24dae958946dba9be)
* (edit)
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/speculate/DefaultSpeculator.java
* (add)
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/speculate/forecast/TestSimpleExponentialForecast.java
* (edit)
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/speculate/DataStatistics.java
* (edit)
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapreduce/MRJobConfig.java
* (edit)
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-jobclient/src/test/java/org/apache/hadoop/mapreduce/v2/TestSpeculativeExecutionWithMRApp.java
* (add)
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/speculate/forecast/SimpleExponentialSmoothing.java
* (edit)
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/speculate/StartEndTimesBase.java
* (add)
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-jobclient/src/test/java/org/apache/hadoop/mapreduce/v2/TestSpeculativeExecOnCluster.java
* (edit)
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/TestRuntimeEstimators.java
* (add)
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/speculate/SimpleExponentialTaskRuntimeEstimator.java
* (edit)
hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/speculate/TaskRuntimeEstimator.java
> Tuning TaskRuntimeEstimator
> ----------------------------
>
> Key: MAPREDUCE-7208
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-7208
> Project: Hadoop Map/Reduce
> Issue Type: Improvement
> Reporter: Ahmed Hussein
> Assignee: Ahmed Hussein
> Priority: Minor
> Fix For: 3.3.0
>
> Attachments: MAPREDUCE-7208-branch-2.10.001.patch,
> MAPREDUCE-7208-branch-2.10.002.patch, MAPREDUCE-7208.001.patch,
> MAPREDUCE-7208.002.patch, MAPREDUCE-7208.003.patch, MAPREDUCE-7208.004.patch,
> smoothing-exponential.md
>
>
> By default, MR uses LegacyTaskRuntimeEstimator to get an estimate of the
> runtime. The estimator does not adjust dynamically to the progress rate of
> the tasks. On the other hand, the existing alternative
> "ExponentiallySmoothedTaskRuntimeEstimator" behavior in unpredictable.
>
> There are several dimensions to improve the exponential implementation:
> # Exponential shooting needs a warmup period. Otherwise, the estimate will
> be affected by the initial values.
> # Using a single smoothing factor (Lambda) does not work well for all the
> tasks. To increase the level of smoothing across the majority of tasks, we
> need to give a range of flexibility to dynamically adjust the smoothing
> factor based on the history of the task progress.
> # Design wise, it is better to separate between the statistical model and
> the MR interface. We need to have a way to evaluate estimators statistically,
> without the need to run MR. For example, an estimator can be evaluated as a
> black box by using a stream of raw data as input and testing the accuracy of
> the generated stream of estimates.
> # The exponential estimator speculates frequently and fails to detect
> slowing tasks. It does not detect slowing tasks. As a result, a taskAttempt
> that does not do any progress won't trigger a new speculation.
>
> The file [^smoothing-exponential.md] describes how Simple Exponential
> smoothing factor works.
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]