In almost all cases, direct OpenGL will be at least a little faster than using Max2D routines. Why? Because the Max2D routines do other processing as part of providing you, the programmer, with a simpler higher-level interface. You can, I'm sure, render a lot more single pixels (plots - which are individual vertexes) using an array of points rather than making lots and lots of calls to Plot. There are also other routines which are faster if you do the OpenGL yourself rather than the Max2D route because you might be able to eliminate steps which you don't need. For example the DrawPixmap function, each time you call it, it might perform a format conversion, as well as an operation to flip the pixmap vertically - all OpenGL commands have an origin in the bottom left corner so the pixmap has to be vertically flipped to render bottom to top correctly. You can cut all that out and just set up and call the OpenGL routine, DrawPixels - to directly draw a pre-flipped pixmap without a format conversion of a flip operation. This makes it much faster. Just one example.
You can probably get more speed with direct OpenGL but ease-of-use with Max2D, and since it's pretty fast anyway you might not mind the overhead.
You can probably get more speed with direct OpenGL but ease-of-use with Max2D, and since it's pretty fast anyway you might not mind the overhead.