AnsweredAssumed Answered

vsync in crossfire mode

Question asked by asmzx on May 17, 2012
Latest reply on May 21, 2012 by kcarney

MSI Z68A-GD65 (MS-7681)  (2 PCI, 3 PCI-E x1, 2 PCI-E x16, 4 DDR3 DIMM, Audio, Video, Gigabit LAN)

Intel Core i7-2600K, 3400 MHz (34 x 100)

3х crossfire. ati hd6990+hd6970.


Catalist 11.12(drivers 12.1-12.4 do not fit, as they contain bug at direct compute,

But as well as without using direct compute the result/behavior is similar).



The diagram shows time in ms between frames – time interval from 0 to 33 ms. Scene (screen) is empty, i.e. without synchronization 1700 fps on the average.



As you can see at the diagram the time between command calls - directx11 Present is jumping and from time to time you can see vast difference, i.e. displaying of one frame takes 33 ms and of the other 0 ms. This happens with the frequency in 10 sec.

As the partial problem-solution can be setting of Сpu Affinity for 3 cores.

As the result the diagram will look as follows:



i.e. without sudden change in fps.


During camera movement at the scene, the diagram will look like this.

Gpu is loaded at approximately 40%, instead of even diagram, we become jumps.

To achieve smooth depiction of movement by the scene, fps should be exactly 60 and the time between frames should be identical.

I suppose, the problem in the command ‘Present’.

It’s strange, having 60fps by scene displaying, the difference between calls of command ‘present‘ can be so big (instead of expected 16ms, we have from 8 to 24 ms). May be we measure the time in wrong way?