]> Cypherpunks repositories - gostls13.git/commitdiff
image/gif: speed up initializing test image
authorNigel Tao <nigeltao@golang.org>
Sat, 13 Jun 2020 02:28:08 +0000 (12:28 +1000)
committerNigel Tao <nigeltao@golang.org>
Sun, 14 Jun 2020 12:41:37 +0000 (12:41 +0000)
The benchmark throughput numbers don't change, but the set-up time (the
time taken before the b.ResetTimer() call) drops from 460ms to 4ms.

Change-Id: I5a6756643dff6127f6d902455d83459c084834fc
Reviewed-on: https://go-review.googlesource.com/c/go/+/237757
Reviewed-by: Rob Pike <r@golang.org>
Run-TryBot: Rob Pike <r@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>

src/image/gif/writer_test.go

index b619961787dab9175541502c1cbf6752b8fc1969..9b15c8d99d4aaa7dd9937915c36480f37bb5fa63 100644 (file)
@@ -657,7 +657,6 @@ func TestEncodeWrappedImage(t *testing.T) {
 }
 
 func BenchmarkEncode(b *testing.B) {
-       bo := image.Rect(0, 0, 640, 480)
        rnd := rand.New(rand.NewSource(123))
 
        // Restrict to a 256-color paletted image to avoid quantization path.
@@ -671,10 +670,8 @@ func BenchmarkEncode(b *testing.B) {
                }
        }
        img := image.NewPaletted(image.Rect(0, 0, 640, 480), palette)
-       for y := bo.Min.Y; y < bo.Max.Y; y++ {
-               for x := bo.Min.X; x < bo.Max.X; x++ {
-                       img.Set(x, y, palette[rnd.Intn(256)])
-               }
+       for i := range img.Pix {
+               img.Pix[i] = uint8(rnd.Intn(256))
        }
 
        b.SetBytes(640 * 480 * 4)