I made a little test a few weeks ago, but the result of that was that plains were slower then sprites. However all my plains were sepparate objects. It turned out that sprites are 3 times faster.
If you want to try it too (maybe I made a stupid mistake in my test program) here is the code.
Sync on
Sync rate 0
open console
count = 1000
load image "grass_01.bmp", 1
syncCount = 100
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//// test plains ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Create plains
creationTime = timer()
for i=1 to count
make object plain i, 100, 100
texture object i, 1
set object light i, 0
set object ambient i, 0
fade object i, 100
set object fog i, 0
set object filter i, 0
next i
creationTime = timer() - creationTime
// Print creation info to console
print console "Plains" : print console
print console " Creation time: ",creationTime," ms" : print console
// Sync plains
syncTime = timer()
for i=1 to syncCount
sync
next i
syncTime = timer() - syncTime
// Print sync info to console
print console " Sync time: ",syncTime," ms" : print console
// Delete plains
for i=1 to count
delete object i
next i
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//// test sprites ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
dxs initialize
pack = dxs create sprite pack()
// Create sprites
dim sprites(count) as integer
creationTime = timer()
for i=1 to count
sprites(i) = dxs create sprite from image(1)
dxs add sprite to pack sprites(i), pack
next i
creationTime = timer() - creationTime
// Print creation info to console
print console "Sprites" : print console
print console " Creation time: ",creationTime," ms" : print console
// Sync sprites
syncTime = timer()
for i=1 to syncCount
dxs begin sprite pack render pack
`dxs flush sprite pack render pack
for s=1 to count
`dxs begin sprite render sprites(i)
dxs draw sprite sprites(i), 0, 0
`dxs end sprite render sprites(i)
next s
dxs end sprite pack render pack
sync
next i
syncTime = timer() - syncTime
// Print sync info to console
print console " Sync time: ",syncTime," ms" : print console
// delete sprites
for i=1 to count
dxs delete sprite sprites(i)
next i
undim sprites()
`suspend for key
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//// test a2 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Print creation info to console
print console "a2" : print console
print console " Creation time: ",0," ms" : print console
color as dword
color = rgb(255, 255, 255)
// Sync sprites
syncTime = timer()
for i=1 to syncCount
for s=1 to count
a2drawimage 1, 0, 0, 0, 0, 0, 1.0, 0, color
next s
sync
next i
syncTime = timer() - syncTime
// Print sync info to console
print console " Sync time: ",syncTime," ms" : print console
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//// test paste image ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Print creation info to console
print console "paste image" : print console
print console " Creation time: ",0," ms" : print console
// Sync sprites
syncTime = timer()
for i=1 to syncCount
for s=1 to count
paste image 1, 0, 0
next s
sync
next i
syncTime = timer() - syncTime
// Print sync info to console
print console " Sync time: ",syncTime," ms" : print console
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//// test db sprites ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
set sprite 1, 0, 1
// Create sprites
dim sprites(count) as integer
creationTime = timer()
for i=1 to count
sprites(i) = find free sprite()
sprite sprites(i), 100000, 10000, 1
next i
creationTime = timer() - creationTime
// Print creation info to console
print console "db sprites" : print console
print console " Creation time: ",creationTime," ms" : print console
// Sync sprites
syncTime = timer()
for i=1 to syncCount
for s=1 to count
paste sprite sprites(s), 0, 0
next s
sync
next i
syncTime = timer() - syncTime
// Print sync info to console
print console " Sync time: ",syncTime," ms" : print console
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//// test db sprites recreate ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Create sprites
dim sprites(count) as integer
creationTime = timer()
for i=1 to count
sprites(i) = find free sprite()
sprite sprites(i), 100000, 10000, 1
next i
creationTime = timer() - creationTime
// Print creation info to console
print console "db sprites" : print console
print console " Creation time: ",creationTime," ms" : print console
// Sync sprites
syncTime = timer()
for i=1 to syncCount
for s=1 to count
`delete sprite sprites(i)
sprite sprites(i), 0, 0, 1
next s
sync
next i
syncTime = timer() - syncTime
// Print sync info to console
print console " Sync time: ",syncTime," ms" : print console
cls
suspend for key