Hello,

This caught my eye from the go1.12beta1 release notes:

On Linux, the Go runtime now releases memory back to the operating system 
> only when the OS is under memory pressure. This is more efficient, but 
> means a process's RSS (resident set size) won't decrease unless the OS is 
> running out of memory.


I work on Go programs that are deployed on sometimes memory-constrained 
Linux systems that run many other non-Go processes. At least the optics of 
a process consuming nearly all system memory is concerning to me. In 
addition, I'm concerned about how quickly the go runtime will react to a 
sudden increase in memory pressure.

Can I get a pointer to any documentation or code that discusses what 
triggers the runtime to release memory and how quickly it will react? Can 
this behavior be controlled by any flags?

One solution we could implement is to periodically run debug.FreeOSMemory, 
but that doesn't sound so nice.

Thanks,
Aaron

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to