Golang 1.5以上版本中的垃圾收集器改进是否会影响分配的内存量?

Google's go has been making massive strides in the last 2 major versions to their garbage collector. The amount of time time the garbage collector is running is in near negligible amounts compared to what it was previously. I'm wondering if these improvements are at the sacrifice of anything else.

Does go 1.6 still deallocate just as much on a garbage collection run as go 1.4?

Does the garbage collection actually deallocate everything it possibly could at the point that it runs, or does it make concessions to speed things up?

It depends on your pattern of heap memory usage. The primary goals were efficient use of memory with more predictable and shorter pauses by the garbage collector (GC). To achieve this, there is some increase in CPU usage and, unless necessary, some garbage collection may be postponed to the next run of the GC. The GC will run more often and make better use of available cores. Generally, people report much shorter and more even pauses. Generally, it's a big win. Go 1.6 improves on Go 1.5, which was the first release of the new GC. Go 1.7 will be even better.

Careful programming to reduce unneccessary GC usage makes a big difference to performance.