Discuss the various performance optimization techniques and best practices in Go, and how to measure the performance of Go programs?