Go

Performance Optimization

Profiling, benchmarking, CPU profiling, memory profiling, bottleneck analysis, optimizations

22 питань зі співбесід·
Senior
1

What is the pprof tool in Go?

Відповідь

pprof is Go's built-in profiling tool that analyzes CPU, memory, goroutines and other metrics. It generates binary format profiles that can be analyzed with go tool pprof. This tool is essential for identifying performance bottlenecks and optimizing Go applications in production.

2

How to enable CPU profiling in a Go application?

Відповідь

CPU profiling is enabled with pprof.StartCPUProfile(file) and stopped with pprof.StopCPUProfile(). This approach captures CPU usage during program execution. For web applications, using the net/http/pprof package automatically exposes profiling endpoints.

3

What is the difference between CPU profiling and memory profiling?

Відповідь

CPU profiling measures time spent in each function to identify execution bottlenecks, while memory profiling measures memory allocations to detect leaks and excessive usage. CPU profiling uses sampling every 10ms by default, memory profiling captures all allocations or a sample depending on configuration.

4

How to create a benchmark in Go with the testing package?

5

What does the result '1000 ns/op' mean in a Go benchmark?

+19 питань зі співбесід

Опануй Go для наступної співбесіди

Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.

Почни безкоштовно