06-10-2012, 11:46 AM
CPU bound. I'll have to quote divVerent here:
Code:
divVerent> what really reduces total fps is model animation
divVerent> once someone manages to move that to the GPU, we will have huge win
divVerent> just not doing model animation on the CPU, but working the same way otherwise only gained 5%
divVerent> even though in profiling, model animation is 50%
divVerent> which is explained by the nvidia driver being multithreaded itself
divVerent> so the vertex upload is offloaded to a thread - and takes about as long as our vertex processing
divVerent> if we did model animation on the GPU instead, we wouldn't have to upload the vertexes each frame
divVerent> and THEN it's substantially faster
divVerent> there also is a cvar
divVerent> by which you can try what fps you would get with on-gpu animation
divVerent> mod_alias_force_animated 0
divVerent> turns off all animation
divVerent> (then do r_restart)
divVerent> it loads all models as static meshes of the reference pose
divVerent> looks ridiculous, but gives quite a fps boost
divVerent> it has very similar performance to what we would get with on-GPU animation
divVerent> this for me gave about 30% fps
divVerent> with about 20 players visible
divVerent> and - CPU load below 100%
divVerent> so, GPU bound again
divVerent> but it isn't saved as it's ugly
"One should strive to achieve; not sit in bitter regret."