[3.9-beta1] Server.internal freezes on boot?

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

[3.9-beta1] Server.internal freezes on boot?

patrick

Hi all,


Can someone please confirm that server.internal freezes on boot on current git 3.9? It would be useful to know if this is also the case on 3.9-beta1.


Thanks!

Patrick

Reply | Threaded
Open this post in threaded view
|

Re: [3.9-beta1] Server.internal freezes on boot?

patrick

Nervermind... It may have just been me.


Cheers!

Patrick

Reply | Threaded
Open this post in threaded view
|

Re: [3.9-beta1] Server.internal freezes on boot?

jamshark70-2
In reply to this post by patrick
---- On Sat, 16 Dec 2017 07:18:54 +0800 <[hidden email]> wrote ----
>  Can someone please confirm that server.internal freezes on boot on current git 3.9? It would be useful to know if this is also the case on 3.9-beta1.

I can't confirm a freeze:

Server.default = Server.internal;
s.boot;

().play;  // I hear middle C

But, the IDE's server status bar does not update. The server window in sclang works just fine.

Hm, I'm not sure if the internal server even listens for UDP. If that's the case, maybe it was a bad decision for the IDE to communicate with the server directly instead of going through sclang.

I think that is the case. As a test, I booted the internal server in the IDE. Then I ran a separate sclang from the commandline:

sc3> o = OSCFunc(_.postln, '/status.reply');
-> OSCFunc(/status.reply, nil, nil, nil)
sc3> NetAddr("127.0.0.1", 57110).sendMsg("/status");
-> a NetAddr(127.0.0.1, 57110)

... and that was it. But, if I quit internal, boot local, and do the same thing, the OSCFunc prints:

[ /status.reply, 1, 0, 0, 2, 136, 1.1990168094635, 1.2027388811111, 44100, 44100.068966276 ]

So, confirmed: when the IDE tries to contact the internal server, the message can't go through.

This will confuse users, so IMO the documentation should discourage the use of the internal server. Probably avoid mentioning it at all, except as a footnote somewhere.

hjh


_______________________________________________
sc-dev mailing list

info (subscription, etc.): http://www.birmingham.ac.uk/facilities/ea-studios/research/supercollider/mailinglist.aspx
archive: http://www.listarc.bham.ac.uk/marchives/sc-dev/
search: http://www.listarc.bham.ac.uk/lists/sc-dev/search/
Reply | Threaded
Open this post in threaded view
|

Re: [3.9-beta1] Server.internal freezes on boot?

patrick

Thanks James.


I had an non-booting internal server for a brief moment. Rebuilding SC did the trick. I'm not sure what went wrong.


Indeed, the IDE server status doesn't light up when the internal server is running. I think it would be best to discourage the use of this particular server. (what is its intended use?). I want to point out that, unlike the IDE server status, 'server.makeGui' works fine with the internal server.


Cheers,

Patrick

Reply | Threaded
Open this post in threaded view
|

Re: [3.9-beta1] Server.internal freezes on boot?

jamshark70-2

On December 17, 2017 12:28:27 [hidden email] wrote:

> (what is its intended use?)

Before there was the shared memory interface, the internal server was the only way to support scope and freqscope.

With SHM, there's no longer any compelling reason to use it (none that I know of).

hjh

Sent with AquaMail for Android
http://www.aqua-mail.com

Reply | Threaded
Open this post in threaded view
|

Re: [3.9-beta1] Server.internal freezes on boot?

julian.rohrhuber

> On 17.12.2017, at 06:39, [hidden email] wrote:
>
> On December 17, 2017 12:28:27 [hidden email] wrote:
>
> > (what is its intended use?)
>
>
> Before there was the shared memory interface, the internal server was the only way to support scope and freqscope.
>
> With SHM, there's no longer any compelling reason to use it (none that I know of).
The only reason I know is that separate apps require context switches (https://en.wikipedia.org/wiki/Context_switch). This might be relevant to single cpu-systems like the raspi.



signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [3.9-beta1] Server.internal freezes on boot?

jamshark70-2
On December 17, 2017 21:37:25 [hidden email] wrote:

> The only reason I know is that separate apps require context switches
> (https://en.wikipedia.org/wiki/Context_switch). This might be relevant to
> single cpu-systems like the raspi.

I'll admit that I'm not up on the details here, but I always thought that
some form of context switch was required for a CPU core to change from one
thread to another, not only one process to another. I'm fairly sure that it
isn't significantly lighter to switch threads in the same process than to
switch to a thread in a different process. Memory management *might* be
different, but I can't imagine that it would be any more or less costly to
save register state in one case or the other.

Saying that "separate apps require context switches" would seem to imply
that threads in the same process would not need them -- I'm quite certain
that's not true. It's impossible for the CPU to suspend the state of a
thread without saving it somewhere.

hjh

Sent with AquaMail for Android
http://www.aqua-mail.com




_______________________________________________
sc-dev mailing list

info (subscription, etc.): http://www.birmingham.ac.uk/facilities/ea-studios/research/supercollider/mailinglist.aspx
archive: http://www.listarc.bham.ac.uk/marchives/sc-dev/
search: http://www.listarc.bham.ac.uk/lists/sc-dev/search/