I certainly rcommend using timing as even if you turn vsync on gfx drivers can override it.
Here's a function I made in C to turn vsync on or off, probably better ways to do it but it code from a good few years ago and seems to work.
/*------------------------------------------------------------------------
' NAME : SwitchVsync
' PURPOSE : This function Sets vsync on off
' INPUTS : true or false
'------------------------------------------------------------------------*/
void SwitchVsync(bool sync)
{
BOOL (APIENTRY *wglSwapIntervalEXT)(int);
wglSwapIntervalEXT=( BOOL (APIENTRY*)(int) )wglGetProcAddress("wglSwapIntervalEXT");
if (sync=true)
{
wglSwapIntervalEXT(1);
}
else
{
wglSwapIntervalEXT(0);
}
}
One quick note, you need to have created the opengl context for this to work, so once you have your opengl window opened then call this function with true or false.