On 20 Dec 2011, at 07:59, Aparajita Fishman wrote:

Your numbers don't seem reasonable to me at all. I could be wrong, but it doesn't make sens

As a general rule of thumb, each call to fusebox.head reduces the measured serving capacity by between 1% and 1.5%.

I assume this is the case for any property assignment call to pseudo classes, but I don't have direct data for that. The data for fusebox.head however, is fairly unambiguous. 80 calls during the course of a request will reduce serving capacity by roughly half.

I tried this:
$t := milliseconds


I don't think this approach works very well for measuring a function's effect on overall serving capacity because it doesn't take into account the function's impact on the server efficiency when lots of them are running side by side (or when the processor is under a load). I don't really know what I'm talking about here in terms of bits and bytes, I just know that the holostic results are not the same as the sum of the parts. You have to measure the serving capacity directly with the function present and absent. Also, it doesn't show you the relative impact compared to all the rest of the request workload. The tests below are holistic tests which measure the aggregate performance impact.

I've enclosed the data set and test descriptions below. I speculated that, since most of the processing goes into interpreting each command rather than executing it's intended action the interpreter could be more efficient for some commands than others and that might explain it - I don't really know. I'll enclose the results here and maybe you can read something more into them. In the meantime, as I say, it's not causing a major problem - it may simply be executing genuinely needed steps - I'm just highlighting it because it stuck out relative to other performance drains.

Regards

Peter

TEST RESULTS FOR ACTIVE 4D DEMO DATABASE HOME PAGE:

********************************** ENVIRONMENT **********************************

Application: Active4D Demo database
Page: web/views/dsp_hello
Server Platform: Windows 7
4D 11.8 Development

Client Platform: Windows XP under VM Ware on a MacbookPro

****************************** SUMMARY RESULTS ******************************

Page rate per hour per number of calls to fusebox.head

0 Calls: 215000 PPH
1 Call: 211000 (-1.5 %)
4 Calls 204000 (-5%)
10 Calls: 192000 (-10.5%)
80 Calls: 116000 (-46%)

****************************** DETAILED RESULTS ******************************

 - TEST DESCRIPTION

A line of script (see below) was successively added to the executable code in dsp_hello and automated requests made at loadings representing 5 and 200 users respectively with zero think time between requests. At each stage, more calls to fusebox.head were added and the same test rerun. The page response rate (i.e. the number of pages the server could generate in a 2-minute period) was measured and normalised to PPH (Pages per Hour) along with various auxiliary data such as socket error rate and response time.

NOTES:

1. The call to 'fusebox.head.write' was deleted from ' 'dsp_xhtmlHeader.a4d' to eliminate the effect of additional content in the header for successive test loads.

2. The test line of code was as follows:

fusebox.head.addMetaTag($Fusebox;'Name="Description" Lang="EN" Content="Test1"')

3. - CONTROL DATA

So that there was something to compare it to, a control test was run where the call to '_add' in 'addMetaTag' was replace by a call to '_add_control' who's code was as follows:

        for ($i;1;10)
                $text:="dummy"
        end for

In terms of lines of code, therefore, the control tests had to execute about 2-3 times more than the live test.

 - DETAILED RESULTS - COMPARISON WITH CONTROL DATA (REFERENCE LOAD=5)

0 Calls:  217650    (218820)
1 Call: 213090, -2%    (217530, -1%)
4 Calls: 203100, -7%    (212520, -3%)
10 Calls: 187410, -14%    (207030, -5%)
80 Calls: 97920, -55%    (153720, -30%)


 - DETAILED RESULTS - COMPARISON WITH CONTROL DATA (REFERENCE LOAD=200)

Percentages are reduction over reference rate (Zero calls). Control results are in brackets.

0 Calls:  214680    (215310)
1 Call: 211290, -2%    (205190, -2%)
4 Calls: 204540, -5%     (212130. -1%)
10 Calls: 192450, -10%    (197640, -8%)
80 Calls: 116430, -46%    (163740, -24%)


_______________________________________________
Active4D-dev mailing list
[email protected]
http://list.aparajitaworld.com/listinfo/active4d-dev
Archives: http://vasudev.aparajitaworld.com/archive/active4d-dev/

Reply via email to