a few quick thoughts
This commit is contained in:
parent
cf2414f5c6
commit
3f14524242
2
TODO
2
TODO
@ -128,6 +128,8 @@ posts:
|
|||||||
https://hackernoon.com/optimizing-optimizing-some-insights-that-led-to-a-400-speedup-of-powerdns-5e1a44b58f1c
|
https://hackernoon.com/optimizing-optimizing-some-insights-that-led-to-a-400-speedup-of-powerdns-5e1a44b58f1c
|
||||||
http://leto.net/docs/C-optimization.php
|
http://leto.net/docs/C-optimization.php
|
||||||
|
|
||||||
|
http://www.stochasticlifestyle.com/algorithm-efficiency-comes-problem-information/
|
||||||
|
|
||||||
tools:
|
tools:
|
||||||
https://godoc.org/github.com/aclements/go-perf
|
https://godoc.org/github.com/aclements/go-perf
|
||||||
https://godoc.org/x/perf/cmd/benchstat
|
https://godoc.org/x/perf/cmd/benchstat
|
||||||
|
@ -165,6 +165,7 @@ Augment your data structure with more information:
|
|||||||
- limitations of when this is applicable:
|
- limitations of when this is applicable:
|
||||||
must be cheap to keep updated
|
must be cheap to keep updated
|
||||||
- all these fall under "do less work" (at the data structure level)
|
- all these fall under "do less work" (at the data structure level)
|
||||||
|
- bloom filter (for example)
|
||||||
|
|
||||||
Trade space for time:
|
Trade space for time:
|
||||||
- smaller data structures: pack things, compress data structures in memory
|
- smaller data structures: pack things, compress data structures in memory
|
||||||
@ -311,6 +312,7 @@ Techniques applicable to source code in general
|
|||||||
* What causes heap allocations?
|
* What causes heap allocations?
|
||||||
* Understanding escape analysis
|
* Understanding escape analysis
|
||||||
* API design to limit allocations: allow passing in buffers so caller can reuse rather than forcing an allocation
|
* API design to limit allocations: allow passing in buffers so caller can reuse rather than forcing an allocation
|
||||||
|
- you can even modify a slice in place carefully while you scan over it
|
||||||
* reducing pointers to reduce gc scan times
|
* reducing pointers to reduce gc scan times
|
||||||
|
|
||||||
## Runtime
|
## Runtime
|
||||||
|
Loading…
Reference in New Issue
Block a user