Surface performance issues RRS feed

  • General discussion

  • We purchased a Surface two days ago and tested some of the available games and apps on it and what we see has us a bit worried.

    The main issue is that the majority of games (ours included) have severe performance issues on the Surface. They are all more or less playable but have severe stuttering during animations. Definitely not what you would call fluid animations.

    This Surface machine is up to date. We have installed the latest updates both in the Store and in Windows Update. Everything is up to date.

    Here is the list with some quick notes:

    1. Game Dev Tycoon Lite (our own game)
    Very, very long loading time at the start. Swiping animations (under Game History) and the dragging of the sliders (when setting game priorities) have severe and very distracting lag.

    2. Plop!
    Very slow performance makes this almost unplayable.

    3. Jellyfish Tentacle Debacle
    Works at the start although you can clearly see stuttering but as soon as more elements come on screen it becomes almost unplayable.

    4. Cut the Rope
    Works generally well. No issues.

    5. ARMED!
    Works well.

    Other general issues:
    Swiping from the edge to bring up app bar hardly ever registered on the first try.

    What surprised us is that complex games such as ARMED! work well while simpler ones have severe perf. issues.

    Also, these games are a mix of JS/XAML and DirectX games and there seem to be perf. issues in both the XAML and JS so it doesn't just seem a JS issue.

    Are these known performance issues of the platform?
    Are there any clues on how we could improve performance? Some of things in our game that are slow, like the slider dragging, are so basic that I wouldn't even know why it could stutter.
    Thursday, November 1, 2012 1:33 PM

All replies

  • ARMED! is C# using MonoGame which is powered by DirectX via SharpDX.

    We had reports of problems of it on Surface devices as well, but I think these are all our bugs.

      - Tom

    Thursday, November 1, 2012 3:47 PM
  • Thanks for confirming, Tom. I was surprised how well ARMED! ran compared to the other apps.

    I still suspect that there is a deeper perf. issue with XAML/JS on Surface. In any case I really don't know how we could fix/speed up the specific issues we see in Game Dev Tycoon. It's all fairly basic stuff.

    Thursday, November 1, 2012 11:41 PM
  • Get a copy of the ARM versions of the Windows Performance Toolkit (WPT) and start looking at the memory allocation behavior of your App. I'd start with VirtualAlloc, and then Heap.

    Look for this thread to find info on where to get and use of WPT, "Windows Performance Toolkit: Finding CPU consumer".

    Thursday, November 8, 2012 1:47 AM
  • I too have two successful HTML5 apps in the store but those aren't games. For games I would probably go the SharpDX or even C++ route for everything but the most basic games.


    Thursday, November 8, 2012 9:30 AM
  • Small Update: We have submitted an update to our game which fixes the most glaring performance issues. I guess we were just a bit shocked on how bad the performance was in so many games.

    The performance of our lite version is, with the update, acceptable except that the loading time is really long but we are not alone with this issue. We are also still investigating some major perf. issues in the full game (which is under development). It seems that memory consumption is definitely an issue but we will need to just go and analyze everything in detail. Thankfully the performance tools available are excellent so hopefully we will be able to fix everything.

    Technical info: The main issue was (ironically) a mouse handling routine in easeljs which performed hit testing unnecessarily. The other one was that I misused setImmediate() which not surprisingly doesn't work as well on a low-power device.

    • Edited by PatrickKlug Thursday, November 8, 2012 10:03 AM
    Thursday, November 8, 2012 10:02 AM
  • There were several talks on performance for Windows Store apps at //build this year. They should help identify the bottlenecks to make apps run better on low end hardware.

    Diagnosing performance and memory issues in JavaScript-based Windows Store apps

    Performance tips for Windows Store apps using XAML


    Friday, November 9, 2012 1:56 AM