Your Privacy Matters: We use our own and third-party cookies to improve your experience on our website. By continuing to use the website we understand that you accept their use. Cookie Policy
5020
Indefinite High CPU Usage For Some Charts
posted

Hi,

I'm seeing high CPU usage on a chart when loading certain data. It's not 100% reproducible, but close to 100% if I have the right data set.

Here's a stack trace from Instruments:

Running Time Self Symbol Name
98136.0ms   98.4% 0.0   Main Thread  0x17bb2a
98136.0ms   98.4% 824.0    main
54097.0ms   54.2% 0.0     -[TimerCallback dispatch:]
54097.0ms   54.2% 4.0      __35-[GChartContentManager makePending]_block_invoke
43165.0ms   43.2% 1.0     -[CanvasElement drawRect:]
43164.0ms   43.2% 0.0      -[CanvasRenderer drawRect:]
43164.0ms   43.2% 28.0       -[CanvasRenderer draw:]
43136.0ms   43.2% 754.0        -[CanvasRenderer drawImage:]
42382.0ms   42.5% 0.0         __31-[GCanvasViewRenderer setData:]_block_invoke
42381.0ms   42.5% 3.0          -[GCanvasViewRenderer renderCallbackWithCtx:data:]
42378.0ms   42.5% 9.0           -[GCanvasRenderScheduler renderTargets]
40664.0ms   40.7% 20.0            -[GSeriesView renderWithClearRect:]
35959.0ms   36.0% 1.0             -[GLineSeriesView renderOverrideWithContext:isHitContext:]
35956.0ms   36.0% 5.0              -[GCanvasViewRenderer renderPathWithPath:]
35946.0ms   36.0% 28870.0               -[GCanvasViewRenderer renderPathWithPath:gradientDirection:gradientBounds:]


Again, this only happens to charts with lots of data, it seems... maybe it's happening to graphs that don't render fully on one run of the runloop.

Thoughts?

Caylan