Về mặt thiết kế ngôn ngữ, thực sự không có bất cứ điều gì khiến Go đi chậm hơn Java nói chung. Trong thực tế, nó cho phép bạn kiểm soát nhiều hơn về bố cục bộ nhớ của các cấu trúc dữ liệu của bạn, vì vậy đối với nhiều tác vụ phổ biến, nó sẽ nhanh hơn một chút. Tuy nhiên, trình biên dịch Go chính, trình lập lịch biểu, trình thu gom rác, thư viện regrec và nhiều thứ khác không được tối ưu hóa đặc biệt. Điều này đang dần được cải thiện, nhưng trọng tâm dường như là hữu ích, đơn giản và đủ nhanh để giành chiến thắng trong các điểm chuẩn vi mô.
Trong điểm chuẩn được liên kết, Go thua lớn với Java trên cây nhị phân và kiểm tra regrec. Đó là những bài kiểm tra của hệ thống quản lý bộ nhớ và thư viện regrec tương ứng. Quản lý bộ nhớ của Go có thể nhanh hơn và chắc chắn sẽ cải thiện theo thời gian và thư viện regrec tiêu chuẩn hiện tại là một trình giữ chỗ để triển khai tốt hơn nhiều sắp tới. Vì vậy, mất hai thứ đó không đáng ngạc nhiên, và trong tương lai gần, biên độ sẽ hẹp hơn.
Đối với điểm chuẩn k-nucleotide, hơi khó so sánh vì mã Java dường như đang sử dụng một thuật toán khác. Mã Go chắc chắn sẽ được hưởng lợi từ các cải tiến trình biên dịch, trình lập lịch biểu và phân bổ sắp tới, ngay cả khi được viết, nhưng ai đó sẽ phải viết lại mã Go để làm điều gì đó thông minh hơn nếu chúng ta muốn so sánh chính xác hơn.
Java giành chiến thắng trong tiêu chuẩn mandelbrot bởi vì tất cả đều là số học và vòng lặp dấu phẩy động và đây là nơi tuyệt vời để JVM tạo mã máy thực sự tốt và nâng mọi thứ trong thời gian chạy. Go, so sánh, có một trình biên dịch khá đơn giản mà không cần nâng, bỏ kiểm soát hoặc tạo mã máy thực sự chặt chẽ hiện tại, vì vậy không có gì đáng ngạc nhiên khi nó bị mất. Tuy nhiên, ta nên nhớ rằng thời gian Java không tính thời gian khởi động JVM hoặc số lần cần chạy để JVM chạy JIT một cách độc đáo. Đối với các chương trình dài hạn, điều này không liên quan, nhưng nó quan trọng trong một số trường hợp.
Đối với phần còn lại của các điểm chuẩn, Java và Go về cơ bản là cổ, với Go chiếm ít bộ nhớ hơn và trong hầu hết các trường hợp ít mã hơn. Vì vậy, trong khi Go chậm hơn Java trong một số thử nghiệm đó, thì Java khá nhanh, Go so sánh khá tốt và Go có thể sẽ nhanh hơn đáng kể trong tương lai gần.
Tôi đang mong chờ khi gccgo (trình biên dịch Go sử dụng codegen gcc) đã hoàn thiện; điều đó sẽ khiến Go trở nên phù hợp với C cho nhiều loại mã, điều này sẽ rất thú vị.