Update of /cvsroot/dynapi/dynapi/tests
In directory usw-pr-cvs1:/tmp/cvs-serv11983

Added Files:
        precreation_speedtest.html 
Log Message:
precreation speedtest

--- NEW FILE ---
<html>
<head>
<title>Precreation speedtest</title>

<script language="Javascript" src="../src/dynapi.js"></script>
<script language="Javascript">
DynAPI.setLibraryPath('../src/lib/');
DynAPI.include('dynapi.api.*');
DynAPI.include('dynapi.event.*');
</script>
<script language="Javascript">
myHtml="test"

//Creates 49 childlayers of 1 dynlayer, using precreation.
function make50Precreate(){
        start=new Date()
                myLayers=[]
                myLayers[0] = new 
DynLayer(null,100,200,500,500,"#AA0000",null,null,null,myHtml)

                for(i=1;i<51;i++){
                        c="#BB"+(i-1)+"A"+(i-1)+"A"
                        myLayers[i] = new 
DynLayer(null,30,40,500,500,c,null,null,null,myHtml)
                        myLayers[i-1].addChild(myLayers[i])
                        if(i==50)DynAPI.document.addChild(myLayers[0])
                }
        alert(new Date()-start+" milliseconds")
}

//Creates 49 childlayers of 1 dynlayer, without using precreation.
function make50(){
        start=new Date()
                myLayers=[]
                myLayers[0] = new 
DynLayer(null,100,200,500,500,"#AA0000",null,null,null,myHtml)
                DynAPI.document.addChild(myLayers[0])

                for(i=1;i<51;i++){
                        c="#DD"+(i-1)+"D"+(i-1)+"D"
                        myLayers[i] = new 
DynLayer(null,30,40,500,500,c,null,null,null,myHtml)
                        myLayers[i-1].addChild(myLayers[i])
                }
        alert(new Date()-start+" milliseconds")
}

//Creates 49 childlayers of 1 dynlayer, using precreation.
//They are all dragEnabled at creation
function make50PrecreateDrag(){
        start=new Date()
                myLayers=[]
                myLayers[0] = new 
DynLayer(null,100,200,500,500,"#AA0000",null,null,null,myHtml)

                for(i=1;i<51;i++){
                        c="#BB"+(i-1)+"A"+(i-1)+"A"
                        myLayers[i] = new 
DynLayer(null,30,40,500,500,c,null,null,null,myHtml)
                        DragEvent.enableDragEvents(myLayers[i])
                        myLayers[i-1].addChild(myLayers[i])

                        if(i==50){
                                DynAPI.document.addChild(myLayers[0])
                                DragEvent.enableDragEvents(myLayers[0])
                        }
                }
        alert(new Date()-start+" milliseconds")
}

//Creates 49 childlayers of 1 dynlayer, without using precreation.
//They are all dragEnabled at creation
function make50Drag(){
        start=new Date()
                myLayers=[]
                myLayers[0] = new 
DynLayer(null,100,200,500,500,"#AA0000",null,null,null,myHtml)
                DynAPI.document.addChild(myLayers[0])
                DragEvent.enableDragEvents(myLayers[0])

                for(i=1;i<51;i++){
                        c="#DD"+(i-1)+"D"+(i-1)+"D"
                        myLayers[i] = new 
DynLayer(null,30,40,500,500,c,null,null,null,myHtml)
                        DragEvent.enableDragEvents(myLayers[i])
                        myLayers[i-1].addChild(myLayers[i])
                }

        alert(new Date()-start+" milliseconds")
}

//Creates 49 childlayers of 1 dynlayer, using precreation.
//They are all dragEnabled after creation
function make50PrecreateDrag2(){
        start=new Date()
                myLayers=[]
                myLayers[0] = new 
DynLayer(null,100,200,500,500,"#AA0000",null,null,null,myHtml)

                for(i=1;i<51;i++){
                        c="#BB"+(i-1)+"A"+(i-1)+"A"
                        myLayers[i] = new 
DynLayer(null,30,40,500,500,c,null,null,null,myHtml)
                        myLayers[i-1].addChild(myLayers[i])
                        if(i==50)DynAPI.document.addChild(myLayers[0])
                }
                for(i=0;i<51;i++){
                        DragEvent.enableDragEvents(myLayers[i])
                }
        alert(new Date()-start+" milliseconds")
}

//Creates 49 childlayers of 1 dynlayer, without using precreation.
//They are all dragEnabled after creation
function make50Drag2(){
        start=new Date()
                myLayers=[]
                myLayers[0] = new 
DynLayer(null,100,200,500,500,"#AA0000",null,null,null,myHtml)
                DynAPI.document.addChild(myLayers[0])

                for(i=1;i<51;i++){
                        c="#DD"+(i-1)+"D"+(i-1)+"D"
                        myLayers[i] = new 
DynLayer(null,30,40,500,500,c,null,null,null,myHtml)
                        myLayers[i-1].addChild(myLayers[i])
                }
                for(i=0;i<51;i++){
                        DragEvent.enableDragEvents(myLayers[i])
                }
        alert(new Date()-start+" milliseconds")
}
</script>
</head>

<body >
This is a stress test to see in which browsers precreation is an advantage, and in 
which it isn't.<br />
For the best results refresh the browser between tests.<br /><br />
1) <a class="testClass" href="#" onclick="make50Precreate();return false">make 50 
using precreate</a><br />
2) <a class="testClass" href="#" onclick="make50();return false">make 50 without 
precreate</a><br />
3) <a class="testClass" href="#" onclick="make50PrecreateDrag();return false">make 50 
using precreate - dragenabled at creation</a><br />
4) <a class="testClass" href="#" onclick="make50Drag();return false">make 50 without 
precreate - dragenabled at creation</a><br />
5) <a class="testClass" href="#" onclick="make50PrecreateDrag2();return false">make 50 
using precreate - dragenabled after creation</a><br />
6) <a class="testClass" href="#" onclick="make50Drag2();return false">make 50 without 
precreate - dragenabled after creation</a><br />
<br /><b>My results:</b><br />
Taken on Win2000 P3 500Mhz 400+MB Ram:<br /><br />
<table><tr><td>
IE5.5:------<br />
1) 340<br />
2) 280<br />
3) 1292<br />
4) 411<br />
5) 421<br />
6) 360<br />
<br />
</td><td>
Mozilla 0.93:--<br />
1) 181<br />
2) 341<br />
3) 3665<br />
4) 560<br />
5) 430<br />
6) 551<br />
<br />
</td><td>
NS 4.7:------<br />
1) 200<br />
2) 770<br />
3) 881<br />
4) 782<br />
5) 220<br />
6) 682<br />
<br />
</td></tr></table>
Taken on Win95 VMWare 200+MB Ram:<br /><br />
<table><tr><td>
IE4:------<br />
1) 330<br />
2) 880<br />
3) 940<br />
4) 830<br />
5) 440<br />
6) 830<br />
<br />
</td><td></table>
Taken on Win98 VMWare 200+MB Ram:<br /><br />
<table><tr><td>
IE6:------<br />
1) 380<br />
2) 610<br />
3) 2140<br />
4) 660<br />
5) 440<br />
6) 440<br />
<br />
</td><td>
NS6:------<br />
1) 330<br />
2) 660<br />
3) 2750<br />
4) 490<br />
5) 390<br />
6) 610<br />
<br />
</td><td></table>


</body>
</html>


_______________________________________________
Dynapi-CVS mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dynapi-cvs

Reply via email to