Hard telling what it going on. 35MB, even for 1 CPU, seems very small. Most 
modern system provision more than 1GB per HW thread though I've seen some 
provision as little as 512MB. GOGC (SetGCPercent) can be adjust so that the 
application uses more of the available RAM. Running with GODEBUG=gctrace=1 
will give you a sense of the GC's view of the application.

In any case these kinds of numbers, running on a real systems, and 
duplicatable on tip are worth filing an issue.

On Saturday, December 2, 2017 at 3:02:30 AM UTC-5, Henrik Johansson wrote:
>
> Hi,
>
> I am befuddled by GC SW times on several seconds (seen 20s once) in the 
> metrics page for our app. There are several things that are strange but 
> perhaps I am misreading it. The same metrics page reports Max Total 35 MB 
> out of which 1 MB s swap the rest RSS. The response times on the service is 
> has 99% ~400 ms which is not good but 95% is ~120 ms usually. 
> The app reloads an in memory cache as needed using atomic,Value as a 
> holder and the size is no more than a few thousand at any given time.
> Basically a map with pointers to simple structs and lists with pointers to 
> the same structs to allow for some simple access scenarios.
>
> Now I haven't profiled the app yet but even in a very pathologial case it 
> seems as though the GC would be able to keep up easily with such little 
> amount of memory being used. Granted this is a Standard 1x dyno but even so 
> once the machiine is stopped the GC should be able to complete it's work in 
> a very short time given the low used memory.
>
> Has anyone seen this as well? Could the Go metrics on Heroku simply report 
> erroneously? Perhaps a couple of orders of magnitide?
>
> Cheers,
>
>

-- 
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