You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Michael Mikhulya (JIRA)" <ji...@apache.org> on 2015/08/01 20:35:04 UTC
[jira] [Commented] (TAP5-2337) Reduce number of calls of
AbstractStringBuilder.expandCapacity
[ https://issues.apache.org/jira/browse/TAP5-2337?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14650496#comment-14650496 ]
Michael Mikhulya commented on TAP5-2337:
----------------------------------------
According to [^Tapestry-StringBuilder.png] StringBuilder is in the top of GCed objects.
Mentioned patches don't reduce number of GCed StringBuilder/String objects.
May be we can wait until Java8 to improve GC-related things w/o breaking API?
Or make rather minor API change during release 5.4 if it is possible.
> Reduce number of calls of AbstractStringBuilder.expandCapacity
> --------------------------------------------------------------
>
> Key: TAP5-2337
> URL: https://issues.apache.org/jira/browse/TAP5-2337
> Project: Tapestry 5
> Issue Type: Improvement
> Reporter: Michael Mikhulya
> Priority: Minor
> Labels: patch, performance
> Attachments: 0001-TAP5-2337-Reduce-number-of-calls-of-AbstractStringBu-jk.patch, 0001-TAP5-2337-Reduce-number-of-calls-of-AbstractStringBu.patch, Tapestry-StringBuilder.png
>
>
> During profiling of Tapestry framework I found that AbstractStringBuilder.expandCapacity is called very frequently.
> There is a patch that get rid of creation StringBuilder with following calls of expandCapacity (which allocate memory and copy current content into it).
> I have to thank Dmitriy Ilyin, who helped me to investigate the issue and to find the simplest solution (actually we get a little bit less code while improving performance).
> With this improvement time per request decreased on 0.5ms (1% of overall time)on our test. All measurements were done with apache benchmark after warm up phase.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)