Andrey Syvrachev
Andrey Syvrachev
good idea) will test later)
> > Also, as in performance graph I think reference count change not takes a lot of time. > > There are __swift_retain_HeapObject - means allocation, but not increment reference...
> ```swift > CircularBuffer > ``` I have just tested this, but it is not enough (a lot of Promises cause retain/release), and these promises must be reused too. But...
"limit the number of outstanding tasks that execute in any event loop tick" Yes, EventLoop mechanics means that every operation is very small. And only prioritisation can help in this...
In Real world: We have limited resources on server. Simple example 1 CPU Core + 1 GB Ram (it may covers up to 100000 tcp connection or 20000 ssl). So...
I think it is related to Swift-NIO architect. Too much Feature/Promise alloc/dealloc per one connection. The only way is preallocate and defer deallocation of resources during processing. I think we...
> @AnyCPU your issue isn't related to this. I recommend you to do workaround. So create more threads (approx not more 5000 connections per thread)
> > I think it is related to Swift-NIO architect. Too much Feature/Promise alloc/dealloc per one connection. > > The only way is preallocate and defer deallocation of resources during...
> > I'm not think that atomic increment/decrement of retain count takes a lot of time. > > But the very first malloc and the last free - takes a...