'... best graphic settings' is relative imo. For some people any setting that will give as much FPS as possible will be the 'best' setting, others prefer the most 'beautiful' renderer settings.
Dependig on your hardware the new OpenGL2 renderer is 'faster' by default (less CPU consumption). On the other hand if you don't use the features provided by the new renderer (normal mapping, cascaded shadows etc.) you won't notice much difference.
Please note, that ioquake3 still suffers from some 'FPS slowdowns' that were there since Q3A (e.g.: impact marks will decrease your FPS very drastically if you are very close to them. For example, move as close as possible to a wall, than fire continuously, it's very likely you'll end up with 10 FPS or something, especially with the LG...).
So, blood drops, explosion decals etc. CAN still decrease your FPS alot, you can turn those things off, if you want. They can be turned off mainly by the cg_ cvars (e.g.: cg_marks, cg_brassTime, cg_noProjectileTrail, cg_gibs etc.)
As far as rendering cvars are concerned I personally prefer to check them one by one for your personal preference.
Some of them will drop FPS a lot e.g.: (r_ext_multisample and r_ext_max_anisotropy). Those cvars are related to rendering methods known as 'Anti-aliasing' and 'Anisotropic filtering' both of them will decrease FPS in any game, this is NOT ioquake3 specific.
Personally I choose the most beautiful rendering settings as possible, so I always turn them on to a value as high as possible, probably you will turn them off, to gain as much FPS as possible. As already said it heavily depends on your hardware and your preference.
Also don't forget to consider the networking cvars, they will influence the 'lag' of your network gaming experience. Especially those settings will depend alot on your connection method and quality.
So all in all, I think there is a good reason why the cvars are set to a decent DEFAULT value.
Besides of that I recommend to clean up your cfg! cg_trueLightning doesn't need to be: 1000000000000000000000000000000000000000000000000000000000000000000000000
Moreover, all the xp cvars are of no use in ioquake3. Though, this should not harm anything...
... just a few thoughts!