Re:Write Fast Apps Using Async Python 3.6 and Redis
by hawski on Friday April 28, 2017 @06:55AM
(#14218373)
On most Linux systems stack is allocated with mmap with overcommiting. Until first write all those pages will share same zeroed page AFAIK. Then only overwritten pages will be allocated.
Am I wrong?
Re:Write Fast Apps Using Async Python 3.6 and Redis
by davesque on Thursday April 27, 2017 @10:52PM
(#14216568)
How do you save on stack space with asyncio? Don't you have to keep the coroutine object in memory somewhere?
Re:Write Fast Apps Using Async Python 3.6 and Redis
by bschwindHN on Thursday April 27, 2017 @11:19PM
(#14216658)
I think the idea is that these "coroutine objects" (or the equivalent structure in whatever language) is smaller than the typical stack size for a thread. For example, the default stack size on Windows is 1 MB. So if you have a thread per connection, obviously this is going to take up a decent amount of memory. I'm guessing the answer to this is a thread pool so your memory usage doesn't blow up.
https://msdn.microsoft.com/en-us/library/windows/desktop/ms6...
[1] http://byteworm.com/evidence-based-research/2017/03/04/compa...