been following the discussions on these issues due to myself experiencing it as well since the beta (technical playtest actually already, but there the server tickrate was lower as well, why client-side performance issues werent that obvious), and the main "problem" - apart from the pretty obvious real problem with the game code - is diffuse unprecise communication on it by the players; simply stating low (perceived) fps, gpu underused, cpu @ 100% is what most people see and report.
already mentioned it earlier, but need to stress it again: do not use an external fps monitoring tool like msi afterburner/rivatuner, origin/steam overlay etc. and report what fps you see in-game displayed by these, especially not task manager > performance for the gpu usage. they only capture gpu-rendered fps, and these - in my case for example - can fool you, as the gpu may render far beyond 60fps while the cpu quietly bottlenecks the complete game rendering, no matter how used/unused they are according to external tools.
use perfoverlay.drawfps 1 in the in-game console, since this one displays the cpu- & gpu-rendered fps (and their frametimes) seperately.
in my case, my gpu renders constant green 75+fps, even on mostly high graphics settings, while the cpu renders barely ever more than 50fps (yellow), mostly below 45 fps (red), no matter what grahics settings i set, and hence perceived performance is as bad as the true rendering of the game is, namely <45fps constant stuttering, lags, bad hitreg, input delay etc. just looking at my gpu-rendered fps would fool me into thinking my game is running at more than enough fps anyway and it still seems bad.
altering the cpu worker thread usage (through cfg commands of course, not system-wide) does affect the game's performance, but only if set to too low. the game uses mostly 8 threads, 6 work fine for me as well, more than 8 are not used (only when duty cycling kicks in, some thread tasks may switch to previously unused cores, but previously used are unused then, why it may seem as if more than 8 threads are used).
this even more hints at desperately needed cpu-bound game code optimization.