pavan16 / core-plot

Automatically exported from code.google.com/p/core-plot
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

iOS7 bad performance #584

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1.Install the CPTTestApp-iPad on a physical device which contains the iOS7
2.Try to pinch or move the upper scatter graph
3.The responsiveness of the graph is very bad, also the CPU is getting nearly 
to 100%.

What is the expected output? What do you see instead?
The performance should be as good as on iOS6.

What version of the product are you using? On what operating system?
Physical iPad device (on the simulator it works fine)
iOS7 - The pre release GM for developers

Please provide any additional information below.
I've bumped with this performance degradation on my app and decided to test the 
graph behavior in general, that's why I've used the CPTTestApp-iPad project as 
an example.
Notice that this high CPU behavior is also seen on iPhone devices - but on 
iPads it is worst.

Is this a known issue?

Original issue reported on code.google.com by tomerpe...@gmail.com on 16 Sep 2013 at 2:29

GoogleCodeExporter commented 8 years ago
Have you profiled the app to see where the hot spots are?

Original comment by eskr...@mac.com on 16 Sep 2013 at 11:14

GoogleCodeExporter commented 8 years ago
Yes, the [CPTGradient fillPathInContext] and [CPTLineStyle strokrPathInContext] 
takes the most time to complete - tested on the CPTTestApp-iPad.

Original comment by tomerpe...@gmail.com on 17 Sep 2013 at 6:18

GoogleCodeExporter commented 8 years ago
[deleted comment]
GoogleCodeExporter commented 8 years ago
Seems it relates to the NSDecimal

Original comment by tomerpe...@gmail.com on 17 Sep 2013 at 10:33

GoogleCodeExporter commented 8 years ago
In specific to the NSDecimalDivide - the ratio between the running time of this 
function on iOS6 vs iOS7 is 50%

Original comment by tomerpe...@gmail.com on 17 Sep 2013 at 11:16

GoogleCodeExporter commented 8 years ago
Can you switch your plots to use doubles instead? Set the cache precision to 
CPTPlotCachePrecisionDouble. Axes will always use decimal math.

Original comment by eskr...@mac.com on 18 Sep 2013 at 12:55

GoogleCodeExporter commented 8 years ago
Actually no - I need this decimal precision - but I also tried to set the cache 
precision to CPTPlotCachePrecisionDouble just for the sake of testing and it 
didn't help. 

Original comment by tomerpe...@gmail.com on 18 Sep 2013 at 5:24

GoogleCodeExporter commented 8 years ago
I'm experiencing the same issue in our app and so far I haven't figured out 
anyway to fix this performance gap between iOS 6 and iOS 7.

Original comment by rustysh...@gmail.com on 18 Sep 2013 at 8:02

GoogleCodeExporter commented 8 years ago
Any update on this one?

Original comment by tomerpe...@gmail.com on 22 Sep 2013 at 5:05

GoogleCodeExporter commented 8 years ago
If Apple broke NSDecimalDivide(), there's nothing we can do about it other than 
file a radar.

I'm investigating ways to restructure the way Core Plot uses layers to take 
better advantage of Core Animation and reduce the amount of drawing required, 
especially when scrolling. I'm still in research mode and don't have anything 
coded. When I do, I'll create a new branch for this work since it will be a 
substantial change and I don't want to break the default branch while working 
on it.

Original comment by eskr...@mac.com on 22 Sep 2013 at 1:19

GoogleCodeExporter commented 8 years ago
I am bumping with this performance degradation
anything new?

Original comment by fember...@gmail.com on 17 Oct 2013 at 12:07

GoogleCodeExporter commented 8 years ago
I am looking for a way to make the chart work faster
I set cache precision to CPTPlotCachePrecisionDouble but the graph is still slow
Is there another workaround?

Original comment by fember...@gmail.com on 17 Oct 2013 at 1:42

GoogleCodeExporter commented 8 years ago

Original comment by eskr...@mac.com on 16 Nov 2013 at 1:29

GoogleCodeExporter commented 8 years ago
Moved to GitHub issue #21.

https://github.com/core-plot/core-plot/issues/21

Original comment by eskr...@mac.com on 30 Dec 2013 at 12:30