[
https://issues.apache.org/jira/browse/BEAM-12402?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sam Whittle updated BEAM-12402:
-------------------------------
Resolution: Fixed
Status: Resolved (was: Open)
> Optimize PCollectionConsumerRegistry$MultiplexingMetricTrackingFnDataReceiver
> -----------------------------------------------------------------------------
>
> Key: BEAM-12402
> URL: https://issues.apache.org/jira/browse/BEAM-12402
> Project: Beam
> Issue Type: Bug
> Components: sdk-java-harness
> Reporter: Sam Whittle
> Assignee: Sam Whittle
> Priority: P2
> Time Spent: 1h 10m
> Remaining Estimate: 0h
>
> In Nexmark benchmark profile this was using 2% of cpu on
> AbstractMapBasedMultimap$WrappedCollection$WrappedIterator
> methods.
> I believe this is due to the list returned here being a wrapper around the
> multiset.
> https://github.com/apache/beam/blob/8463a054c1d7e2b7ee8d11e9569e065cb5e02196/sdks/java/harness/src/main/java/org/apache/beam/fn/harness/data/PCollectionConsumerRegistry.java#L172
> We iterate over this list many times for counters. It appears that we don't
> need a wrapped list as it is documented that all consumers should be
> registered first. So it seems we can just create a copy there to an
> immutable list and trivially save that cpu.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)