закешированный к нам в целях безопасности дебаггер
Go to file
aarzilli b839eda2a9 proc/variables: prefetch of target process memory
Prefetch the entire memory of structs and arrays and cache it instead
of issuing readMemory calls only when we get down to primitive types.
This reduces the number of system calls to ptrace that variables makes.

Improves performance in general, greatly improving it in some
particular cases (involving large structs).

Benchmarks without prefetching:
	BenchmarkArray-4         	      10	 132189944 ns/op	   0.06 MB/s
	BenchmarkArrayPointer-4  	       5	 202538503 ns/op	   0.04 MB/s
	BenchmarkMap-4           	     500	   3804336 ns/op	   0.27 MB/s
	BenchmarkGoroutinesInfo-4	      10	 126397104 ns/op
	BenchmarkLocalVariables-4	     500	   2494846 ns/op

Benchmarks with prefetching:
	BenchmarkArray-4         	     200	  10719087 ns/op	   0.76 MB/s
	BenchmarkArrayPointer-4  	     100	  11931326 ns/op	   0.73 MB/s
	BenchmarkMap-4           	    1000	   1466479 ns/op	   0.70 MB/s
	BenchmarkGoroutinesInfo-4	      10	 103407004 ns/op
	BenchmarkLocalVariables-4	    1000	   1530395 ns/op

Improvement factors:
	BenchmarkArray				12.33x
	BenchmarkArrayPointer		16.97x
	BenchmarkMap					 2.59x
	BenchmarkGoroutinesInfo		 1.22x
	BenchmarkLocalVariables		 1.63x
2016-01-10 13:49:03 +01:00
_fixtures proc/variables: prefetch of target process memory 2016-01-10 13:49:03 +01:00
assets Add high-res images 2015-05-19 12:25:26 -05:00
cmd/dlv misc: cleanup and documentation 2016-01-10 02:10:51 -08:00
config Add config file and command alias config options. 2015-08-21 14:20:23 -05:00
dwarf proc/eval: support for simple builtin functions 2015-12-15 15:18:52 -08:00
Godeps main: Update vendored cobra for bugfix 2015-10-09 07:46:14 -07:00
proc proc/variables: prefetch of target process memory 2016-01-10 13:49:03 +01:00
scripts dev: Fixup Makefile and testsign script 2015-12-13 13:17:56 -08:00
service misc: cleanup and documentation 2016-01-10 02:10:51 -08:00
terminal misc: cleanup and documentation 2016-01-10 02:10:51 -08:00
vendor main: Update vendored cobra for bugfix 2015-10-09 07:46:14 -07:00
.gitignore git: Update gitignore 2015-10-20 20:55:11 -07:00
.travis.yml travis: allow failures on tip 2015-12-15 15:37:58 -08:00
CHANGELOG.md all: Bump to version 0.10.0-alpha 2015-10-04 11:17:46 -07:00
CONTRIBUTING.md docs: Update contributing doc 2015-09-17 07:10:56 -07:00
LICENSE Add License and README 2014-05-03 15:31:52 -05:00
Makefile build: Add git sha to version output 2015-12-15 08:38:22 +01:00
README.md Add travis CI 2015-08-04 08:03:35 -05:00

Delve

license GoDoc Build Status Join the chat at https://gitter.im/derekparker/delve

This project is currently pre 1.0.

The Github issue tracker is for bugs only. Please use the developer mailing list for any feature proposals and discussions.

About Delve

Delve is a debugger for the Go programming language. The goal of the project is to provide a simple, full featured debugging tool for Go. Delve should be easy to invoke and easy to use. Chances are if you're using a debugger, most likely things aren't going your way. With that in mind, Delve should stay out of your way as much as possible.