Thanks all. Jesper: I will try those things and may look to force a GC when I do my redcuing of the map. Your explanation was very useful! The application is processing a fast stream from RabbitMQ so yeah there is a lot of throughput onto this map.
Egon: Can you explain what to and why this would help? 刘桂祥: I do currently have it as map[string]*struct, how will changing it (in what I can see two places) make a difference. The key to a byte and then a value in the map. Thanks again, Lee On Friday, April 21, 2017 at 3:39:07 AM UTC+1, 刘桂祥 wrote: > > try use value type > example: > map[string]*struct => map[[20]byte]struct > > 在 2017年4月20日星期四 UTC+8下午9:49:49,Lee Armstrong写道: >> >> See attached graph which shows the GC pauses of an application we have. >> >> I am frequently seeing pauses of 1-1.5 seconds. This is using Go 1.8.1 >> and have a large map that is frequently accessed and items are removed and >> added to it. These can be of some size. >> >> Is there a way to get these pauses down at all? Would forcing a GC() >> after removing a batch of elements help at all? >> >> Alongside the pauses I see some substantial CPU usage showing up in >> traces for the GC scan. >> >> Thanks in advance! >> > -- 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.