I use a simple method of spreading function calls out in the main loop e.g.
gFrame=0 ;main loop While Not KeyHit(1) gFrame=(gFrame+1) Mod 100 If gFrame Mod 2=0 Then Update_AI() ;call every 2 frames If gFrame Mod 4=0 Then Update_Physics() ;call every 4 frames If gFrame Mod 10=0 Then Update_Rooms() ;call every 10 frames Wend