Paul Krill
Editor at Large

Google Go 1.8 steps up compilation, garbage collection

news
Feb 17, 20172 mins

Expect performance improvements for the compiler and shorter garbage collection for Go 1.8

Golang go puzzle pieces
Credit: Horia Varlan

Go 1.8, the latest version of Google’s popular open source language, is now available.

Officially released Thursday, version 1.8 focuses on compilation, garbage collection, and HTTP support. “The compiler back end introduced in Go 1.7 [last August] for 64-bit x86 is now used on all architectures, and those architectures should see significant performance improvements,” said Chris Broadfoot on behalf of the Go team. “For instance, the CPU time required by our benchmark programs was reduced by 20-30 percent on 32-bit ARM systems.”

Garbage collection, meanwhile, promises to be significantly shorter in Go 1.8 — usually less than 100 milliseconds and possibly as little as 10 milliseconds, Broadfoot said — standard library optimizations improve performance as well. HTTP/2 Push support lets servers preemptively send responses to a client, which minimizes network latency by eliminating round trips, and graceful shutdown of the HTTP server minimizes downtime by shutting down only after serving all requests in flight.

The Slice function in Go 1.8’s sort package makes it easier to sort slices, such as sorting a slice of structs in their Name field. The upgrade also increases support for contexts in more parts of the standard library, providing a mechanism for cancellation and timeout. Available in the Go 1.7 standard library, it has been expanded for usage in the database/sql and net packages and Server.shutdown in the net/http package.

Go 1.8 had been in a release candidate stage prior to this week’s general release. Offering capabilities in native concurrency and consistent behavior across platforms, Go has been a language making a mark on computing lately. Its most famous applications include the Docker container system and Kubernetes orchestration project for Docker. It has been rising up the charts in language popularity indexes, such as the Tiobe and PyPL indexes.

Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

More from this author