Re: Expected frame rates for a full-screen blur
What version of jdk and Swing did you use? Can you check it on the latest jdk8? Ah you're right, Swing does hidpi these days. When I made the decision to start using JFX it didn't. But last time I tried the IntelliJ Oracle JVM builds the UI was pretty messed up so it seemed to still have some bugs. But that was maybe 6 months ago or more.
Re: Expected frame rates for a full-screen blur
OK, now I'm really puzzled - I watched the JavaFX performance talk from 2011 and learned about PeformanceTracker. It's too bad that's not public API, but it works. I used it like so: PerformanceTracker tracker = PerformanceTracker.getSceneTracker(scene); tracker.setOnRenderedFrameTask(new Runnable() { long lastTimestamp = System.currentTimeMillis(); @Override public void run() { final long now = System.currentTimeMillis(); long delta = now - lastTimestamp; if (delta 1000) System.out.println(Frame took + delta + msec); lastTimestamp = now; } }); The 1000 thing is just to avoid printing a nonsense timestamp when the UI hasn't been touched for a while. The deltas I see are consistently between 10-20msec which would be between 50 and 60fps, i.e. the vsync of the screen. But the wacky thing is, this doesn't change when I increase the size of the window, even though the animation is noticeably more choppy. It still says there's a 10-20msec gap between frames even though my eyes tell me otherwise. Even when I shrink the window size right down and get super smooth animation, the above code prints the same kind of deltas. This makes me think that whatever is going on, the regular JavaFX drawing thread isn't the issue. It seems to be churning through the scene at the same totally acceptable rate no matter what. So I'm thinking the issue must be something to do with how fast the GPU drains the command queue or something. BTW I tried doing -Dprism.order=j2d to see what would happen, and the GUI hangs before rendering anything. I'll file a bug on that later. On Thu, Apr 3, 2014 at 11:54 AM, Mike Hearn m...@plan99.net wrote: How does the OS tank? All the OS animations hit the same frame rate as the app itself does. For instance, opening Mission Control is normally smooth, but when a maximized JFX app is animating, it's not. It feels like the GPU is being overworked but as I'm not a GPU expert at all, I'm not sure where to begin - I am not even sure how to find out the frame rate so I know when tweaks are improving things! Is there a way to get this data from the system?
Re: Expected frame rates for a full-screen blur
Hi Mike, I'm sorry that I've been unable to get to this until now. I can recreate the problem you are seeing on my Mac by running ColorfulCirclesApp. Please enter a JIRA for the problem. Thanks. Also try this: Try this: PerformanceTracker tracker = PerformanceTracker.getSceneTracker(scene); Timeline timeline = new Timeline( new KeyFrame(Duration.seconds(1), t - { System.out.println(::FPS = + tracker.getAverageFPS()); })); timeline.setCycleCount(Timeline.INDEFINITE); timeline.play(); Steve On 2014-04-04 4:33 PM, Mike Hearn wrote: OK, now I'm really puzzled - I watched the JavaFX performance talk from 2011 and learned about PeformanceTracker. It's too bad that's not public API, but it works. I used it like so: PerformanceTracker tracker = PerformanceTracker.getSceneTracker(scene); tracker.setOnRenderedFrameTask(new Runnable() { long lastTimestamp = System.currentTimeMillis(); @Override public void run() { final long now = System.currentTimeMillis(); long delta = now - lastTimestamp; if (delta 1000) System.out.println(Frame took + delta + msec); lastTimestamp = now; } }); The 1000 thing is just to avoid printing a nonsense timestamp when the UI hasn't been touched for a while. The deltas I see are consistently between 10-20msec which would be between 50 and 60fps, i.e. the vsync of the screen. But the wacky thing is, this doesn't change when I increase the size of the window, even though the animation is noticeably more choppy. It still says there's a 10-20msec gap between frames even though my eyes tell me otherwise. Even when I shrink the window size right down and get super smooth animation, the above code prints the same kind of deltas. This makes me think that whatever is going on, the regular JavaFX drawing thread isn't the issue. It seems to be churning through the scene at the same totally acceptable rate no matter what. So I'm thinking the issue must be something to do with how fast the GPU drains the command queue or something. BTW I tried doing -Dprism.order=j2d to see what would happen, and the GUI hangs before rendering anything. I'll file a bug on that later. On Thu, Apr 3, 2014 at 11:54 AM, Mike Hearn m...@plan99.net wrote: How does the OS tank? All the OS animations hit the same frame rate as the app itself does. For instance, opening Mission Control is normally smooth, but when a maximized JFX app is animating, it's not. It feels like the GPU is being overworked but as I'm not a GPU expert at all, I'm not sure where to begin - I am not even sure how to find out the frame rate so I know when tweaks are improving things! Is there a way to get this data from the system?
Re: Expected frame rates for a full-screen blur
You might also want to try using the PulseLogger (which was recently refactored to be usable from Java Flight Recorder). See http://hg.openjdk.java.net/openjfx/8u-dev/rt/file/978e5c042214/modules/base/src/main/java/com/sun/javafx/logging/PrintLogger.java. Basically a few system properties are needed and then you should get per-pulse data that breaks down the time spent in different places. It seems like it shouldn’t be the case, but it looks like you’re fill rate limited. Maybe we are sending really huge bitmaps down to the card and the card bus just can’t keep up? -Djavafx.pulseLogger=true On Apr 4, 2014, at 2:17 PM, Stephen F Northover steve.x.northo...@oracle.com wrote: Hi Mike, I'm sorry that I've been unable to get to this until now. I can recreate the problem you are seeing on my Mac by running ColorfulCirclesApp. Please enter a JIRA for the problem. Thanks. Also try this: Try this: PerformanceTracker tracker = PerformanceTracker.getSceneTracker(scene); Timeline timeline = new Timeline( new KeyFrame(Duration.seconds(1), t - { System.out.println(::FPS = + tracker.getAverageFPS()); })); timeline.setCycleCount(Timeline.INDEFINITE); timeline.play(); Steve On 2014-04-04 4:33 PM, Mike Hearn wrote: OK, now I'm really puzzled - I watched the JavaFX performance talk from 2011 and learned about PeformanceTracker. It's too bad that's not public API, but it works. I used it like so: PerformanceTracker tracker = PerformanceTracker.getSceneTracker(scene); tracker.setOnRenderedFrameTask(new Runnable() { long lastTimestamp = System.currentTimeMillis(); @Override public void run() { final long now = System.currentTimeMillis(); long delta = now - lastTimestamp; if (delta 1000) System.out.println(Frame took + delta + msec); lastTimestamp = now; } }); The 1000 thing is just to avoid printing a nonsense timestamp when the UI hasn't been touched for a while. The deltas I see are consistently between 10-20msec which would be between 50 and 60fps, i.e. the vsync of the screen. But the wacky thing is, this doesn't change when I increase the size of the window, even though the animation is noticeably more choppy. It still says there's a 10-20msec gap between frames even though my eyes tell me otherwise. Even when I shrink the window size right down and get super smooth animation, the above code prints the same kind of deltas. This makes me think that whatever is going on, the regular JavaFX drawing thread isn't the issue. It seems to be churning through the scene at the same totally acceptable rate no matter what. So I'm thinking the issue must be something to do with how fast the GPU drains the command queue or something. BTW I tried doing -Dprism.order=j2d to see what would happen, and the GUI hangs before rendering anything. I'll file a bug on that later. On Thu, Apr 3, 2014 at 11:54 AM, Mike Hearn m...@plan99.net wrote: How does the OS tank? All the OS animations hit the same frame rate as the app itself does. For instance, opening Mission Control is normally smooth, but when a maximized JFX app is animating, it's not. It feels like the GPU is being overworked but as I'm not a GPU expert at all, I'm not sure where to begin - I am not even sure how to find out the frame rate so I know when tweaks are improving things! Is there a way to get this data from the system?
Re: Expected frame rates for a full-screen blur
How does the OS tank? All the OS animations hit the same frame rate as the app itself does. For instance, opening Mission Control is normally smooth, but when a maximized JFX app is animating, it's not. It feels like the GPU is being overworked but as I'm not a GPU expert at all, I'm not sure where to begin - I am not even sure how to find out the frame rate so I know when tweaks are improving things! Is there a way to get this data from the system?
Re: Expected frame rates for a full-screen blur
Right. My issue appears to be far more general - any large window has poor framerates no matter how simple the contents seem to be. What's more it doesn't seem to be a pure CPU time issue because *all* graphics operations, even things like opening mission control, also end up lagged. So I feel it's more likely to be something to do with the GPU, as that is a shared resource that perhaps isn't being timesliced very well. I can't offer a better explanation of why an app would be able to drag down the responsiveness of the entire OS. I tried changing the blue type, adding cache hints and so on. No difference. I also found someone else complaining about this: mihosoft.eu/?p=486 The issue very specifically seems to be large windows. I tried changing the display resolution as well, but unsurprisingly the only thing that made it faster was changing the scaling so all windows were smaller. Modifying the display settings to give me more space just made things worse (larger window again). I'm not sure how to go about diagnosing this. Again - does anyone else see their entire OS tank when the Ensemble coloured circles demo is run? On Tue, Apr 1, 2014 at 11:16 PM, John Smith john_sm...@symantec.com wrote: Sounds like your issue isn't in fact the blur, but, if it were, some things suggestions are: 1. BoxBlurs are more efficient than GaussianBlurs: http://en.wikipedia.org/wiki/Box_blur 2. Apply some of the suggestions from the openjfx Performance Tips and Tricks page: https://wiki.openjdk.java.net/display/OpenJFX/Performance+Tips+and+Tricks Anecdotally, applying the Performance Tips and Tricks allowed smooth animations on a 2012 MacBook Air with a full-screen blur. -Original Message- From: openjfx-dev [mailto:openjfx-dev-boun...@openjdk.java.net] On Behalf Of Jeff Martin Sent: Tuesday, April 01, 2014 11:17 AM To: Mike Hearn Cc: openjfx-dev@openjdk.java.net Subject: Re: Expected frame rates for a full-screen blur I assume retina optimization was added for JFX 8 (or is on the short list). I think there is a Jira for it. You can choose a non-retina resolution by going to display preferences and clicking the Scaled radio button and selecting something to the right of Best Resolution (Retina). It used to be that you could option-click the Scaled radio button to get a real list of choices, but now you can only get that with a 3rd party resolution tool (I think). jeff On Apr 1, 2014, at 12:49 PM, Mike Hearn m...@plan99.net wrote: How do I do that? And won't that make everything blurry? Retina support is one reason why I chose JFX. Swing on Retina Macs is pretty much unusable, it's like looking through thick plastic. On Tue, Apr 1, 2014 at 7:26 PM, Jeff Martin j...@reportmill.com wrote: If it's a MacBook Pro Retina, you might try it with and without retina level resolution. I haven't tested JavaFX 8 with retina, but JFX 7 had serious problems that would go away when I changed the display to non-retina. jeff On Apr 1, 2014, at 11:41 AM, Mike Hearn m...@plan99.net wrote: Actually, playing some more, it seems like the poor frame rates I'm seeing are not blur related, but rather affect any animation (i.e. all rendering) when my main window is maximized. Shrinking the window so it's smaller results in smooth animations of any kind. This seems to be true no matter how I try and simplify my scene (e.g. turning off a tiled background image). I grabbed Ensemble and tried the circle blur demo. It actually made my entire laptop unusable. The entire OS crawled to a halt and fps was maybe 0.3 for everything, not just the Java app. Going back to the main menu made things snappy again. This is a bit disconcerting. Does anyone else see such appalling performance impact from the blurred circles demo on their Mac? Is this a driver issue, perhaps? Are there any platforms where this demo hits a good fps? On Tue, Apr 1, 2014 at 6:10 PM, Mike Hearn m...@plan99.net wrote: Hi there, On a MacBook Pro with OS X 10.9.2, does anyone have any estimates for anticipated frame rates of a full-screen animated blur? I noticed that when my window is not maximized, the blur is smooth and high frame-rate. When maximized the blur is somewhat choppy. Unfortunately I have no clue how much work is really involved in GPU blurring and whether I'm being unreasonable to expect that many pixels to be blurred per second (this is on a retina display). Can anyone let me know if it's worth me trying to optimise this or whether hardware limitations will mean that realistically I am expecting too much. thanks!
Re: Expected frame rates for a full-screen blur
This is sad. A lot is Macbook retinas have been sold .. Millions Sent from my iPhone On Apr 1, 2014, at 11:17 AM, Jeff Martin j...@reportmill.com wrote: I assume retina optimization was added for JFX 8 (or is on the short list). I think there is a Jira for it. You can choose a non-retina resolution by going to display preferences and clicking the Scaled radio button and selecting something to the right of Best Resolution (Retina). It used to be that you could option-click the Scaled radio button to get a real list of choices, but now you can only get that with a 3rd party resolution tool (I think). jeff On Apr 1, 2014, at 12:49 PM, Mike Hearn m...@plan99.net wrote: How do I do that? And won't that make everything blurry? Retina support is one reason why I chose JFX. Swing on Retina Macs is pretty much unusable, it's like looking through thick plastic. On Tue, Apr 1, 2014 at 7:26 PM, Jeff Martin j...@reportmill.com wrote: If it's a MacBook Pro Retina, you might try it with and without retina level resolution. I haven't tested JavaFX 8 with retina, but JFX 7 had serious problems that would go away when I changed the display to non-retina. jeff On Apr 1, 2014, at 11:41 AM, Mike Hearn m...@plan99.net wrote: Actually, playing some more, it seems like the poor frame rates I'm seeing are not blur related, but rather affect any animation (i.e. all rendering) when my main window is maximized. Shrinking the window so it's smaller results in smooth animations of any kind. This seems to be true no matter how I try and simplify my scene (e.g. turning off a tiled background image). I grabbed Ensemble and tried the circle blur demo. It actually made my entire laptop unusable. The entire OS crawled to a halt and fps was maybe 0.3 for everything, not just the Java app. Going back to the main menu made things snappy again. This is a bit disconcerting. Does anyone else see such appalling performance impact from the blurred circles demo on their Mac? Is this a driver issue, perhaps? Are there any platforms where this demo hits a good fps? On Tue, Apr 1, 2014 at 6:10 PM, Mike Hearn m...@plan99.net wrote: Hi there, On a MacBook Pro with OS X 10.9.2, does anyone have any estimates for anticipated frame rates of a full-screen animated blur? I noticed that when my window is not maximized, the blur is smooth and high frame-rate. When maximized the blur is somewhat choppy. Unfortunately I have no clue how much work is really involved in GPU blurring and whether I'm being unreasonable to expect that many pixels to be blurred per second (this is on a retina display). Can anyone let me know if it's worth me trying to optimise this or whether hardware limitations will mean that realistically I am expecting too much. thanks!
Re: Expected frame rates for a full-screen blur
Actually, Box Blurs are no more efficient than Gaussian on GPU hardware due to the inability of shaders to perform incremental operations from pixel to pixel. Both are implemented by convolution kernels and N multiplies per pixel in the first horizontal pass and M multiplies per pixel in the second vertical pass (where M and N vary by radius/size of the blur and number of box passes)... ...jim On 4/1/14 2:16 PM, John Smith wrote: Sounds like your issue isn't in fact the blur, but, if it were, some things suggestions are: 1. BoxBlurs are more efficient than GaussianBlurs: http://en.wikipedia.org/wiki/Box_blur 2. Apply some of the suggestions from the openjfx Performance Tips and Tricks page: https://wiki.openjdk.java.net/display/OpenJFX/Performance+Tips+and+Tricks Anecdotally, applying the Performance Tips and Tricks allowed smooth animations on a 2012 MacBook Air with a full-screen blur. -Original Message- From: openjfx-dev [mailto:openjfx-dev-boun...@openjdk.java.net] On Behalf Of Jeff Martin Sent: Tuesday, April 01, 2014 11:17 AM To: Mike Hearn Cc: openjfx-dev@openjdk.java.net Subject: Re: Expected frame rates for a full-screen blur I assume retina optimization was added for JFX 8 (or is on the short list). I think there is a Jira for it. You can choose a non-retina resolution by going to display preferences and clicking the Scaled radio button and selecting something to the right of Best Resolution (Retina). It used to be that you could option-click the Scaled radio button to get a real list of choices, but now you can only get that with a 3rd party resolution tool (I think). jeff On Apr 1, 2014, at 12:49 PM, Mike Hearn m...@plan99.net wrote: How do I do that? And won't that make everything blurry? Retina support is one reason why I chose JFX. Swing on Retina Macs is pretty much unusable, it's like looking through thick plastic. On Tue, Apr 1, 2014 at 7:26 PM, Jeff Martin j...@reportmill.com wrote: If it's a MacBook Pro Retina, you might try it with and without retina level resolution. I haven't tested JavaFX 8 with retina, but JFX 7 had serious problems that would go away when I changed the display to non-retina. jeff On Apr 1, 2014, at 11:41 AM, Mike Hearn m...@plan99.net wrote: Actually, playing some more, it seems like the poor frame rates I'm seeing are not blur related, but rather affect any animation (i.e. all rendering) when my main window is maximized. Shrinking the window so it's smaller results in smooth animations of any kind. This seems to be true no matter how I try and simplify my scene (e.g. turning off a tiled background image). I grabbed Ensemble and tried the circle blur demo. It actually made my entire laptop unusable. The entire OS crawled to a halt and fps was maybe 0.3 for everything, not just the Java app. Going back to the main menu made things snappy again. This is a bit disconcerting. Does anyone else see such appalling performance impact from the blurred circles demo on their Mac? Is this a driver issue, perhaps? Are there any platforms where this demo hits a good fps? On Tue, Apr 1, 2014 at 6:10 PM, Mike Hearn m...@plan99.net wrote: Hi there, On a MacBook Pro with OS X 10.9.2, does anyone have any estimates for anticipated frame rates of a full-screen animated blur? I noticed that when my window is not maximized, the blur is smooth and high frame-rate. When maximized the blur is somewhat choppy. Unfortunately I have no clue how much work is really involved in GPU blurring and whether I'm being unreasonable to expect that many pixels to be blurred per second (this is on a retina display). Can anyone let me know if it's worth me trying to optimise this or whether hardware limitations will mean that realistically I am expecting too much. thanks!
Re: Expected frame rates for a full-screen blur
The tick marks in the MacOS display settings do not turn off retina support, they only affect the amount of scaling within the retina spectrum that is provided. To turn off retina support you need to use a utility like QuickRes that allows you to specify HiDPI (retina) vs. non-HiDPI resolutions. HiDPI retina resolutions always render at a scale factor of 2.0 and then they scale them to the indicated screen size. The best for retina resolution is the resolution in which the rendering at a scale of 2.0 exactly matches the number of pixels the window will be scaled/blitted into. Regular resolutions will render at a scale factor of 1.0 and also scale to the indicated screen size, and so the scaling artifacts will be much more noticeable unless you choose the precise native resolution of the display itself... ...jim On 4/1/14 11:17 AM, Jeff Martin wrote: I assume retina optimization was added for JFX 8 (or is on the short list). I think there is a Jira for it. You can choose a non-retina resolution by going to display preferences and clicking the Scaled radio button and selecting something to the right of Best Resolution (Retina). It used to be that you could option-click the Scaled radio button to get a real list of choices, but now you can only get that with a 3rd party resolution tool (I think). jeff On Apr 1, 2014, at 12:49 PM, Mike Hearn m...@plan99.net wrote: How do I do that? And won't that make everything blurry? Retina support is one reason why I chose JFX. Swing on Retina Macs is pretty much unusable, it's like looking through thick plastic. On Tue, Apr 1, 2014 at 7:26 PM, Jeff Martin j...@reportmill.com wrote: If it's a MacBook Pro Retina, you might try it with and without retina level resolution. I haven't tested JavaFX 8 with retina, but JFX 7 had serious problems that would go away when I changed the display to non-retina. jeff On Apr 1, 2014, at 11:41 AM, Mike Hearn m...@plan99.net wrote: Actually, playing some more, it seems like the poor frame rates I'm seeing are not blur related, but rather affect any animation (i.e. all rendering) when my main window is maximized. Shrinking the window so it's smaller results in smooth animations of any kind. This seems to be true no matter how I try and simplify my scene (e.g. turning off a tiled background image). I grabbed Ensemble and tried the circle blur demo. It actually made my entire laptop unusable. The entire OS crawled to a halt and fps was maybe 0.3 for everything, not just the Java app. Going back to the main menu made things snappy again. This is a bit disconcerting. Does anyone else see such appalling performance impact from the blurred circles demo on their Mac? Is this a driver issue, perhaps? Are there any platforms where this demo hits a good fps? On Tue, Apr 1, 2014 at 6:10 PM, Mike Hearn m...@plan99.net wrote: Hi there, On a MacBook Pro with OS X 10.9.2, does anyone have any estimates for anticipated frame rates of a full-screen animated blur? I noticed that when my window is not maximized, the blur is smooth and high frame-rate. When maximized the blur is somewhat choppy. Unfortunately I have no clue how much work is really involved in GPU blurring and whether I'm being unreasonable to expect that many pixels to be blurred per second (this is on a retina display). Can anyone let me know if it's worth me trying to optimise this or whether hardware limitations will mean that realistically I am expecting too much. thanks!
Re: Expected frame rates for a full-screen blur
Actually, playing some more, it seems like the poor frame rates I'm seeing are not blur related, but rather affect any animation (i.e. all rendering) when my main window is maximized. Shrinking the window so it's smaller results in smooth animations of any kind. This seems to be true no matter how I try and simplify my scene (e.g. turning off a tiled background image). I grabbed Ensemble and tried the circle blur demo. It actually made my entire laptop unusable. The entire OS crawled to a halt and fps was maybe 0.3 for everything, not just the Java app. Going back to the main menu made things snappy again. This is a bit disconcerting. Does anyone else see such appalling performance impact from the blurred circles demo on their Mac? Is this a driver issue, perhaps? Are there any platforms where this demo hits a good fps? On Tue, Apr 1, 2014 at 6:10 PM, Mike Hearn m...@plan99.net wrote: Hi there, On a MacBook Pro with OS X 10.9.2, does anyone have any estimates for anticipated frame rates of a full-screen animated blur? I noticed that when my window is not maximized, the blur is smooth and high frame-rate. When maximized the blur is somewhat choppy. Unfortunately I have no clue how much work is really involved in GPU blurring and whether I'm being unreasonable to expect that many pixels to be blurred per second (this is on a retina display). Can anyone let me know if it's worth me trying to optimise this or whether hardware limitations will mean that realistically I am expecting too much. thanks!
Re: Expected frame rates for a full-screen blur
If it's a MacBook Pro Retina, you might try it with and without retina level resolution. I haven't tested JavaFX 8 with retina, but JFX 7 had serious problems that would go away when I changed the display to non-retina. jeff On Apr 1, 2014, at 11:41 AM, Mike Hearn m...@plan99.net wrote: Actually, playing some more, it seems like the poor frame rates I'm seeing are not blur related, but rather affect any animation (i.e. all rendering) when my main window is maximized. Shrinking the window so it's smaller results in smooth animations of any kind. This seems to be true no matter how I try and simplify my scene (e.g. turning off a tiled background image). I grabbed Ensemble and tried the circle blur demo. It actually made my entire laptop unusable. The entire OS crawled to a halt and fps was maybe 0.3 for everything, not just the Java app. Going back to the main menu made things snappy again. This is a bit disconcerting. Does anyone else see such appalling performance impact from the blurred circles demo on their Mac? Is this a driver issue, perhaps? Are there any platforms where this demo hits a good fps? On Tue, Apr 1, 2014 at 6:10 PM, Mike Hearn m...@plan99.net wrote: Hi there, On a MacBook Pro with OS X 10.9.2, does anyone have any estimates for anticipated frame rates of a full-screen animated blur? I noticed that when my window is not maximized, the blur is smooth and high frame-rate. When maximized the blur is somewhat choppy. Unfortunately I have no clue how much work is really involved in GPU blurring and whether I'm being unreasonable to expect that many pixels to be blurred per second (this is on a retina display). Can anyone let me know if it's worth me trying to optimise this or whether hardware limitations will mean that realistically I am expecting too much. thanks!
Re: Expected frame rates for a full-screen blur
How do I do that? And won't that make everything blurry? Retina support is one reason why I chose JFX. Swing on Retina Macs is pretty much unusable, it's like looking through thick plastic. On Tue, Apr 1, 2014 at 7:26 PM, Jeff Martin j...@reportmill.com wrote: If it's a MacBook Pro Retina, you might try it with and without retina level resolution. I haven't tested JavaFX 8 with retina, but JFX 7 had serious problems that would go away when I changed the display to non-retina. jeff On Apr 1, 2014, at 11:41 AM, Mike Hearn m...@plan99.net wrote: Actually, playing some more, it seems like the poor frame rates I'm seeing are not blur related, but rather affect any animation (i.e. all rendering) when my main window is maximized. Shrinking the window so it's smaller results in smooth animations of any kind. This seems to be true no matter how I try and simplify my scene (e.g. turning off a tiled background image). I grabbed Ensemble and tried the circle blur demo. It actually made my entire laptop unusable. The entire OS crawled to a halt and fps was maybe 0.3 for everything, not just the Java app. Going back to the main menu made things snappy again. This is a bit disconcerting. Does anyone else see such appalling performance impact from the blurred circles demo on their Mac? Is this a driver issue, perhaps? Are there any platforms where this demo hits a good fps? On Tue, Apr 1, 2014 at 6:10 PM, Mike Hearn m...@plan99.net wrote: Hi there, On a MacBook Pro with OS X 10.9.2, does anyone have any estimates for anticipated frame rates of a full-screen animated blur? I noticed that when my window is not maximized, the blur is smooth and high frame-rate. When maximized the blur is somewhat choppy. Unfortunately I have no clue how much work is really involved in GPU blurring and whether I'm being unreasonable to expect that many pixels to be blurred per second (this is on a retina display). Can anyone let me know if it's worth me trying to optimise this or whether hardware limitations will mean that realistically I am expecting too much. thanks!
Re: Expected frame rates for a full-screen blur
I assume retina optimization was added for JFX 8 (or is on the short list). I think there is a Jira for it. You can choose a non-retina resolution by going to display preferences and clicking the Scaled radio button and selecting something to the right of Best Resolution (Retina). It used to be that you could option-click the Scaled radio button to get a real list of choices, but now you can only get that with a 3rd party resolution tool (I think). jeff On Apr 1, 2014, at 12:49 PM, Mike Hearn m...@plan99.net wrote: How do I do that? And won't that make everything blurry? Retina support is one reason why I chose JFX. Swing on Retina Macs is pretty much unusable, it's like looking through thick plastic. On Tue, Apr 1, 2014 at 7:26 PM, Jeff Martin j...@reportmill.com wrote: If it's a MacBook Pro Retina, you might try it with and without retina level resolution. I haven't tested JavaFX 8 with retina, but JFX 7 had serious problems that would go away when I changed the display to non-retina. jeff On Apr 1, 2014, at 11:41 AM, Mike Hearn m...@plan99.net wrote: Actually, playing some more, it seems like the poor frame rates I'm seeing are not blur related, but rather affect any animation (i.e. all rendering) when my main window is maximized. Shrinking the window so it's smaller results in smooth animations of any kind. This seems to be true no matter how I try and simplify my scene (e.g. turning off a tiled background image). I grabbed Ensemble and tried the circle blur demo. It actually made my entire laptop unusable. The entire OS crawled to a halt and fps was maybe 0.3 for everything, not just the Java app. Going back to the main menu made things snappy again. This is a bit disconcerting. Does anyone else see such appalling performance impact from the blurred circles demo on their Mac? Is this a driver issue, perhaps? Are there any platforms where this demo hits a good fps? On Tue, Apr 1, 2014 at 6:10 PM, Mike Hearn m...@plan99.net wrote: Hi there, On a MacBook Pro with OS X 10.9.2, does anyone have any estimates for anticipated frame rates of a full-screen animated blur? I noticed that when my window is not maximized, the blur is smooth and high frame-rate. When maximized the blur is somewhat choppy. Unfortunately I have no clue how much work is really involved in GPU blurring and whether I'm being unreasonable to expect that many pixels to be blurred per second (this is on a retina display). Can anyone let me know if it's worth me trying to optimise this or whether hardware limitations will mean that realistically I am expecting too much. thanks!
RE: Expected frame rates for a full-screen blur
Sounds like your issue isn't in fact the blur, but, if it were, some things suggestions are: 1. BoxBlurs are more efficient than GaussianBlurs: http://en.wikipedia.org/wiki/Box_blur 2. Apply some of the suggestions from the openjfx Performance Tips and Tricks page: https://wiki.openjdk.java.net/display/OpenJFX/Performance+Tips+and+Tricks Anecdotally, applying the Performance Tips and Tricks allowed smooth animations on a 2012 MacBook Air with a full-screen blur. -Original Message- From: openjfx-dev [mailto:openjfx-dev-boun...@openjdk.java.net] On Behalf Of Jeff Martin Sent: Tuesday, April 01, 2014 11:17 AM To: Mike Hearn Cc: openjfx-dev@openjdk.java.net Subject: Re: Expected frame rates for a full-screen blur I assume retina optimization was added for JFX 8 (or is on the short list). I think there is a Jira for it. You can choose a non-retina resolution by going to display preferences and clicking the Scaled radio button and selecting something to the right of Best Resolution (Retina). It used to be that you could option-click the Scaled radio button to get a real list of choices, but now you can only get that with a 3rd party resolution tool (I think). jeff On Apr 1, 2014, at 12:49 PM, Mike Hearn m...@plan99.net wrote: How do I do that? And won't that make everything blurry? Retina support is one reason why I chose JFX. Swing on Retina Macs is pretty much unusable, it's like looking through thick plastic. On Tue, Apr 1, 2014 at 7:26 PM, Jeff Martin j...@reportmill.com wrote: If it's a MacBook Pro Retina, you might try it with and without retina level resolution. I haven't tested JavaFX 8 with retina, but JFX 7 had serious problems that would go away when I changed the display to non-retina. jeff On Apr 1, 2014, at 11:41 AM, Mike Hearn m...@plan99.net wrote: Actually, playing some more, it seems like the poor frame rates I'm seeing are not blur related, but rather affect any animation (i.e. all rendering) when my main window is maximized. Shrinking the window so it's smaller results in smooth animations of any kind. This seems to be true no matter how I try and simplify my scene (e.g. turning off a tiled background image). I grabbed Ensemble and tried the circle blur demo. It actually made my entire laptop unusable. The entire OS crawled to a halt and fps was maybe 0.3 for everything, not just the Java app. Going back to the main menu made things snappy again. This is a bit disconcerting. Does anyone else see such appalling performance impact from the blurred circles demo on their Mac? Is this a driver issue, perhaps? Are there any platforms where this demo hits a good fps? On Tue, Apr 1, 2014 at 6:10 PM, Mike Hearn m...@plan99.net wrote: Hi there, On a MacBook Pro with OS X 10.9.2, does anyone have any estimates for anticipated frame rates of a full-screen animated blur? I noticed that when my window is not maximized, the blur is smooth and high frame-rate. When maximized the blur is somewhat choppy. Unfortunately I have no clue how much work is really involved in GPU blurring and whether I'm being unreasonable to expect that many pixels to be blurred per second (this is on a retina display). Can anyone let me know if it's worth me trying to optimise this or whether hardware limitations will mean that realistically I am expecting too much. thanks!