Thank you, Tucker.
It became clear to me.

Ono Keiji
[email protected]


P T Withington さんは書きました:
When we moved from single platform to multiple platform, we removed many optimizations to first get a working system.

v3 was highly tuned for Actionscript 2 (swf5/6/7/8), but we had to tear a lot of internals apart and rebuild them with more layers of abstraction to add support for Javascript (DHTML) and Actionscript 3 (swf9). The cost was is lost performance, especially in swf8, where much of the Class support is implemented at run time (rather than at compile time as in swf9). We think this was the right decision, because we expect swf9 and ECMAScript 5 to have better and better class support and to become more popular.

We are now doing a lot of tuning to try to improve the performance of the system on all platforms.

This is related to http://jira.openlaszlo.org/jira/browse/LPP-6599 which is a long-standing issue that we continue to work on.

On 2009-05-07, at 03:45EDT, ono keiji wrote:

I did the instance create test on v3.3.3 and v4.3.0.
Surprisingly v4.3.0 was slow than v3.3.3.
Why dose it?

[Test Case]
By using the attachment and take their mean time [msec].

[Result]
On Windows FireFox v3.0
    v.3.3.3  v4.3.0
swf8  733     4,103
swf9   -        910
swf10  -        893

On Windows IE7
    v.3.3.3  v4.3.0
swf8  488     3,257
swf9   -        571
swf10  -        698



Ono Keiji
[email protected]
<?xml version="1.0" encoding="UTF-8"?>
<canvas debug="true">
    <script>
        var t1 = new Date();
        var st = t1.getTime();
    </script>

    <class name="myLabel">
        <attribute name="label" type="string"/>
        <attribute name="labelx"/>
        <attribute name="labely"/>
<text text="${classroot.label}" x="${classroot.labelx}" y="${classroot.labely}"/>
        <edittext width="200" x="50" y="${classroot.labely}"/>
    </class>
<class name="Win" extends="window" x="250" y="0" width="300" height="250" title="Win"> <myLabel name="label1" label="${this.name}" labelx="10" labely="20"/> <myLabel name="label2" label="${this.name}" labelx="10" labely="50"/> <myLabel name="label3" label="${this.name}" labelx="10" labely="80"/> <myLabel name="label4" label="${this.name}" labelx="10" labely="110"/> <myLabel name="label5" label="${this.name}" labelx="10" labely="140"/>
    </class>

    <handler name="oninit">
        <![CDATA[
        for( var i=0; i<10; i++){
            var w = new lz.Win();
        }
var t2 = new Date();
        var et = t2.getTime();
        var dt = et - st;
        Debug.write( "init time[ms]: ", dt );
        ]]>
    </handler>
</canvas>


Reply via email to