4 ms·
I worked on Cinder, and on the web server. Happy to answer technical questions if any :)
by czardoz 3y ago
I worked on Cinder, and on the web server. Happy to answer technical questions if any :)
- feydaykyn 3y agoHi, Would you recommend using Cinder for stack made of - Django - Cython - Numpy Thanks!
- czardoz 3y agoIf this stack is heavily skewed towards numerical computations, Cinder might require a lot of tuning to be effective.
- vmsp 3y agoCan you expand on the web server? Does it implement WSGI?
- czardoz 3y agoIt has some elements of WSGI, but has expanded into its own thing which supports asyncio (this happened before ASGI was a thing).
- ntonozzi 3y agoWhat are the most impactful and likely features that you'd like to see merged into CPython?
- czardoz 3y agoI'd love to see lazy imports become part of the upstream at some point.
- whalesalad 3y agoWho would benefit from Cinder? What kinds of workloads? The README is kinda lacking on this.
- czardoz 3y agoCinder's feature set is highly optimized for IO bound web services that run under a forked-worker model. For example: you start a main process, warm it up with a few requests, run the JIT compiler and then fork off worker processes to handle the main chunk of traffic. As of now, it requires hand-tuning to get the best possible performance. In terms of use cases, Cinder does the best when faced with "business logic" code (lots of inheritance, attribute lookups, method calls, etc). It can speed up numerical computations too, but you're probably better off using a library if that's the majority of the workload.
- DirkH 3y agoThank you for offering to answer questions. Is Cinder something that could help optimize real-time streaming? We had a UDP stream and then through multiple gstreamer and nvidia deepstream magic (which I believe the senior dev implemented in Python) we perform some ML inference on the stream in real-time. However, latency is a major issue here and to get to our MVP we didn't really prioritize optimization, as is tradition. So now I'm wondering if Cinder as something that can be used to optimize real-time data streaming is a thing or whether me asking this just shows I don't understand its use case. Either way, thank you advance for your insight. (Also we used Django which I am now wondering if I should have switched out for FastAPI, but that's a separate question)