[Stackless] Benchmarks for the taskspeed.py test

Richard Tew richard.m.tew at gmail.com
Mon Aug 14 14:34:15 CEST 2006


Hi,

Out of interest I ran the taskspeed.py test on a range of Stackless
Python versions with the following OS / hardware:

  Windows XP Pro x64.  AMD Turion 64 / ML-34.

Here are the results:

2.3.3 Stackless 3.1b3 050929 (#51, Aug 14 2006, 11:58:33) [MSC v.1310
32 bit (Intel)]
10000000 frame switches      took   4.73312 seconds, rate =    2112773/s
10000000 frame softswitches  took   1.84762 seconds, rate =    5412381/s
10000000 cfunction calls     took   2.67088 seconds, rate =    3744083/s
10000000 cframe softswitches took   0.41968 seconds, rate =   23827674/s
10000000 channel hard top    took   6.25777 seconds, rate =    1598014/s
10000000 channel hard nest 3 took   8.10262 seconds, rate =    1234168/s
10000000 channel soft        took   3.54879 seconds, rate =    2817858/s
10000000 channel iterator    took   4.77217 seconds, rate =    2095482/s
 1000000 channel real thread took   3.86325 seconds, rate =     258849/s
10000000 function calls      took   3.01390 seconds, rate =    3317960/s
10000000 generator calls     took   2.76021 seconds, rate =    3622909/s
 1000000 cframe from outside took   2.35431 seconds, rate =     424752/s
10000000 cframe switches     took   2.52412 seconds, rate =    3961780/s
10000000 cframe 100 words    took   3.69905 seconds, rate =    2703397/s
The penalty per stack word is about 0.465 percent of raw switching.
Stack size of initial stub   = 20
Stack size of frame tasklet  = 145
Stack size of cframe tasklet = 59

2.4.3 Stackless 3.1b3 060516 (#69, Aug  8 2006, 12:42:43) [MSC v.1310
32 bit (Intel)]
10000000 frame switches      took   5.08233 seconds, rate =    1967599/s
10000000 frame softswitches  took   2.07161 seconds, rate =    4827164/s
10000000 cfunction calls     took   2.53642 seconds, rate =    3942564/s
10000000 cframe softswitches took   0.43030 seconds, rate =   23239772/s
10000000 channel hard top    took   6.79436 seconds, rate =    1471809/s
10000000 channel hard nest 3 took   8.49712 seconds, rate =    1176868/s
10000000 channel soft        took   3.87926 seconds, rate =    2577809/s
10000000 channel iterator    took   5.00700 seconds, rate =    1997202/s
 1000000 channel real thread took   3.93432 seconds, rate =     254173/s
10000000 function calls      took   2.90025 seconds, rate =    3447981/s
10000000 generator calls     took   2.56676 seconds, rate =    3895966/s
 1000000 cframe from outside took   2.19265 seconds, rate =     456070/s
10000000 cframe switches     took   2.53339 seconds, rate =    3947280/s
10000000 cframe 100 words    took   3.54802 seconds, rate =    2818470/s
The penalty per stack word is about 0.401 percent of raw switching.
Stack size of initial stub   = 20
Stack size of frame tasklet  = 145
Stack size of cframe tasklet = 59

2.5b2 Stackless 3.1b3 060516 (trunk:51087:51101, Aug  8 2006,
12:50:18) [MSC v.1310 32 bit (Intel)]
10000000 frame switches      took   4.87488 seconds, rate =    2051330/s
10000000 frame softswitches  took   1.92057 seconds, rate =    5206785/s
10000000 cfunction calls     took   2.79764 seconds, rate =    3574444/s
10000000 cframe softswitches took   0.44370 seconds, rate =   22537800/s
10000000 channel hard top    took   6.97745 seconds, rate =    1433187/s
10000000 channel hard nest 3 took   8.62583 seconds, rate =    1159308/s
10000000 channel soft        took   4.00830 seconds, rate =    2494825/s
10000000 channel iterator    took   5.45884 seconds, rate =    1831892/s
 1000000 channel real thread took   4.07944 seconds, rate =     245131/s
10000000 function calls      took   2.72815 seconds, rate =    3665489/s
10000000 generator calls     took   2.90979 seconds, rate =    3436676/s
 1000000 cframe from outside took   2.26808 seconds, rate =     440901/s
10000000 cframe switches     took   2.45264 seconds, rate =    4077234/s
10000000 cframe 100 words    took   3.69011 seconds, rate =    2709947/s
The penalty per stack word is about 0.505 percent of raw switching.
Stack size of initial stub   = 20
Stack size of frame tasklet  = 146
Stack size of cframe tasklet = 60

2.5b3 Stackless 3.1b3 060516 (trunk:51272M, Aug 14 2006, 10:17:57)
[MSC v.1310 32 bit (Intel)]
10000000 frame switches      took   4.66111 seconds, rate =    2145413/s
10000000 frame softswitches  took   1.99579 seconds, rate =    5010557/s
10000000 cfunction calls     took   2.91971 seconds, rate =    3424998/s
10000000 cframe softswitches took   0.43744 seconds, rate =   22860165/s
10000000 channel hard top    took   6.76303 seconds, rate =    1478626/s
10000000 channel hard nest 3 took   8.53173 seconds, rate =    1172095/s
10000000 channel soft        took   3.95180 seconds, rate =    2530491/s
10000000 channel iterator    took   5.44254 seconds, rate =    1837376/s
 1000000 channel real thread took   3.78338 seconds, rate =     264314/s
10000000 function calls      took   2.68112 seconds, rate =    3729788/s
10000000 generator calls     took   2.89904 seconds, rate =    3449418/s
 1000000 cframe from outside took   2.60688 seconds, rate =     383600/s
10000000 cframe switches     took   2.37770 seconds, rate =    4205748/s
10000000 cframe 100 words    took   3.67135 seconds, rate =    2723791/s
The penalty per stack word is about 0.544 percent of raw switching.
Stack size of initial stub   = 20
Stack size of frame tasklet  = 146
Stack size of cframe tasklet = 60

Richard.

_______________________________________________
Stackless mailing list
Stackless at stackless.com
http://www.stackless.com/mailman/listinfo/stackless



More information about the Stackless mailing list