Performance-vertex array vs. display list

I’ve been using display list with connected geometry such as quad/triangle-strips.
To enhance the performance further, I decided to use vertext array with display list. However, one of my OpenGL book (SuperBible, 2nd Ed. p340) says:
“… some implementations may do a better job of optimizing your geometry as a display list than as a vertex array. This is especially true if you are using lit geometry(specifying normals) and are running in an environmnet that has hardware-accelerate transform and lighting”

Before I pursue my experiment on the vertex array, I’d like to know what does the paragraph mean. Are there any applications not under the environment mentioned above?



“I decided to use vertext array with display list”
u will get no performannce increase by mixing the two (and it mightnt even work)
its best to stick to immediate mode when creating your display lists.
in an ideal situation VAs will be slower than DLs, VBOs will be roughly the same speed as DLs though.

In my experience VBOs were faster than both (fglrx drivers under linux, radeon 9700 pro). They should definitely be faster than vertex arrays because with VBOs the vertices are loaded into the card’s VRAM, whereas with vertex arrays they’re in main memory (farther away from the card).

I’m not sure why they’re faster than display lists, but I remember reading somewhere that if you use an indexed VBO it takes advantage of the vertex cache; maybe display lists don’t do that?

It depends on the graphic card. On geforces, DL are very fast, and static VBO are approximately equal.