3 ms·
> Your assumptions are wrong, because when you run jBridge A B and C are sandboxed. Even if that is the case, it doesn't change anything about the point I was
by spacechild1 6y ago
> Your assumptions are wrong, because when you run jBridge A B and C are sandboxed.
Even if that is the case, it doesn't change anything about the point I was trying to make... I acknowledge that jBridge gives you a performance boost, but you're wrongly attributing it to sandboxing. That's all I'm trying to say.
- varispeed 6y agoSo why do you think there is huge performance boost when plugins are sandboxed and running in their own processes?
- spacechild1 6y agoI tried to explain this in https://news.ycombinator.com/item?id=25068976 https://news.ycombinator.com/item?id=25068976. Read the linked paper if you want to learn more about multithreaded DSP. To put it short: I think jBridge does “pipelining“ to avoid the context switch overhead. But pipelining can also be done without sandboxing, leading to even better performance. Without pipelining, sandboxing only gives you a performance loss. Sandboxing does not imply parallelism.
- spacechild1 6y agoPS: here's my own VST host with optional sandboxing and pipelining. Both features are orthogonal. https://github.com/Spacechild1/vstplugin https://github.com/Spacechild1/vstplugin Supercollider (scsynth) and Pure Data - both I'm contributing to -, have single threaded DSP. Users told me that they can use many more VST plugins when they enable the pipelining option in my extension, which matches your experience. Again, I can't look at the source code for jBridge. The only thing I know for sure is that sandboxing itself only causes performance loss.