pprof disasm is not work right after go 1.16
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- go
- Lĩnh vực
- devtools, performance
Hướng nghiên cứu
Tái hiện báo cáo bằng cách sử dụng main.go để tạo cpu.pprof, sau đó chạy go tool pprof bin cpu.pprof và lệnh disasm rand trên thiết lập macOS arm64 đã nêu. So sánh đầu ra với Go 1.16 và Go 1.17.4; hoàn tất khi disasm hiển thị assembly có chú thích của routine thay vì chỉ hiển thị tổng số.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Please answer these questions before submitting your issue. Thanks!
What version of pprof are you using?
yangjie05-mac:awesomeProject35 jie.yang05$ go version
go version go1.17.4 darwin/arm64
What system os and processor architecture are you using?
macos
yangjie05-mac:awesomeProject35 jie.yang05$ arch
arm64
What did you do?
I run my code and want to get disasm from the cpuprofile.
code:
package main
import (
"math/rand"
"os"
"runtime/pprof"
"time"
)
var global int
func main() {
f, _ := os.Create("cpu.pprof")
pprof.StartCPUProfile(f)
t := time.After(3 * time.Second)
loop:
for {
select {
case <-t:
break loop
default:
global = rand.Int()
}
}
pprof.StopCPUProfile()
f.Sync()
f.Close()
}
script:
go build -o=bin main.go
./bin
go tool pprof bin cpu.pprof
disasm rand
What did you expect to see?
expect to see (which i run in my macos with same code but go version 1.16)
(pprof) disasm rand
Total: 2.67s
ROUTINE ======================== math/rand.(*lockedSource).Int63
450ms 450ms (flat, cum) 16.85% of Total
220ms 220ms 106ce80: MOVQ GS:0x30, CX ;math/rand.(*lockedSource).Int63 rand.go:387
. . 106ce89: CMPQ 0x10(CX), SP ;rand.go:387
. . 106ce8d: JBE 0x106cf90
. . 106ce93: SUBQ $0x20, SP
. . 106ce97: MOVQ BP, 0x18(SP)
. . 106ce9c: LEAQ 0x18(SP), BP
. . 106cea1: XORL AX, AX ;rand.go:388
. . 106cea3: MOVQ 0x28(SP), DX
. . 106cea8: MOVL $0x1, BX
. . 106cead: LOCK CMPXCHGL BX, 0(DX)
60ms 60ms 106ceb1: SETE BL ;math/rand.(*lockedSource).Int63 rand.go:388
What did you see instead?
nothing but total
(pprof) disasm rand
Total: 2.63s
(pprof)
- Ngôn ngữ chính
- Go
- Star
- 9.3k
- Fork
- 683
- Merge trung bình
- 2 ngày 4 giờ
- Pull request đã merge (30 ngày)
- 11
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của google/pprof
-
Make comments more discoverable in the web UICó thể đã có người làm @jabrailkhalil đã nhận 23 ngày trước. Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 45/100
google/pprof#1029 · 1 reaction ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 74/100
google/pprof#1020 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
pprof cannot locate source code for the list command in common Go setupsCó thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 48/100
google/pprof#1009 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Label with zero int64 value and no unit get dropped during decodingCó thể đã có người làm @ms-hujia đã nhận 128 ngày trước. Đang mở
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 55/100
google/pprof#1002 · 6 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 42/100
google/pprof#992 · 4 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Issue tương tự
-
compress: block buffers get re-zeroed on every call, and the zeroing is immediately overwrittenĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
ClickHouse/ch-go#1218 ·
Maintainer thường phản hồi trong vòng 13 ngày
-
automation models
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Make --data-dir a required flagĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 77/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
podman-container-tools/podman#30031 ·
Maintainer thường phản hồi trong vòng 1 ngày