-
Notifications
You must be signed in to change notification settings - Fork 17
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
plotter-4.scd not working on Arch Linux #135
Comments
Thanks for filing the issue, I'm the OP of that thread. Some more info: Platform: Latest x86_64 Arch Linux Here's an isolated version of the code I'm trying to run (taken from the 2D Corpus Explorer tutorial, part 5 -
When evaluating everything in order, everything works up until the "analysis" part. When running this last region, I get the following output:
At this point, the analysis gets stuck without producing any errors. Occasionally, upon rebooting the interpreter/server and trying again, it reaches slice 200 before stopping. Changing
|
I'm also on arch and I see the same problem: something is wrong in the sync mechanism, so the analysis gets stuck. In my practice with SuperCollider I noticed the same problem when loading a large number of buffers in parallel. Apparently some My workaround for these situations is not to rely on
However, using
There is also FluidHelper.analSlices, which illustrate the Semaphore process. Another solution which I found working is to make a bundle for, say, 100 slices, and sync that:
If bundles are too big, it shows a very scary buffer overflow error. However, the error is harmless because SC handles it automatically by splitting the big bundle in smaller ones. |
Thanks everyone. I have an Arch VM so I'll try and reproduce / diagnose when I can, but UDP packet loss does seem like a possible cause. I general having to rely on robust client-server conversations to the extent that we do for batch buffer processing makes me sad, but I've not yet hit on an alternative. @elgiano thanks for the encapsulations of Nice Things. I'll have a look... |
News: I confirm that there's a problem with UDP: sclang drops some messages if they come too fast/too many. |
Hmm. Interesting. Thanks @elgiano for your investigating and reporting! |
@elgiano I just had a quick skim of the discussion on that SC issue. Those responses pointing out that this is an inherent feature of UDP are, unfortunately, right: packet loss is just a risk under heavy traffic. Dealing with this robustly is an interesting problem for us. Clearly we can't just force people to use TCP, yet we have quite a few points where we'd like robust communication between client and server, especially when doing a whole queue of buffer processes. One possibility might be devising some sort of timeout / back-off scheme language side, so that jobs don't simply stall waiting for replies that may never arrive. Even better (but much more work) would be a way of specifying a whole pipeline of work to the server (which would reduce network traffic, and synchronisation overhead). I'll have a think, but there's definitely a fundamental brittleness here for SC batch buffer processing that I'd like to be able to address in the medium-term. |
This appeared over on the SuperCollider forum.
https://scsynth.org/t/tutorial-coding-a-2d-corpus-explorer/6357/2
It seems that this file (see below) is getting stuck on Arch Linux.
The text was updated successfully, but these errors were encountered: