You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Erik Krogen (JIRA)" <ji...@apache.org> on 2016/11/01 21:10:58 UTC
[jira] [Created] (HADOOP-13782) Make MutableRates metrics
thread-local write, aggregate-on-read
Erik Krogen created HADOOP-13782:
------------------------------------
Summary: Make MutableRates metrics thread-local write, aggregate-on-read
Key: HADOOP-13782
URL: https://issues.apache.org/jira/browse/HADOOP-13782
Project: Hadoop Common
Issue Type: Improvement
Components: metrics
Reporter: Erik Krogen
Assignee: Erik Krogen
Currently the {{MutableRates}} metrics class serializes all writes to metrics it contains because of its use of {{MetricsRegistry.add()}} (i.e., even two increments of unrelated metrics contained within the same {{MutableRates}} object will serialize w.r.t. each other). This class is used by {{RpcDetailedMetrics}}, which may have many hundreds of threads contending to modify these metrics. Instead we should allow updates to unrelated metrics objects to happen concurrently. To do so we can let each thread locally collect metrics, and on a {{snapshot}}, aggregate the metrics from all of the threads.
I have collected some benchmark performance numbers in HADOOP-13747 (https://issues.apache.org/jira/secure/attachment/12835043/benchmark_results) which indicate that this can bring significantly higher performance in high contention situations.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: common-dev-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-dev-help@hadoop.apache.org