[ https://issues.apache.org/jira/browse/YARN-7136?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16151658#comment-16151658 ]
Daniel Templeton commented on YARN-7136: ---------------------------------------- Here's some first pass comments: bq. If two objects are equal according to the equals(Object) method, then calling the hashCode method on each of the two objects must produce the same integer result. In {Resource.compareTo()}}, should the check {{if (arrLenThis < arrLenOther)}} come at the beginning? In {{toString()}}, would it be more efficient to always append the comma and delete the last one at the end? In {{hashCode()}}, per the discussion on YARN-6788, the number 939769357 is totally arbitrary, and 263167 is probably a bit large of a prime. You'll get overflows. Same with {{BaseResource.hashCode()}}. In {{ResourceInformation}} should the constants be called URIs? Aren't they just names? In {{DominantResourceCalculator.calculateSharesForTwoMandatoryResources()}}, is it really worth adding the length to the signature? You're retrieving the value in all the other methods, so why not there as well? I still need to take a closer look. > Additional Performance Improvement for Resource Profile Feature > --------------------------------------------------------------- > > Key: YARN-7136 > URL: https://issues.apache.org/jira/browse/YARN-7136 > Project: Hadoop YARN > Issue Type: Sub-task > Components: nodemanager, resourcemanager > Reporter: Wangda Tan > Assignee: Wangda Tan > Priority: Critical > Attachments: YARN-7136.001.patch, YARN-7136.YARN-3926.001.patch, > YARN-7136.YARN-3926.002.patch, YARN-7136.YARN-3926.003.patch, > YARN-7136.YARN-3926.004.patch, YARN-7136.YARN-3926.005.patch, > YARN-7136.YARN-3926.006.patch, YARN-7136.YARN-3926.007.patch > > > This JIRA is plan to add following misc perf improvements: > 1) Use final int in Resources/ResourceCalculator to cache > #known-resource-types. (Significant improvement). > 2) Catch Java's ArrayOutOfBound Exception instead of checking array.length > every time. (Significant improvement). > 3) Avoid setUnit validation (which is a HashSet lookup) when initialize > default Memory/VCores ResourceInformation (Significant improvement). > 4) Avoid unnecessary loop array in Resource#toString/hashCode. (Some > improvement). > 5) Removed readOnlyResources in BaseResource. (Minor improvement). > 6) Removed enum: MandatoryResources, use final integer instead. (Minor > improvement). -- This message was sent by Atlassian JIRA (v6.4.14#64029) --------------------------------------------------------------------- To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org