Go To: [ iShell News | Speed Tips Index ]


Do Your own Benchmark Testing

 

Introduction:

iShell itself has built in Performance classes, to activate them you need the iShell Frameworks SDK, this is only available to Full Members.

Open the following files in your editor:

Nutshell:Sources:Cache.k

Nutshell:Sources:ShellRuntime.k

Nutshell:Sources:URLBuffer.k

Nutshell:Sources:URLScheme.k

You will notice:

"--oPerformance" replace this with "oPerformance" in all the files, recompile the Nutshell plugin and try it.

Your iShell Runtime will create a file "performance.txt" in your project his cache-cache folder. (On MacOS this folder is located in the Preferences folder, on Windows 95/98/NT, in the "Windows" folder. You can open this file "performance.txt" in your editor.

We adapted the 4 files so the layout is a little bit nicer and easier to read, you can find the adaptions in our Full Members exchange folder. We discuss only our adapted version. So don't be surprised your "performance.txt" layout is different.

 

Line Explenation:

[000] 00:000 - 00:000 - Load --------------------- file:///iShell_Test/iShell_Acc/MEDIA/sources/Go%20Big%20PNGs.k

[000]: stands for the operation number, each time when you load a .k document the counter is set to 0.

The first 00:000 (seconds:miliseconds) reports the total time that is passed by since the load of the .k document started.

The second: 00:000 (seconds:miliseconds) indicates the time that has passed since last time we reported an operation.

The Operation name (see next chapter for more information on the this)

The URL on which this operation is applied.

Operations:

Load: when you start locating (file or http or in iPackager MediaDB) an URL (image, .k document, QuickTime,....)

GetStuff <: Tell the iShell Framework that you want to load this URL.

GetStuff >: Finished telling the iShell Framework that you want to load this URL.

Loaded: Data of the url is loaded.

Buffer Done <: the iShell Framework starts doing some Initialization setup, for an Image with Buffer Option it means it starts drawing the image in an offscreen Buffer.

Buffer Done >: the iShell Framework Finished doing the initialization.

Refresh: Updating the iShell Window with the new media.

 

Some examples on how you can use this data:

Compile/link time of "Go%20Big%20PNGs.k" is 00:062, see line [005]. The previous line start it, and the next time a new operation is logged, compile/Link must be done.

Drawing Time of "4830S1.png" is 01:942 at line [045] (Buffer Done >) when you compare the drawing time with other PNG files, you will notice that this time is very large. QuickTime can't draw (very fast) when loading of other media is busy. Quicktime waits until all png files are loaded and the draw at full speed. On Windows QuickTime doesn't have this problem. We included the Performance.txt files of our test project on all the configurations we tested. When you analyze this data you will see that PICT format doesn't have this problem.

In the test data we added the "report" file that the iPackager tool generates, with this text we have exact information on how much data has to be loaded for a .k document.

Download Data:

Download the result data from our Benchmark Title BenchmarkData.sea.hqx ( Self expanded MacOS application, compressed with Stuffit 5.0 file.)

Test Example

[000] 00:000 - 00:000 - Load --------------------- file:///iShell_Test/iShell_Acc/MEDIA/sources/Go%20Big%20PNGs.k

[001] 00:002 - 00:001 - GetStuff < -------------- file:///iShell_Test/iShell_Acc/MEDIA/sources/Go%20Big%20PNGs.k

[002] 00:004 - 00:002 - GetStuff > -------------- file:///iShell_Test/iShell_Acc/MEDIA/sources/Go%20Big%20PNGs.k

[003] 00:013 - 00:008 - Loaded ------------------- file:///iShell_Test/iShell_Acc/MEDIA/sources/Go%20Big%20PNGs.k

[004] 00:013 - 00:000 - Buffer Done < ----------- file:///iShell_Test/iShell_Acc/MEDIA/sources/Go%20Big%20PNGs.k

[005] 00:076 - 00:062 - Load --------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S1.png

[006] 00:078 - 00:001 - Load --------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S2.png

[007] 00:079 - 00:001 - Load --------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S3.png

[008] 00:082 - 00:002 - Load --------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S4.png

[009] 00:084 - 00:001 - Load --------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S0.png

[010] 00:085 - 00:001 - Load --------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S1.png

[011] 00:087 - 00:001 - Load --------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S2.png

[012] 00:088 - 00:001 - Load --------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S3.png

[013] 00:090 - 00:001 - Load --------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S4.png

[014] 00:091 - 00:001 - Load --------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S5.png

[015] 00:092 - 00:001 - Load --------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S6.png

[016] 00:094 - 00:001 - Load --------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S7.png

[017] 00:096 - 00:001 - Buffer Done > ----------- file:///iShell_Test/iShell_Acc/MEDIA/sources/Go%20Big%20PNGs.k

[018] 00:116 - 00:020 - GetStuff < -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S1.png

[019] 00:120 - 00:004 - GetStuff > -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S1.png

[020] 00:121 - 00:000 - GetStuff < -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S2.png

[021] 00:124 - 00:002 - GetStuff > -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S2.png

[022] 00:125 - 00:000 - GetStuff < -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S3.png

[023] 00:127 - 00:002 - GetStuff > -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S3.png

[024] 00:128 - 00:000 - GetStuff < -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S4.png

[025] 00:132 - 00:004 - GetStuff > -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S4.png

[026] 00:133 - 00:000 - GetStuff < -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S0.png

[027] 00:140 - 00:007 - GetStuff > -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S0.png

[028] 00:140 - 00:000 - GetStuff < -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S1.png

[029] 00:143 - 00:002 - GetStuff > -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S1.png

[030] 00:144 - 00:000 - GetStuff < -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S2.png

[031] 00:146 - 00:002 - GetStuff > -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S2.png

[032] 00:147 - 00:000 - GetStuff < -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S3.png

[033] 00:149 - 00:002 - GetStuff > -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S3.png

[034] 00:150 - 00:000 - GetStuff < -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S4.png

[035] 00:153 - 00:003 - GetStuff > -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S4.png

[036] 00:157 - 00:003 - GetStuff < -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S5.png

[037] 00:159 - 00:002 - GetStuff > -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S5.png

[038] 00:160 - 00:000 - GetStuff < -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S6.png

[039] 00:164 - 00:003 - GetStuff > -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S6.png

[040] 00:165 - 00:000 - GetStuff < -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S7.png

[041] 00:168 - 00:003 - GetStuff > -------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S7.png

[042] 00:182 - 00:014 - Loaded ------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S1.png

[043] 00:183 - 00:000 - Loaded ------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S2.png

[044] 00:184 - 00:001 - Buffer Done < ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S1.png

[045] 02:127 - 01:942 - Buffer Done > ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S1.png

[046] 02:127 - 00:000 - Buffer Done < ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S2.png

[047] 02:428 - 00:300 - Buffer Done > ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S2.png

[048] 02:459 - 00:030 - Loaded ------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S3.png

[049] 02:460 - 00:000 - Loaded ------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S4.png

[050] 02:460 - 00:000 - Loaded ------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S0.png

[051] 02:461 - 00:000 - Loaded ------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S1.png

[052] 02:461 - 00:000 - Loaded ------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S2.png

[053] 02:461 - 00:000 - Loaded ------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S3.png

[054] 02:462 - 00:000 - Loaded ------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S4.png

[055] 02:462 - 00:000 - Loaded ------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S5.png

[056] 02:463 - 00:000 - Loaded ------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S6.png

[057] 02:464 - 00:000 - Loaded ------------------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S7.png

[058] 02:464 - 00:000 - Buffer Done < ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S3.png

[059] 02:907 - 00:442 - Buffer Done > ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S3.png

[060] 02:907 - 00:000 - Buffer Done < ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S4.png

[061] 03:336 - 00:428 - Buffer Done > ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/4830S4.png

[062] 03:337 - 00:000 - Buffer Done < ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S0.png

[063] 03:738 - 00:401 - Buffer Done > ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S0.png

[064] 03:739 - 00:000 - Buffer Done < ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S1.png

[065] 04:132 - 00:392 - Buffer Done > ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S1.png

[066] 04:133 - 00:000 - Buffer Done < ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S2.png

[067] 04:441 - 00:308 - Buffer Done > ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S2.png

[068] 04:441 - 00:000 - Buffer Done < ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S3.png

[069] 04:718 - 00:276 - Buffer Done > ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S3.png

[070] 04:719 - 00:000 - Buffer Done < ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S4.png

[071] 05:034 - 00:315 - Buffer Done > ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S4.png

[072] 05:034 - 00:000 - Buffer Done < ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S5.png

[073] 05:302 - 00:267 - Buffer Done > ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S5.png

[074] 05:303 - 00:001 - Buffer Done < ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S6.png

[075] 05:683 - 00:380 - Buffer Done > ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S6.png

[076] 05:684 - 00:000 - Buffer Done < ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S7.png

[077] 06:046 - 00:362 - Buffer Done > ----------- file:///iShell_Test/iShell_Acc/MEDIA/picts/Big%20PNG/7500S7.png

[078] 06:284 - 00:238 - Refresh ################## file:///iShell_Test/iShell_Acc/MEDIA/sources/Go%20Big%20PNGs.k