This thread is dedicated to the differences between the two main classes of server objects in SC.
In Mapping & Visualization in SuperCollider, there is a piece which explicitly modifies the default server arrangement, which the the provided explanation that the code could only run using the internal server at the time it was written.
With the visual-based performance distinctions between AppClock
and SystemClock
being all but undocumented this subtle nuance comes with a grain of curiosity, given that the only distinctions made between server objects in Server Guide under Local vs. Internal are:
Regarding Server.local
ā¦ while :
However:
Which leaves one with the impression that the internel server is all but deprecatedā¦ the light of itās service extending only to legacy compositions from a past era (or some aspect of SuperColliderās past weāre not entirely aware of) ā¦and so why would one ever use it?
Remembering the piece from Mapping & Visualization in SuperColliderā¦ in which only the internal server could reliably produce results for ScopeOut
, I recently decided to start using the internal server, over the local server, as the default setupā¦ finding it to be :
- More stable (crashes less)
- Faster on initial / startup boot
- Faster reboot (before and after crash)
ā¦and even though the position that Server.local
is generally more robust (given that server-side compositions will persist in the light of client / interpreter derailmentā¦) Iāve since come to the realization that this is not the only argumentā¦ and the internally bound server (using the dedicated IDE) has held every competing advantage over (with what is, to my understanding: a remote server sharing the same networking address as oneās current (local) IP) the local server, which after some consideration, would only seem only to make senseā¦ that the former would be yield a more stable performance than the latter, given that it is accessible through one less layer of abstractionā¦ or:
āThe less that can go wrong, willā¦ā
TL;DR:
Certain (undocumented) performance distinctions exist between two classes of server objects in SC.
Also worthy of mention, are performance based distinctions between the two remaining classes of Server objects: remote servers, and server objects made using custom setup values.