<tr><th> 8-bit </th><td>133 fps</td><td>150 fps</td><td>89%</td></tr>
<tr><th> 16-bit </th><td>85 fps</td><td>135 fps</td><td>63%</td></tr>
<tr><th> 24-bit </th><td>55 fps</td><td>128 fps</td><td>43%</td></tr></table>
On an 8-bit display, X isn't too bad and is almost as fast as Windows. With 16-bit color, it is barely more than half the speed of Windows. Playing at 24-bit under X is absolutely pathetic compared to Windows. Even compared to an 8-bit X display, a 24-bit X display is abysmal, running 78 fps slower. Windows suffered a performance penalty of only 22 fps for a 24-bit display.
Maybe bypassing X and using OpenGL as a simple framebuffer will get better performance... I know it's not the fault of the compiler, because a GCC-compiled Windows version of ZDoom performs on-par with a Visual C++-compiled version, and I assume SDL doesn't have that much overhead, so I hope there's something I can do to get decent performance out of it short of not using X.
I also miss having a decent integrated development environment under Linux like Visual Studio. KDevelop looked promising until I found out it can't handle projects with files in more than one directory.

Anyway, here is the obligatory screenshot of ZDoom running on Linux:
