InGame im Grafikmenü "Vertikale Synchronisation"
OMG aktivier bei BF3 bloß nicht VS!
Öffne den Editor und schreib folgendes rein:
gametime.maxvariablefps 60
oder eine andre FPS deiner Wahl statt der 60.
Dann speicherst du das Ganze als "user.cfg" in dem Ordner in dem auch deine BF3.exe liegt.
Damit setzt BF3 ein Frame-Limit auf den von dir gewünschten Wert.
Das VS bei BF3 spinnt manchmal und setzt dir die Frames dann grundlos auf ein vielfaches von 60 bzw auch auf die hälfte was du dir nicht wirklich antun willst.
EDIT:
Mir fällt grad ein, du kannst auch noch folgendes in die user.cfg schreiben:
render.PerfOverlayVisible 1
Damit Aktivierst du ein Overlay, was die die Rendergeschwindigkeit von GPU und CPU in Millisekunden anzeigt. Damit kannst du schön analysieren wann es zu Ausreißern kommt und wer sie verursacht. Zu beachten ist, je tiefer der Graph wandert um so mehr FPS hast du dabei sind die Mitte 30 FPS.
Willst du das Overlay nicht mehr, löscht du einfach die Zeile aus der user.cfg.