Commit 864c6bcb authored by Russ Cox's avatar Russ Cox

test/bench: use range in reverse-complement

1.9s	gcc reverse-complement.c

reverse-complement.go
4.5s / 3.5s	original, with/without bounds checks
3.5s / 3.3s	bounds check reduction
3.3s / 2.8s	smarter garbage collector
2.6s / 2.3s	assembler bytes.IndexByte
2.5s / 2.1s	even smarter garbage collector
2.3s / 2.1s	fix optimizer unnecessary spill bug
2.0s / 1.9s	change loop to range (this CL)

R=r
https://golang.org/cl/166072
parent 864c757a
...@@ -86,9 +86,9 @@ func main() { ...@@ -86,9 +86,9 @@ func main() {
} }
// This loop is the bottleneck. // This loop is the bottleneck.
for r := 0; r < len(line); r++ { for _, c := range line {
w--; w--;
buf[w] = complement[line[r]]; buf[w] = complement[c];
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment