MCUViewer icon indicating copy to clipboard operation
MCUViewer copied to clipboard

Renders at only 30fps (half a refresh rate)

Open dzid26 opened this issue 9 months ago • 5 comments

image

Tested with:

	std::string fpsStr = std::to_string(ImGui::GetIO().Framerate);
	ImGui::Text(fpsStr.c_str());

dzid26 avatar May 04 '24 20:05 dzid26

Do we really need more? With many points on the viewport the interface starts to get laggy - I would expect it to only get worse with higher fps. I think this should stay as it is, at least to the moment the points displaying algorithm is optimized (so that it displays the least amount of points able to represent the shape of the waveform).

klonyyy avatar May 04 '24 20:05 klonyyy

It does look much better at full refresh rate. It stutters often, just like any Windows windowed app, but I think that is dwm related.

I don't get why FPS eventually drops to 30fps when there is many points accumulated (not even displayed, just accumulated) - When that happens the GPU usage is still low (13%) and single core is only at about 30%. (I find fps counter helpful to identify when this happens.)

When acquisition is restarted, FPS goes back up again.

Overall, I prefer that to always have it capped to half refresh rate..

dzid26 avatar May 05 '24 12:05 dzid26

Btw, if I put 100 max points and 100 view points image why is there many more points visible after zooming out ? image

I might be misinterpreting this, but I thought that if the values are matching there shouldn't be more points stored than there is visible on the rolling view.

(Currently on devel.)

dzid26 avatar May 05 '24 20:05 dzid26

This is a bug (#62). Just fixed it - thanks for reporting it.

klonyyy avatar May 07 '24 19:05 klonyyy

It does look much better at full refresh rate. It stutters often, just like any Windows windowed app, but I think that is dwm related.

I don't get why FPS eventually drops to 30fps when there is many points accumulated (not even displayed, just accumulated) - When that happens the GPU usage is still low (13%) and single core is only at about 30%. (I find fps counter helpful to identify when this happens.)

When acquisition is restarted, FPS goes back up again.

Overall, I prefer that to always have it capped to half refresh rate..

This is something that I'd have to investigate in more detail. Currently it's not my top priority so I will not be to look into it soon. Feel free to work on it yourself though and if you do make sure to create a PR for it :)

klonyyy avatar May 07 '24 19:05 klonyyy