-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MAINT: Tests taking too long #8242
Comments
I'll take a look as soon as I can @larsoner |
It's an item of #7162 |
In most of our tests, the plotters are actually closed just after rendering the scene so I'm not sure it's enough. I'll try it of course. I was thinking about turning |
This would actually kill the testing of MNE->pyvista->VTK, so it would be better to avoid this if possible. SetVisible, on the other hand, just kills VTK->GPU (in theory at least; we trust VTK to work at this level I think) |
But we set this actor property after everything is already mapped right? I think it's already too late for the GPU |
And by "no-op" I mean returning an actor with a mapper associated to no dataset. |
I'd be surprised if a complex scene involving volume rendering for example doing At the level of the GPU, even things like vertex shaders should have things in vertex and fragment shaders that just quit if they don't need to compute. At the level of the CPU, hopefully the volume rendering ray casting will only be polled by visible actors. In other words, hopefully the SetInputConnection stuff works smartly enough... |
From #8240 the conda job has:
EDIT: And the pip job:
Looks like
mne/viz
andmne/viz/_brain
are particularly painful.At least for
_Brain
it would be good to figure out where the overhead comes from -- this is going to contribute at least somewhat to themne/viz
speed as well. @GuillaumeFavelier can you look into it? I know we've looked before but it's worth revisiting again probably.For example I wonder if one little trick we could use is have a fixture that makes all objects in the scene
SetVisible(False)
-- if we don't actually look at the output, there's no real reason to burn software renderer cycles on it. For example we could have it in every test that uses pyvista except for one that does each type of rendering (vol, mixed, surf) so that it's still preserved one place. WDYT?The text was updated successfully, but these errors were encountered: