2013-02-10 16:23:54 +00:00
|
|
|
// Timing test for four 0..MAXSPRITES-1 access loops,
|
|
|
|
// fwd->back->fwd->back.
|
|
|
|
// Results with a LTO=1 RELEASE=1 C-CON build on x86: 42 ms for N=10.
|
|
|
|
// (Compare with Lunatic results in test.elua)
|
|
|
|
|
|
|
|
define N 10
|
|
|
|
gamevar n 0 0
|
|
|
|
gamevar i 0 0
|
|
|
|
gamevar t 0 0
|
|
|
|
gamevar t2 0 0
|
|
|
|
define MAXSPRITES 16384
|
|
|
|
define MAXSPRM1 16383 // MAXSPRITES-1
|
|
|
|
|
|
|
|
onevent EVENT_ENTERLEVEL
|
|
|
|
getticks t
|
|
|
|
|
|
|
|
setvar n 0
|
|
|
|
whilevarn n N
|
|
|
|
{
|
|
|
|
setvar i 0
|
|
|
|
whilevarvarn i MAXSPRITES
|
|
|
|
{
|
|
|
|
setactor[i].detail 1
|
|
|
|
addvar i 1
|
|
|
|
}
|
|
|
|
|
|
|
|
setvar i MAXSPRM1
|
|
|
|
whilevarvarn i -1
|
|
|
|
{
|
|
|
|
setactor[i].shade 1
|
|
|
|
subvar i 1
|
|
|
|
}
|
|
|
|
|
|
|
|
setvar i 0
|
|
|
|
whilevarvarn i MAXSPRITES
|
|
|
|
{
|
|
|
|
setactor[i].xoffset 0
|
|
|
|
addvar i 1
|
|
|
|
}
|
|
|
|
|
|
|
|
setvar i MAXSPRM1
|
|
|
|
whilevarvarn i -1
|
|
|
|
{
|
|
|
|
setactor[i].yoffset 0
|
|
|
|
subvar i 1
|
|
|
|
}
|
|
|
|
|
|
|
|
addvar n 1
|
|
|
|
}
|
|
|
|
|
|
|
|
getticks t2
|
|
|
|
subvarvar t2 t
|
|
|
|
|
2013-02-18 16:07:59 +00:00
|
|
|
// qsprintf test
|
|
|
|
redefinequote 116 0..MAXSPITES-1
|
|
|
|
redefinequote 117 in total
|
|
|
|
|
|
|
|
redefinequote 114 %d x four %s iterations took %d ms %s
|
|
|
|
qsprintf 115 /*<-*/ 114 /*args:*/ n 116 t2 117
|
|
|
|
|
2013-02-10 16:23:54 +00:00
|
|
|
echo 115
|
|
|
|
endevent
|