You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flex.apache.org by goratz <go...@gmail.com> on 2015/02/05 16:00:44 UTC

TLF performance issue

Hi all,

first of all sorry for my English. 

I have a very strange performance diference between 2 versions of
TextLayout.swc. The first one is the swc included in Apache Flex 4.14 SDK
and the second one is included in Apache Flex 4.9.1.

I have a very large text more or less 200 DIN-A4 pages in a Textflow. I
scroll to the end of the document and I underline a word and this is my
result underling a word in both versions.

*4.9.1* 21 ms (miliseconds). 0,02 Seconds


*4.14* 3.405 ms (miliseconds). 3,4 Seconds

The time difference happens in this line of code:
EditManager.applyLeafFormat(oFormat);

Anyone has any idea what's the problem?







--
View this message in context: http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue-tp44966.html
Sent from the Apache Flex Development mailing list archive at Nabble.com.

Re: TLF performance issue

Posted by piotrz <pi...@gmail.com>.
Hi Jude,

I see bunch of performance unit tests in our repo for TLF but I still don't
have free cycles to fix them. 

Piotr 



-----
Apache Flex PMC
piotrzarzycki21@gmail.com
--
View this message in context: http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue-tp44966p45020.html
Sent from the Apache Flex Development mailing list archive at Nabble.com.

Re: TLF performance issue

Posted by jude <fl...@gmail.com>.
I saw this recently too but didn't see it until recently either. I'm
guessing something slipped through along the way.

Is it possible to add performance tests to must tella? For example, it took
test X 100ms but now it's taking 1000ms. Maybe we can throw a warning?

On Thursday, February 5, 2015, goratz <go...@gmail.com> wrote:

> Thanks Harbs, the same happens on version 4.13 so the problem isn't the
> tables ;)
>
>
>
> --
> View this message in context:
> http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue-tp44966p44988.html
> Sent from the Apache Flex Development mailing list archive at Nabble.com.
>

Re: TLF performance issue

Posted by goratz <go...@gmail.com>.
Thanks Harbs, the same happens on version 4.13 so the problem isn't the
tables ;)



--
View this message in context: http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue-tp44966p44988.html
Sent from the Apache Flex Development mailing list archive at Nabble.com.

Re: TLF performance issue

Posted by Harbs <ha...@gmail.com>.
It’s also possible that the table work introduced performance issues.

On Feb 5, 2015, at 6:12 PM, Alex Harui <ah...@adobe.com> wrote:

> That sounds like the workaround we put in for discretionary hyphens.
> 
> Try setting ContainerController.tlf_internal::usesDiscretionaryHyphens =
> false;
> 
> -Alex
> 
> On 2/5/15, 7:00 AM, "goratz" <go...@gmail.com> wrote:
> 
>> Hi all,
>> 
>> first of all sorry for my English.
>> 
>> I have a very strange performance diference between 2 versions of
>> TextLayout.swc. The first one is the swc included in Apache Flex 4.14 SDK
>> and the second one is included in Apache Flex 4.9.1.
>> 
>> I have a very large text more or less 200 DIN-A4 pages in a Textflow. I
>> scroll to the end of the document and I underline a word and this is my
>> result underling a word in both versions.
>> 
>> *4.9.1* 21 ms (miliseconds). 0,02 Seconds
>> 
>> 
>> *4.14* 3.405 ms (miliseconds). 3,4 Seconds
>> 
>> The time difference happens in this line of code:
>> EditManager.applyLeafFormat(oFormat);
>> 
>> Anyone has any idea what's the problem?
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> --
>> View this message in context:
>> http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue
>> -tp44966.html
>> Sent from the Apache Flex Development mailing list archive at Nabble.com.
> 


Re: TLF performance issue

Posted by goratz <go...@gmail.com>.
Hi Alex I try what you said but the performance is the same. Any other idea?



--
View this message in context: http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue-tp44966p45017.html
Sent from the Apache Flex Development mailing list archive at Nabble.com.

Re: TLF performance issue

Posted by Alessandro Palombaro <al...@gmail.com>.
I've also experienced an issue with TLF and as I was trying to resolve my
issue I noticed in the ParagraphElement class the createTextBlock method is
now being call within the replaceChildren method and am wondering if this
extra call is a catalyst for the performance issues you are having....

On Mon, Feb 9, 2015 at 4:59 PM, goratz <go...@gmail.com> wrote:

> Hi Alex,
>
> I used a profiler to see the difference between the two versions and this
> is
> what i see.
>
> In the 4.14 version it spends a lot of time in this methods while in the
> 4.9.1 version don't.
>
>
> flash.text.engine::TextBlock/DoCreateTextLine(),flash.text.engine::TextBlock/recreateTextLine(),Function/
> http://adobe.com/AS3/2006/builtin::apply(),GlobalSWFContext/callInContext()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:2974],flashx.textLayout.compose::BaseCompose/createTextLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:1375],flashx.textLayout.compose::ComposeState/createTextLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:454],flashx.textLayout.compose::ComposeState/composeNextLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:396],flashx.textLayout.compose::BaseCompose/composeParagraphElementIntoLines()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:1169],flashx.textLayout.compose::BaseCompose/composeParagraphElement()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:1025],flashx.textLayout.compose::ComposeState/composeParagraphElement()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:331],flashx.textLayout.compose::BaseCompose/composeBlockElement()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:439],flashx.textLayout.compose::BaseCompose/composeInternal()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:1004],flashx.textLayout.compose::ComposeState/composeInternal()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:150],flashx.textLayout.compose::BaseCompose/composeTextFlow()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:785],flashx.textLayout.compose::ComposeState/composeTextFlow()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:113],flashx.textLayout.compose::StandardFlowComposer/http://ns.adobe.com/textLayout/internal/2008::callTheComposer()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:681],flashx.textLayout.compose::StandardFlowComposer/internalCompose()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:765],flashx.textLayout.compose::StandardFlowComposer/updateToController()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:561],flashx.textLayout.compose::StandardFlowComposer/updateAllControllers()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:522],flashx.textLayout.edit::EditManager/updateAllControllers()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:863],flashx.textLayout.edit::EditManager/handleUpdate()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:911],flashx.textLayout.edit::EditManager/finalizeDo()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:708],flashx.textLayout.edit::EditManager/doOperation()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:657],flashx.textLayout.edit::EditManager/applyFormat()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:1667],flashx.textLayout.edit::EditManager/applyLeafFormat()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:1698],IKB_Edit/applyFormat()[P
> :\PRJ_bUniverse\IKB_Flash\bUniverse\src\IKB_LIB\LIB_Osagai;;IKB_Edit.as:5795],IKB_Edit/azpimarratu()[P:\PRJ_bUniverse\IKB_Flash\bUniverse\src\IKB_LIB\LIB_Osagai;;IKB_Edit.as:3914],UNI_Irakurgailua/azpimarratu()[P:\PRJ_bUniverse\IKB_Flash\bUniverse\src\UNI_APP\UNI_AS;;UNI_Irakurgailua.as:3110],Function/
> http://adobe.com/AS3/2006/builtin::apply(),IKB_FPak/funtzioaExekutatu_Event()[P
> :\PRJ_bUniverse\IKB_Flash\bUniverse\src\IKB_LIB\LIB_ORO;;IKB_FPak.as:90],[mouseEvent]()
>
> flashx.textLayout.elements::FlowGroupElement/getChildAt(),flashx.textLayout.elements::ParagraphElement/getTables()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/elements;ParagraphElement.as:327],flashx.textLayout.elements::ParagraphElement/
> http://ns.adobe.com/textLayout/internal/2008::getTextBlockStart()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/elements;ParagraphElement.as:302],flashx.textLayout.elements::ParagraphElement/http://ns.adobe.com/textLayout/internal/2008::getTextBlockAbsoluteStart()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/elements;ParagraphElement.as:290],flashx.textLayout.edit::SelectionManager$/computeSelectionIndexInLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1725],flashx.textLayout.edit::SelectionManager$/http://ns.adobe.com/textLayout/internal/2008::computeSelectionIndex()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1911],flashx.textLayout.edit::SelectionManager/selectionPoint()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:937],flashx.textLayout.edit::SelectionManager/http://ns.adobe.com/textLayout/internal/2008::setNewSelectionPoint()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1927],flashx.textLayout.edit::SelectionManager/http://ns.adobe.com/textLayout/internal/2008::handleMouseEventForSelection()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:2059],flashx.textLayout.edit::SelectionManager/mouseMoveHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:2049],flashx.textLayout.container::ContainerController/mouseMoveHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2374],flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::rootMouseMoveHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2381],[mouseEvent]()
> [verify](),flashx.textLayout.compose::TextFlowLine/
> http://ns.adobe.com/textLayout/internal/2008::hilitePointSelection()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;TextFlowLine.as:2206],flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::addSelectionShapes()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2982],flashx.textLayout.edit::SelectionManager/addSelectionShapes()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1223],flashx.textLayout.edit::SelectionManager/refreshSelection()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1255],flashx.textLayout.edit::SelectionManager/http://ns.adobe.com/textLayout/internal/2008::setSelectionFormatState()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:896],flashx.textLayout.edit::SelectionManager/focusInHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:2260],flashx.textLayout.container::ContainerController/focusInHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2494],flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::requiredFocusInHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2512],[focusEvent](),flash.display::Stage/set
> focus(),flashx.textLayout.container::ContainerController/
> http://ns.adobe.com/textLayout/internal/2008::setFocus()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2413],flashx.textLayout.container::ContainerController/mouseDownHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2215],flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::requiredMouseDownHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2236],[mouseEvent]()
>
>
>
>
>
> --
> View this message in context:
> http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue-tp44966p45075.html
> Sent from the Apache Flex Development mailing list archive at Nabble.com.
>

Re: TLF performance issue

Posted by goratz <go...@gmail.com>.
I will test with all Apache Flex versions and I will put here the version
where the problem starts.



--
View this message in context: http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue-tp44966p45080.html
Sent from the Apache Flex Development mailing list archive at Nabble.com.

Re: TLF performance issue

Posted by Harbs <ha...@gmail.com>.
What about the 4.13 version?

I think we need to determine wether the issue appeared before 4.13 or after 4.13. The were lots of changes to TLF after 4.13 and very few before.

On Feb 9, 2015, at 10:59 AM, goratz <go...@gmail.com> wrote:

> Hi Alex,
> 
> I used a profiler to see the difference between the two versions and this is
> what i see.
> 
> In the 4.14 version it spends a lot of time in this methods while in the
> 4.9.1 version don't.
> 
> flash.text.engine::TextBlock/DoCreateTextLine(),flash.text.engine::TextBlock/recreateTextLine(),Function/http://adobe.com/AS3/2006/builtin::apply(),GlobalSWFContext/callInContext()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:2974],flashx.textLayout.compose::BaseCompose/createTextLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:1375],flashx.textLayout.compose::ComposeState/createTextLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:454],flashx.textLayout.compose::ComposeState/composeNextLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:396],flashx.textLayout.compose::BaseCompose/composeParagraphElementIntoLines()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:1169],flashx.textLayout.compose::BaseCompose/composeParagraphElement()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:1025],flashx.textLayout.compose::ComposeState/composeParagraphElement()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:331],flashx.textLayout.compose::BaseCompose/composeBlockElement()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:439],flashx.textLayout.compose::BaseCompose/composeInternal()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:1004],flashx.textLayout.compose::ComposeState/composeInternal()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:150],flashx.textLayout.compose::BaseCompose/composeTextFlow()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:785],flashx.textLayout.compose::ComposeState/composeTextFlow()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:113],flashx.textLayout.compose::StandardFlowComposer/http://ns.adobe.com/textLayout/internal/2008::callTheComposer()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:681],flashx.textLayout.compose::StandardFlowComposer/internalCompose()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:765],flashx.textLayout.compose::StandardFlowComposer/updateToController()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:561],flashx.textLayout.compose::StandardFlowComposer/updateAllControllers()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:522],flashx.textLayout.edit::EditManager/updateAllControllers()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:863],flashx.textLayout.edit::EditManager/handleUpdate()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:911],flashx.textLayout.edit::EditManager/finalizeDo()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:708],flashx.textLayout.edit::EditManager/doOperation()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:657],flashx.textLayout.edit::EditManager/applyFormat()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:1667],flashx.textLayout.edit::EditManager/applyLeafFormat()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:1698],IKB_Edit/applyFormat()[P:\PRJ_bUniverse\IKB_Flash\bUniverse\src\IKB_LIB\LIB_Osagai;;IKB_Edit.as:5795],IKB_Edit/azpimarratu()[P:\PRJ_bUniverse\IKB_Flash\bUniverse\src\IKB_LIB\LIB_Osagai;;IKB_Edit.as:3914],UNI_Irakurgailua/azpimarratu()[P:\PRJ_bUniverse\IKB_Flash\bUniverse\src\UNI_APP\UNI_AS;;UNI_Irakurgailua.as:3110],Function/http://adobe.com/AS3/2006/builtin::apply(),IKB_FPak/funtzioaExekutatu_Event()[P:\PRJ_bUniverse\IKB_Flash\bUniverse\src\IKB_LIB\LIB_ORO;;IKB_FPak.as:90],[mouseEvent]()
> flashx.textLayout.elements::FlowGroupElement/getChildAt(),flashx.textLayout.elements::ParagraphElement/getTables()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/elements;ParagraphElement.as:327],flashx.textLayout.elements::ParagraphElement/http://ns.adobe.com/textLayout/internal/2008::getTextBlockStart()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/elements;ParagraphElement.as:302],flashx.textLayout.elements::ParagraphElement/http://ns.adobe.com/textLayout/internal/2008::getTextBlockAbsoluteStart()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/elements;ParagraphElement.as:290],flashx.textLayout.edit::SelectionManager$/computeSelectionIndexInLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1725],flashx.textLayout.edit::SelectionManager$/http://ns.adobe.com/textLayout/internal/2008::computeSelectionIndex()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1911],flashx.textLayout.edit::SelectionManager/selectionPoint()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:937],flashx.textLayout.edit::SelectionManager/http://ns.adobe.com/textLayout/internal/2008::setNewSelectionPoint()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1927],flashx.textLayout.edit::SelectionManager/http://ns.adobe.com/textLayout/internal/2008::handleMouseEventForSelection()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:2059],flashx.textLayout.edit::SelectionManager/mouseMoveHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:2049],flashx.textLayout.container::ContainerController/mouseMoveHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2374],flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::rootMouseMoveHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2381],[mouseEvent]()
> [verify](),flashx.textLayout.compose::TextFlowLine/http://ns.adobe.com/textLayout/internal/2008::hilitePointSelection()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;TextFlowLine.as:2206],flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::addSelectionShapes()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2982],flashx.textLayout.edit::SelectionManager/addSelectionShapes()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1223],flashx.textLayout.edit::SelectionManager/refreshSelection()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1255],flashx.textLayout.edit::SelectionManager/http://ns.adobe.com/textLayout/internal/2008::setSelectionFormatState()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:896],flashx.textLayout.edit::SelectionManager/focusInHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:2260],flashx.textLayout.container::ContainerController/focusInHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2494],flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::requiredFocusInHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2512],[focusEvent](),flash.display::Stage/set
> focus(),flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::setFocus()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2413],flashx.textLayout.container::ContainerController/mouseDownHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2215],flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::requiredMouseDownHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2236],[mouseEvent]()
> 
> 
> 
> 
> 
> --
> View this message in context: http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue-tp44966p45075.html
> Sent from the Apache Flex Development mailing list archive at Nabble.com.


Re: TLF performance issue

Posted by goratz <go...@gmail.com>.
Hi Alex, 

As you said I posted the problem in a JIRA bug and I uploaded a File to test
the problem.

I hope this helps you to investigate.

Thank you for all your help.

Here is the JIRA Bug: https://issues.apache.org/jira/browse/FLEX-34769



--
View this message in context: http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue-tp44966p45287.html
Sent from the Apache Flex Development mailing list archive at Nabble.com.

Re: TLF performance issue

Posted by Alex Harui <ah...@adobe.com>.

On 2/10/15, 12:05 AM, "goratz" <go...@gmail.com> wrote:

>Here you have a Scout screenshot.
>
><http://apache-flex-development.2333347.n4.nabble.com/file/n45109/TLF_vers
>ion_problem.png> 
>
Hi Goratz,

Call Counts is the thing I miss most when using Scout.  If you have a test
case you can file in a JIRA bug, maybe that’s the best way for us to
investigate.

Thanks,
-Alex


Re: TLF performance issue

Posted by goratz <go...@gmail.com>.
Here you have a Scout screenshot.

<http://apache-flex-development.2333347.n4.nabble.com/file/n45109/TLF_version_problem.png> 



--
View this message in context: http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue-tp44966p45109.html
Sent from the Apache Flex Development mailing list archive at Nabble.com.

Re: TLF performance issue

Posted by Alex Harui <ah...@adobe.com>.
Hi,

Can you post a link to a screenshot of the profiler?  I want to see call
counts and the other columns.

Thanks,
-Alex

On 2/9/15, 12:59 AM, "goratz" <go...@gmail.com> wrote:

>Hi Alex,
>
>I used a profiler to see the difference between the two versions and this
>is
>what i see.
>
>In the 4.14 version it spends a lot of time in this methods while in the
>4.9.1 version don't.
>
>flash.text.engine::TextBlock/DoCreateTextLine(),flash.text.engine::TextBlo
>ck/recreateTextLine(),Function/http://adobe.com/AS3/2006/builtin::apply(),
>GlobalSWFContext/callInContext()[/Users/erik/Documents/ApacheFlex/git/flex
>-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:2974],flashx.
>textLayout.compose::BaseCompose/createTextLine()[/Users/erik/Documents/Apa
>cheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.
>as:1375],flashx.textLayout.compose::ComposeState/createTextLine()[/Users/e
>rik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/com
>pose;ComposeState.as:454],flashx.textLayout.compose::ComposeState/composeN
>extLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;fla
>shx/textLayout/compose;ComposeState.as:396],flashx.textLayout.compose::Bas
>eCompose/composeParagraphElementIntoLines()[/Users/erik/Documents/ApacheFl
>ex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:11
>69],flashx.textLayout.compose::BaseCompose/composeParagraphElement()[/User
>s/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/
>compose;BaseCompose.as:1025],flashx.textLayout.compose::ComposeState/compo
>seParagraphElement()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLay
>out/src;flashx/textLayout/compose;ComposeState.as:331],flashx.textLayout.c
>ompose::BaseCompose/composeBlockElement()[/Users/erik/Documents/ApacheFlex
>/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:439]
>,flashx.textLayout.compose::BaseCompose/composeInternal()[/Users/erik/Docu
>ments/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;Bas
>eCompose.as:1004],flashx.textLayout.compose::ComposeState/composeInternal(
>)[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/text
>Layout/compose;ComposeState.as:150],flashx.textLayout.compose::BaseCompose
>/composeTextFlow()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayou
>t/src;flashx/textLayout/compose;BaseCompose.as:785],flashx.textLayout.comp
>ose::ComposeState/composeTextFlow()[/Users/erik/Documents/ApacheFlex/git/f
>lex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:113],flas
>hx.textLayout.compose::StandardFlowComposer/http://ns.adobe.com/textLayout
>/internal/2008::callTheComposer()[/Users/erik/Documents/ApacheFlex/git/fle
>x-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:681
>],flashx.textLayout.compose::StandardFlowComposer/internalCompose()[/Users
>/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/c
>ompose;StandardFlowComposer.as:765],flashx.textLayout.compose::StandardFlo
>wComposer/updateToController()[/Users/erik/Documents/ApacheFlex/git/flex-t
>lf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:561],f
>lashx.textLayout.compose::StandardFlowComposer/updateAllControllers()[/Use
>rs/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout
>/compose;StandardFlowComposer.as:522],flashx.textLayout.edit::EditManager/
>updateAllControllers()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textL
>ayout/src;flashx/textLayout/edit;EditManager.as:863],flashx.textLayout.edi
>t::EditManager/handleUpdate()[/Users/erik/Documents/ApacheFlex/git/flex-tl
>f/textLayout/src;flashx/textLayout/edit;EditManager.as:911],flashx.textLay
>out.edit::EditManager/finalizeDo()[/Users/erik/Documents/ApacheFlex/git/fl
>ex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:708],flashx.te
>xtLayout.edit::EditManager/doOperation()[/Users/erik/Documents/ApacheFlex/
>git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:657],fla
>shx.textLayout.edit::EditManager/applyFormat()[/Users/erik/Documents/Apach
>eFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:16
>67],flashx.textLayout.edit::EditManager/applyLeafFormat()[/Users/erik/Docu
>ments/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditMa
>nager.as:1698],IKB_Edit/applyFormat()[P:\PRJ_bUniverse\IKB_Flash\bUniverse
>\src\IKB_LIB\LIB_Osagai;;IKB_Edit.as:5795],IKB_Edit/azpimarratu()[P:\PRJ_b
>Universe\IKB_Flash\bUniverse\src\IKB_LIB\LIB_Osagai;;IKB_Edit.as:3914],UNI
>_Irakurgailua/azpimarratu()[P:\PRJ_bUniverse\IKB_Flash\bUniverse\src\UNI_A
>PP\UNI_AS;;UNI_Irakurgailua.as:3110],Function/http://adobe.com/AS3/2006/bu
>iltin::apply(),IKB_FPak/funtzioaExekutatu_Event()[P:\PRJ_bUniverse\IKB_Fla
>sh\bUniverse\src\IKB_LIB\LIB_ORO;;IKB_FPak.as:90],[mouseEvent]()
>flashx.textLayout.elements::FlowGroupElement/getChildAt(),flashx.textLayou
>t.elements::ParagraphElement/getTables()[/Users/erik/Documents/ApacheFlex/
>git/flex-tlf/textLayout/src;flashx/textLayout/elements;ParagraphElement.as
>:327],flashx.textLayout.elements::ParagraphElement/http://ns.adobe.com/tex
>tLayout/internal/2008::getTextBlockStart()[/Users/erik/Documents/ApacheFle
>x/git/flex-tlf/textLayout/src;flashx/textLayout/elements;ParagraphElement.
>as:302],flashx.textLayout.elements::ParagraphElement/http://ns.adobe.com/t
>extLayout/internal/2008::getTextBlockAbsoluteStart()[/Users/erik/Documents
>/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/elements;Paragra
>phElement.as:290],flashx.textLayout.edit::SelectionManager$/computeSelecti
>onIndexInLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/s
>rc;flashx/textLayout/edit;SelectionManager.as:1725],flashx.textLayout.edit
>::SelectionManager$/http://ns.adobe.com/textLayout/internal/2008::computeS
>electionIndex()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/s
>rc;flashx/textLayout/edit;SelectionManager.as:1911],flashx.textLayout.edit
>::SelectionManager/selectionPoint()[/Users/erik/Documents/ApacheFlex/git/f
>lex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:937],fla
>shx.textLayout.edit::SelectionManager/http://ns.adobe.com/textLayout/inter
>nal/2008::setNewSelectionPoint()[/Users/erik/Documents/ApacheFlex/git/flex
>-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1927],flash
>x.textLayout.edit::SelectionManager/http://ns.adobe.com/textLayout/interna
>l/2008::handleMouseEventForSelection()[/Users/erik/Documents/ApacheFlex/gi
>t/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:2059]
>,flashx.textLayout.edit::SelectionManager/mouseMoveHandler()[/Users/erik/D
>ocuments/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;Sel
>ectionManager.as:2049],flashx.textLayout.container::ContainerController/mo
>useMoveHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/
>src;flashx/textLayout/container;ContainerController.as:2374],flashx.textLa
>yout.container::ContainerController/http://ns.adobe.com/textLayout/interna
>l/2008::rootMouseMoveHandler()[/Users/erik/Documents/ApacheFlex/git/flex-t
>lf/textLayout/src;flashx/textLayout/container;ContainerController.as:2381]
>,[mouseEvent]()
>[verify](),flashx.textLayout.compose::TextFlowLine/http://ns.adobe.com/tex
>tLayout/internal/2008::hilitePointSelection()[/Users/erik/Documents/Apache
>Flex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;TextFlowLine.as
>:2206],flashx.textLayout.container::ContainerController/http://ns.adobe.co
>m/textLayout/internal/2008::addSelectionShapes()[/Users/erik/Documents/Apa
>cheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerC
>ontroller.as:2982],flashx.textLayout.edit::SelectionManager/addSelectionSh
>apes()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx
>/textLayout/edit;SelectionManager.as:1223],flashx.textLayout.edit::Selecti
>onManager/refreshSelection()[/Users/erik/Documents/ApacheFlex/git/flex-tlf
>/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1255],flashx.te
>xtLayout.edit::SelectionManager/http://ns.adobe.com/textLayout/internal/20
>08::setSelectionFormatState()[/Users/erik/Documents/ApacheFlex/git/flex-tl
>f/textLayout/src;flashx/textLayout/edit;SelectionManager.as:896],flashx.te
>xtLayout.edit::SelectionManager/focusInHandler()[/Users/erik/Documents/Apa
>cheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManage
>r.as:2260],flashx.textLayout.container::ContainerController/focusInHandler
>()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/tex
>tLayout/container;ContainerController.as:2494],flashx.textLayout.container
>::ContainerController/http://ns.adobe.com/textLayout/internal/2008::requir
>edFocusInHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayou
>t/src;flashx/textLayout/container;ContainerController.as:2512],[focusEvent
>](),flash.display::Stage/set
>focus(),flashx.textLayout.container::ContainerController/http://ns.adobe.c
>om/textLayout/internal/2008::setFocus()[/Users/erik/Documents/ApacheFlex/g
>it/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController
>.as:2413],flashx.textLayout.container::ContainerController/mouseDownHandle
>r()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/te
>xtLayout/container;ContainerController.as:2215],flashx.textLayout.containe
>r::ContainerController/http://ns.adobe.com/textLayout/internal/2008::requi
>redMouseDownHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLa
>yout/src;flashx/textLayout/container;ContainerController.as:2236],[mouseEv
>ent]()
>
>
>
>
>
>--
>View this message in context:
>http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue
>-tp44966p45075.html
>Sent from the Apache Flex Development mailing list archive at Nabble.com.


Re: TLF performance issue

Posted by Harbs <ha...@gmail.com>.
If the problem is in TextBlock.createTextLine(), it kind of sounds like a Player issue rather than a TLF issue — unless createTextLine() is being called too often.

On Feb 9, 2015, at 10:59 AM, goratz <go...@gmail.com> wrote:

> Hi Alex,
> 
> I used a profiler to see the difference between the two versions and this is
> what i see.
> 
> In the 4.14 version it spends a lot of time in this methods while in the
> 4.9.1 version don't.
> 
> flash.text.engine::TextBlock/DoCreateTextLine(),flash.text.engine::TextBlock/recreateTextLine(),Function/http://adobe.com/AS3/2006/builtin::apply(),GlobalSWFContext/callInContext()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:2974],flashx.textLayout.compose::BaseCompose/createTextLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:1375],flashx.textLayout.compose::ComposeState/createTextLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:454],flashx.textLayout.compose::ComposeState/composeNextLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:396],flashx.textLayout.compose::BaseCompose/composeParagraphElementIntoLines()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:1169],flashx.textLayout.compose::BaseCompose/composeParagraphElement()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:1025],flashx.textLayout.compose::ComposeState/composeParagraphElement()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:331],flashx.textLayout.compose::BaseCompose/composeBlockElement()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:439],flashx.textLayout.compose::BaseCompose/composeInternal()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:1004],flashx.textLayout.compose::ComposeState/composeInternal()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:150],flashx.textLayout.compose::BaseCompose/composeTextFlow()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:785],flashx.textLayout.compose::ComposeState/composeTextFlow()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:113],flashx.textLayout.compose::StandardFlowComposer/http://ns.adobe.com/textLayout/internal/2008::callTheComposer()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:681],flashx.textLayout.compose::StandardFlowComposer/internalCompose()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:765],flashx.textLayout.compose::StandardFlowComposer/updateToController()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:561],flashx.textLayout.compose::StandardFlowComposer/updateAllControllers()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:522],flashx.textLayout.edit::EditManager/updateAllControllers()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:863],flashx.textLayout.edit::EditManager/handleUpdate()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:911],flashx.textLayout.edit::EditManager/finalizeDo()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:708],flashx.textLayout.edit::EditManager/doOperation()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:657],flashx.textLayout.edit::EditManager/applyFormat()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:1667],flashx.textLayout.edit::EditManager/applyLeafFormat()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:1698],IKB_Edit/applyFormat()[P:\PRJ_bUniverse\IKB_Flash\bUniverse\src\IKB_LIB\LIB_Osagai;;IKB_Edit.as:5795],IKB_Edit/azpimarratu()[P:\PRJ_bUniverse\IKB_Flash\bUniverse\src\IKB_LIB\LIB_Osagai;;IKB_Edit.as:3914],UNI_Irakurgailua/azpimarratu()[P:\PRJ_bUniverse\IKB_Flash\bUniverse\src\UNI_APP\UNI_AS;;UNI_Irakurgailua.as:3110],Function/http://adobe.com/AS3/2006/builtin::apply(),IKB_FPak/funtzioaExekutatu_Event()[P:\PRJ_bUniverse\IKB_Flash\bUniverse\src\IKB_LIB\LIB_ORO;;IKB_FPak.as:90],[mouseEvent]()
> flashx.textLayout.elements::FlowGroupElement/getChildAt(),flashx.textLayout.elements::ParagraphElement/getTables()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/elements;ParagraphElement.as:327],flashx.textLayout.elements::ParagraphElement/http://ns.adobe.com/textLayout/internal/2008::getTextBlockStart()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/elements;ParagraphElement.as:302],flashx.textLayout.elements::ParagraphElement/http://ns.adobe.com/textLayout/internal/2008::getTextBlockAbsoluteStart()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/elements;ParagraphElement.as:290],flashx.textLayout.edit::SelectionManager$/computeSelectionIndexInLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1725],flashx.textLayout.edit::SelectionManager$/http://ns.adobe.com/textLayout/internal/2008::computeSelectionIndex()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1911],flashx.textLayout.edit::SelectionManager/selectionPoint()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:937],flashx.textLayout.edit::SelectionManager/http://ns.adobe.com/textLayout/internal/2008::setNewSelectionPoint()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1927],flashx.textLayout.edit::SelectionManager/http://ns.adobe.com/textLayout/internal/2008::handleMouseEventForSelection()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:2059],flashx.textLayout.edit::SelectionManager/mouseMoveHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:2049],flashx.textLayout.container::ContainerController/mouseMoveHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2374],flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::rootMouseMoveHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2381],[mouseEvent]()
> [verify](),flashx.textLayout.compose::TextFlowLine/http://ns.adobe.com/textLayout/internal/2008::hilitePointSelection()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;TextFlowLine.as:2206],flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::addSelectionShapes()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2982],flashx.textLayout.edit::SelectionManager/addSelectionShapes()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1223],flashx.textLayout.edit::SelectionManager/refreshSelection()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1255],flashx.textLayout.edit::SelectionManager/http://ns.adobe.com/textLayout/internal/2008::setSelectionFormatState()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:896],flashx.textLayout.edit::SelectionManager/focusInHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:2260],flashx.textLayout.container::ContainerController/focusInHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2494],flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::requiredFocusInHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2512],[focusEvent](),flash.display::Stage/set
> focus(),flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::setFocus()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2413],flashx.textLayout.container::ContainerController/mouseDownHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2215],flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::requiredMouseDownHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2236],[mouseEvent]()
> 
> 
> 
> 
> 
> --
> View this message in context: http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue-tp44966p45075.html
> Sent from the Apache Flex Development mailing list archive at Nabble.com.


Re: TLF performance issue

Posted by goratz <go...@gmail.com>.
Hi Alex,

I used a profiler to see the difference between the two versions and this is
what i see.

In the 4.14 version it spends a lot of time in this methods while in the
4.9.1 version don't.

flash.text.engine::TextBlock/DoCreateTextLine(),flash.text.engine::TextBlock/recreateTextLine(),Function/http://adobe.com/AS3/2006/builtin::apply(),GlobalSWFContext/callInContext()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:2974],flashx.textLayout.compose::BaseCompose/createTextLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:1375],flashx.textLayout.compose::ComposeState/createTextLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:454],flashx.textLayout.compose::ComposeState/composeNextLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:396],flashx.textLayout.compose::BaseCompose/composeParagraphElementIntoLines()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:1169],flashx.textLayout.compose::BaseCompose/composeParagraphElement()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:1025],flashx.textLayout.compose::ComposeState/composeParagraphElement()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:331],flashx.textLayout.compose::BaseCompose/composeBlockElement()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:439],flashx.textLayout.compose::BaseCompose/composeInternal()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:1004],flashx.textLayout.compose::ComposeState/composeInternal()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:150],flashx.textLayout.compose::BaseCompose/composeTextFlow()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;BaseCompose.as:785],flashx.textLayout.compose::ComposeState/composeTextFlow()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;ComposeState.as:113],flashx.textLayout.compose::StandardFlowComposer/http://ns.adobe.com/textLayout/internal/2008::callTheComposer()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:681],flashx.textLayout.compose::StandardFlowComposer/internalCompose()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:765],flashx.textLayout.compose::StandardFlowComposer/updateToController()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:561],flashx.textLayout.compose::StandardFlowComposer/updateAllControllers()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;StandardFlowComposer.as:522],flashx.textLayout.edit::EditManager/updateAllControllers()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:863],flashx.textLayout.edit::EditManager/handleUpdate()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:911],flashx.textLayout.edit::EditManager/finalizeDo()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:708],flashx.textLayout.edit::EditManager/doOperation()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:657],flashx.textLayout.edit::EditManager/applyFormat()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:1667],flashx.textLayout.edit::EditManager/applyLeafFormat()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;EditManager.as:1698],IKB_Edit/applyFormat()[P:\PRJ_bUniverse\IKB_Flash\bUniverse\src\IKB_LIB\LIB_Osagai;;IKB_Edit.as:5795],IKB_Edit/azpimarratu()[P:\PRJ_bUniverse\IKB_Flash\bUniverse\src\IKB_LIB\LIB_Osagai;;IKB_Edit.as:3914],UNI_Irakurgailua/azpimarratu()[P:\PRJ_bUniverse\IKB_Flash\bUniverse\src\UNI_APP\UNI_AS;;UNI_Irakurgailua.as:3110],Function/http://adobe.com/AS3/2006/builtin::apply(),IKB_FPak/funtzioaExekutatu_Event()[P:\PRJ_bUniverse\IKB_Flash\bUniverse\src\IKB_LIB\LIB_ORO;;IKB_FPak.as:90],[mouseEvent]()
flashx.textLayout.elements::FlowGroupElement/getChildAt(),flashx.textLayout.elements::ParagraphElement/getTables()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/elements;ParagraphElement.as:327],flashx.textLayout.elements::ParagraphElement/http://ns.adobe.com/textLayout/internal/2008::getTextBlockStart()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/elements;ParagraphElement.as:302],flashx.textLayout.elements::ParagraphElement/http://ns.adobe.com/textLayout/internal/2008::getTextBlockAbsoluteStart()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/elements;ParagraphElement.as:290],flashx.textLayout.edit::SelectionManager$/computeSelectionIndexInLine()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1725],flashx.textLayout.edit::SelectionManager$/http://ns.adobe.com/textLayout/internal/2008::computeSelectionIndex()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1911],flashx.textLayout.edit::SelectionManager/selectionPoint()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:937],flashx.textLayout.edit::SelectionManager/http://ns.adobe.com/textLayout/internal/2008::setNewSelectionPoint()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1927],flashx.textLayout.edit::SelectionManager/http://ns.adobe.com/textLayout/internal/2008::handleMouseEventForSelection()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:2059],flashx.textLayout.edit::SelectionManager/mouseMoveHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:2049],flashx.textLayout.container::ContainerController/mouseMoveHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2374],flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::rootMouseMoveHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2381],[mouseEvent]()
[verify](),flashx.textLayout.compose::TextFlowLine/http://ns.adobe.com/textLayout/internal/2008::hilitePointSelection()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/compose;TextFlowLine.as:2206],flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::addSelectionShapes()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2982],flashx.textLayout.edit::SelectionManager/addSelectionShapes()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1223],flashx.textLayout.edit::SelectionManager/refreshSelection()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:1255],flashx.textLayout.edit::SelectionManager/http://ns.adobe.com/textLayout/internal/2008::setSelectionFormatState()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:896],flashx.textLayout.edit::SelectionManager/focusInHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/edit;SelectionManager.as:2260],flashx.textLayout.container::ContainerController/focusInHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2494],flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::requiredFocusInHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2512],[focusEvent](),flash.display::Stage/set
focus(),flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::setFocus()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2413],flashx.textLayout.container::ContainerController/mouseDownHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2215],flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::requiredMouseDownHandler()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src;flashx/textLayout/container;ContainerController.as:2236],[mouseEvent]()





--
View this message in context: http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue-tp44966p45075.html
Sent from the Apache Flex Development mailing list archive at Nabble.com.

Re: TLF performance issue

Posted by Alex Harui <ah...@adobe.com>.
If you have Flash Builder there is a performance profiler in there.  There
are some internet articles on how to use it.

On 2/6/15, 7:49 AM, "goratz" <go...@gmail.com> wrote:

>I determined that tracing the time before and after that method.
>
>How can i run the performance profiler? Any Guide or tutorial?
>
>
>
>--
>View this message in context:
>http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue
>-tp44966p45036.html
>Sent from the Apache Flex Development mailing list archive at Nabble.com.


Re: TLF performance issue

Posted by goratz <go...@gmail.com>.
I determined that tracing the time before and after that method.

How can i run the performance profiler? Any Guide or tutorial?



--
View this message in context: http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue-tp44966p45036.html
Sent from the Apache Flex Development mailing list archive at Nabble.com.

Re: TLF performance issue

Posted by Alex Harui <ah...@adobe.com>.

On 2/6/15, 12:26 AM, "goratz" <go...@gmail.com> wrote:

>Hi Alex I try what you said but the performance is the same. Any other
>idea?

Hmm, how did you determine that EditManager.applyLeafFormat is involved?
Did you run the performance profiler?  If not, please run it and see what
is going on inside that method.

-Alex


Re: TLF performance issue

Posted by goratz <go...@gmail.com>.
Hi Alex I try what you said but the performance is the same. Any other idea?



--
View this message in context: http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue-tp44966p45018.html
Sent from the Apache Flex Development mailing list archive at Nabble.com.

Re: TLF performance issue

Posted by goratz <go...@gmail.com>.
Thanks Alex,

I will try it tomorrow and I will tell you if that works.



--
View this message in context: http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue-tp44966p44982.html
Sent from the Apache Flex Development mailing list archive at Nabble.com.

Re: TLF performance issue

Posted by Alex Harui <ah...@adobe.com>.
That sounds like the workaround we put in for discretionary hyphens.

Try setting ContainerController.tlf_internal::usesDiscretionaryHyphens =
false;

-Alex

On 2/5/15, 7:00 AM, "goratz" <go...@gmail.com> wrote:

>Hi all,
>
>first of all sorry for my English.
>
>I have a very strange performance diference between 2 versions of
>TextLayout.swc. The first one is the swc included in Apache Flex 4.14 SDK
>and the second one is included in Apache Flex 4.9.1.
>
>I have a very large text more or less 200 DIN-A4 pages in a Textflow. I
>scroll to the end of the document and I underline a word and this is my
>result underling a word in both versions.
>
>*4.9.1* 21 ms (miliseconds). 0,02 Seconds
>
>
>*4.14* 3.405 ms (miliseconds). 3,4 Seconds
>
>The time difference happens in this line of code:
>EditManager.applyLeafFormat(oFormat);
>
>Anyone has any idea what's the problem?
>
>
>
>
>
>
>
>--
>View this message in context:
>http://apache-flex-development.2333347.n4.nabble.com/TLF-performance-issue
>-tp44966.html
>Sent from the Apache Flex Development mailing list archive at Nabble.com.