MakieOrg / Makie.jl

Interactive data visualizations and plotting in Julia
https://docs.makie.org/stable
MIT License
2.38k stars 302 forks source link

Unreponsive REPL with GLMakie when screensaver activates #1797

Open maleadt opened 2 years ago

maleadt commented 2 years ago

I'm using Makie with GLMakie over SSH on a server that has NVIDIA graphics, setting DISPLAY to the local X server so that I can plot to a file:

$ DISPLAY=:0
julia> using GLMakie
julia> x = range(0, 10, length=100)
julia> y = sin.(x)
julia> save("plot.png", lines(x, y))

This works perfectly fine, until the screen saver (presumably DPMS) activates and blanks the local screen. At that point, plotting still works, but the REPL becomes extremely unresponsive even when not doing any plotting (i.e., just entering RETURN to refresh the prompt takes multiple seconds). However, CPU usage does not increase, so this seems different from https://github.com/JuliaPlots/Makie.jl/issues/1683.

The fact that non-Makie related operations slow down too is weird. Does Makie install a REPL hook?

SimonDanisch commented 2 years ago

Not really, should be a task eating up blocking the REPL I suppose.. Maybe there is a renderloop going amock after blanking the screen.

maleadt commented 2 years ago

Probably, yeah. It's curious that I don't experience this with other packages/workflows, only after having done something with GLMakie.

SimonDanisch commented 2 years ago

Well, not every package starts a renderloop, I suppose 🤷 It's also likely, that GLFW + GLMakie don't handle vanishing screens to gracefully, since it's hard to test.

maleadt commented 2 years ago

Sure, I'm not familiar with Makie's internals, this is purely a report from what I notice as a user.