power mac g4, 1ghz (values change with every run a bit):
public void renderMethod2(int x, int y, GL gl)
{
MATRIX_TRANSLATION[12] = x;
MATRIX_TRANSLATION[13] = y;
gl.glLoadMatrixf(MATRIX_TRANSLATION);
gl.glCallList(displayListHandle);
}
1000000 tiles rendered with method1(immediate) in 6003ms, which makes 166000 tiles/s
1000000 tiles rendered with method2(display lists) in 6853ms, which makes 145000 tiles/s
instead of using a full matrix, let’s just translate:
public void renderMethod2(int x, int y, GL gl)
{
gl.glPushMatrix();
gl.glTranslated(x, y, 0);
gl.glCallList(displayListHandle);
gl.glPopMatrix();
}
1000000 tiles rendered with method1(immediate) in 6081ms, which makes 164000 tiles/s
1000000 tiles rendered with method2(display lists) in 6393ms, which makes 156000 tiles/s
and now, let’s assume we’re at the right position already (which is - in most cases - pretty useless) 
public void renderMethod2(int x, int y, GL gl)
{
gl.glCallList(displayListHandle);
}
1000000 tiles rendered with method1(immediate) in 6131ms, which makes 163000 tiles/s
1000000 tiles rendered with method2(display lists) in 3846ms, which makes 260000 tiles/s
what a slow video-card i have…
and apple states:
for a list use a minumum of 16 verticies, less slows you down