chavvdarrr
Veteran
afais the highs are when lights are "behind the camera"fellix said:Here is a the "strange" FPS oscillation with branching enabled in the new version compared to the flat FPS graph where branching is disabled:
afais the highs are when lights are "behind the camera"fellix said:Here is a the "strange" FPS oscillation with branching enabled in the new version compared to the flat FPS graph where branching is disabled:
chavvdarrr said:very interesting.
With new version without branching I get almost constant 120fps in default window (all but branching ON)
With branching off, fps start to jump between 100 and 150, more often around 110-115, so on average its ~ same fps, but with wide variations.
It seems to me that IF branches can eliminate enough workload even Nv cards can show some small gains .
are you sure you force vsync off ?Ailuros said:I don't notice any difference in framerate fluctuations which are small here anyway whether AA/AF enabled or disabled, branching on or off and that both with 84.25 and 84.43.
I don't even notice any other difference between the older and the new version in framerate behaviour either.
chavvdarrr said:are you sure you force vsync off ?
I'd expect higher fps from 7800... perhaps your high res&AA/AF limit the fps?
fellix said:Here is a the "strange" FPS oscillation with branching enabled in the new version compared to the flat FPS graph where branching is disabled:
sorry, I didn't saw the resolutionAiluros said:69 fps at 2048*1536 is more than a decent measuring and all of those are with the GPU clocked at 490/685MHz.
Okay, neat. I was going to ask you why you didn't put the bump normalization and reflection in the branch, but then I realized you need that same info for every light. If it was in the loop you'd have to jump over it after the first light, and I figured it'd be too much trouble.Humus said:3 lights. And some texture lookups (the shadow map) is within the branch. I just uploaded a new version where I've tweaked the branching to improve performance. I added an outer branch condition on all light radii that will put the bumpmap lookup and some math inside the branch. The single pass dynamic branching path is now about 40% faster than no branching on my X1800XL.
Alstrong said:With fluctuations like that, I would rather not have the dynamic branching... but I suppose this is an isolated case :|
Alstrong said:With fluctuations like that, I would rather not have the dynamic branching... but I suppose this is an isolated case :|
According to RoObo, that is the case: 80-90 without, 80-120 with DBNocturnDragon said:On a efficient DB hardware the lows on the left should be (in the worst case) on par with the constant part in the right. So it should be all good (can someone with a radeon so the same measurement?
Ailuros said:I'd figure that the driver takes that decision for you in real time conditions
Alstrong said:With fluctuations like that, I would rather not have the dynamic branching... but I suppose this is an isolated case :|
fellix said:Anyone with x1K hardware care to take the same meashurment? Would be nice to compare with the "threadless" nV couterparts.
fellix said:So, the possible conclusion is that, if there is a lot of light sources in the viewport (scene at all) the lower fps will be for most of the time, so it's clear that dynbranching is generaly not recomended here for my case, but it is obvious that on less complex scenes branching is able to catch a few more frames out there despite the lack of fine-grained threading of the batches.
fellix said:Humus, is it possible to define some more lights in your demo - i think it could be a good run for a kind of DynBranch benchmark.