Remove decode for CI progressive images
Remove decode for CI progressive images

Previously, I'd speculatively decoded images returned from the progressive CIContext
because I'd read that doing so would move the memory from the GPU to the CPU, hopefully
making drawing faster.

I decided to test this hypothesis and by drawing the un-'decoded' image and the image
directly returned from CIContext. Here are some results:

When decoded is drawn before regular
[22486:30240049] decoded - 'regular': 0.000263
[22486:30240097] decoded - 'regular': 0.000242
[22486:30240306] decoded - 'regular': 0.000092
[22486:30240068] decoded - 'regular': 0.000384
[22486:30240096] decoded - 'regular': 0.000111
[22486:30240074] decoded - 'regular': 0.000089
[22486:30240046] decoded - 'regular': 0.000273
[22486:30240351] decoded - 'regular': 0.000250
[22486:30240307] decoded - 'regular': 0.000313
[22486:30240308] decoded - 'regular': 0.000684
[22486:30240307] decoded - 'regular': 0.000485
[22486:30240069] decoded - 'regular': 0.002414
[22486:30240052] decoded - 'regular': 0.000397
[22486:30240049] decoded - 'regular': 0.000293
[22486:30240351] decoded - 'regular': 0.000145

When regular is drawn before decoded
[22610:30246046] decoded - 'regular': 0.000056
[22610:30246030] decoded - 'regular': 0.000473
[22610:30246029] decoded - 'regular': 0.000138
[22610:30246053] decoded - 'regular': 0.000387
[22610:30246030] decoded - 'regular': -0.000006
[22610:30246026] decoded - 'regular': 0.000714
[22610:30246034] decoded - 'regular': 0.000097
[22610:30246621] decoded - 'regular': 0.000039
[22610:30246024] decoded - 'regular': 0.000121
[22610:30246662] decoded - 'regular': -0.000090
[22610:30246030] decoded - 'regular': -0.000057
[22610:30246619] decoded - 'regular': 0.000443
[22610:30246033] decoded - 'regular': 0.001297
[22610:30246623] decoded - 'regular': -0.000020
[22610:30246057] decoded - 'regular': 0.001249
[22610:30246660] decoded - 'regular': 0.000208
[22610:30246659] decoded - 'regular': 0.000048
[22610:30246709] decoded - 'regular': -0.000327
[22610:30246027] decoded - 'regular': 0.000953
[22610:30246025] decoded - 'regular': 0.001228
[22610:30246659] decoded - 'regular': 0.001141

Decoding the image makes little difference and that the difference shows that
the 'decoded' image actually takes longer to draw.

So, we'll save memory and processing time by returning the CGImage from the
context directly as opposed to attempting to decode it.

pinterest/PINRemoteImage,pinterest/PINRemoteImage,pinterest/PINRemoteImage,pinterest/PINRemoteImage