Digital Foundry Microsoft Xbox Scorpio Reveal [2017: 04-06, 04-11, 04-15, 04-16]

Discussion in 'Console Technology' started by iroboto, Apr 6, 2017.

  1. BadTB25

    Veteran

    Joined:
    Aug 11, 2007
    Messages:
    2,371
    Likes Received:
    644
    Location:
    Florida
    Yeah. Jumped the gun.
     
  2. MrFox

    MrFox Deludedly Fantastic
    Legend Veteran

    Joined:
    Jan 7, 2012
    Messages:
    5,446
    Likes Received:
    3,945
    It could be as simple as "leaking" air from the right side of the fan, giving a bit of positive pressure to the PSU. Something like how they design the air shrouds in (cheap) servers, cut outs to steal more or less air depending on what you have in the pcie slots.
     
    DSoup likes this.
  3. mpg1

    Veteran Newcomer

    Joined:
    Mar 5, 2015
    Messages:
    1,526
    Likes Received:
    1,112
    Update to orginal Digital Foundry article:
    http://www.eurogamer.net/articles/digitalfoundry-2017-project-scorpio-tech-revealed

    [UPDATE 7/4/17 20:44: Microsoft's Andrew Goossen has been in touch to clarify that D3D12 support at the hardware level is actually a part of the existing Xbox One and Xbox One S too. "Scorpio builds on the Command Processor capability present in the original Xbox One," we're told. "Our implementation of D3D12 supports all Xbox Ones, and games have already shipped that use it. When a game using D3D12 starts up, we reprogram the GPU's Command Processor front-end. The 50 per cent CPU rendering overhead improvement was reported by shipping games. The amount of win is dependent on the game engine and content, and not all games will see that size of improvement. Scorpio's Command Processor provides additional capability and programmability beyond what Xbox One/Xbox One S can do. We plan to take advantage of this in the future."]

    Seems DX12 at the hardware level was something that was already in Xbox One.
     
  4. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    7,885
    Likes Received:
    6,159
    did everyone skip the first page or something? I noted immediately. It's part of my hardware prediction for Scorpio.

    if interested in the CP discussion where it begins Post #21
     
  5. mpg1

    Veteran Newcomer

    Joined:
    Mar 5, 2015
    Messages:
    1,526
    Likes Received:
    1,112
    didn't skip. just didn't totally understand what I was reading.
     
    RancidLunchmeat and function like this.
  6. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    7,885
    Likes Received:
    6,159
    okay.

    Well. this is actually a boon for scorpio, not a negative. The feature is still not in use, meaning both XBO, S and Scorpio can scale together with executeIndirect.
     
  7. function

    function None functional
    Legend Veteran

    Joined:
    Mar 27, 2003
    Messages:
    5,135
    Likes Received:
    2,248
    Location:
    Wrong thread
    What's in Scorpio is an evolution of what's in X1. We've talked about this a bit in this thread (edit: and I struggle a bit with it too tbh!)

    To recap, X1 itself has workload reducing features that are not yet being used by DX11 supporting multiplatform games. Probably only MS DX12 only titles so far.
     
    RootKit likes this.
  8. scently

    Regular

    Joined:
    Jun 12, 2008
    Messages:
    926
    Likes Received:
    81
    Indeed. What's in Scorpio is an extension of that. You were spot-on on that.
     
    Shoujoboy likes this.
  9. mpg1

    Veteran Newcomer

    Joined:
    Mar 5, 2015
    Messages:
    1,526
    Likes Received:
    1,112
    I think were are conflating the general implementation of DX12 on Xbox One vs a feature of DX12 are we not?

    Because games have shipped using DX12/custom command processor according to Goossen.
     
    RancidLunchmeat likes this.
  10. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    7,885
    Likes Received:
    6,159
    the command processor supports specific microcode that is optimal for executeIndirect on XBO.
    ExecuteIndirect is available for DX12 based GPUS, the extensions for xbox are more optimized.

    While we are on topic of DX12, it's been available on openGL for some time with nvidia extensions. This style of executeXXXX first began with Kepler IIRC.
    We have little evidence that many games are leveraging executeIndirect yet, if it's happening I haven't read about it. I believe this may change in the future, but it hasn't been this 'killer' feature for XBO because XBO hits GPU limitations much faster than CPU limitations, so the need for XBO may not be as great unless you're failing to hit a frame rate target entirely, or that your game is extremely CPU intensive.

    Other reasons it's not implemented yet, Vulcan doesn't support it (without extensions). It's possible GNM may not support it yet either (plz leak ;)). So if you make a game that actually requires executeIndirect to free up your CPU bottleneck, that would be a complicated problem to solve if PS4 can't do it. You'd likely dial it back I think.
     
    #350 iroboto, Apr 7, 2017
    Last edited: Apr 7, 2017
  11. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    7,885
    Likes Received:
    6,159
    oh you mean _all of it_ ?
    uhhh, well I suppose thats entirely possible as well.
    @DeanoC any thoughts on this? This is probably better answered by you.
     
  12. mpg1

    Veteran Newcomer

    Joined:
    Mar 5, 2015
    Messages:
    1,526
    Likes Received:
    1,112
    You said a feature is still not in use. Goossen said that games have already shipped on Xbox One using DX12/custom command processor. So I am assuming you are referring to something more specific?
     
    RancidLunchmeat likes this.
  13. BRiT

    BRiT (╯°□°)╯
    Moderator Legend Alpha Subscriber

    Joined:
    Feb 7, 2002
    Messages:
    12,492
    Likes Received:
    8,693
    Location:
    Cleveland
    I'm not sure how that sort of detail was miss-explained or misunderstood in the first place.
     
    RancidLunchmeat likes this.
  14. RancidLunchmeat

    Veteran

    Joined:
    May 11, 2005
    Messages:
    3,043
    Likes Received:
    629
    Location:
    In your closet
    Indeed! The XB1 DX12 secret sauce!
     
  15. mosen

    Regular

    Joined:
    Mar 30, 2013
    Messages:
    452
    Likes Received:
    152
    This is the XB1 secret sauce that I was waiting for 4 years? :runaway:

    DICE had mentioned this feature on XB1 last year and Battlefront was their first DX12 title. They mentioned that they will use this feature in their future games. Look here:

    https://forum.beyond3d.com/posts/1902361/
     
    RancidLunchmeat likes this.
  16. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    7,885
    Likes Received:
    6,159
    Right. The API command is called ExecuteIndirect. It enables the GPU to essentially issue its own draw calls. With DX12 there are some nifty tricks you can do with it in terms of triggering what action happens next without needing to go to the CPU.

    A straight forward example is that you use a compute shader to handle culling for the scene. CPU submits a compute shader call, waits for the results to return. When the results are ready the CPU issues a draw call on the items that should actually be drawn.

    With HUMA, the advantage here is that a great deal of many cycles are saved because no copying between the GPU and CPU is required to do this, they share the same memory pool. But the CPU is still required to wait and resubmit the draw calls following.

    With ExecuteIndirect the GPU will
    Complete the compute shader and immediately draw from the results. (Straight forward example). These are huge savings on both CPU and the GPU is saturated better. So we expect to see significant performance increase.

    With the extensions in Xbox, it's just enables a more flexible and optimal version of ExecuteIndirect; in which, DICE states that they can draw an entire scene with just 1 ExecuteIndirect call.

    That can ultimately lead to a drastic action reduction in CPU usage and possibly a measurable increase in saturation. Of the GPU. There is still work being done in this area as I understand it, but this is a major step forward in separating render code from Game code.

    This is my general understanding of this topic. I'm sure others could provide a much more specific and precise answer.

    What Andrew Goosen writes I can't comment on, it might just be a technical reality for something we've always assumed of Xbox's Low level API. As in, we've already taken in into account so it's no biggie.

    But then again a lot of Xbox games were designed using fast semantics and not dx12 on XBO, so it "may" be possible to see additional gains, but I'm not banking on it. I would ask 50% relative to which API to be able to evaluate Andrews statement.
     
    #356 iroboto, Apr 7, 2017
    Last edited: Apr 7, 2017
  17. Ike Turner

    Veteran Regular

    Joined:
    Jul 30, 2005
    Messages:
    1,884
    Likes Received:
    1,756
    It would really be interesting to know how many 3rd party games use DX12 on Xbox. Officially we know that Battlefront was the first, IIRC Tomb Raider followed suit, BF1 this year (ME: Andromeda probably not as it uses another branch or Frostbite 3 which is only DX11 on PC)... Edit: Quantum Break also.
    Does anybody have somekind of un-official list?
     
    #357 Ike Turner, Apr 7, 2017
    Last edited: Apr 7, 2017
  18. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    7,885
    Likes Received:
    6,159
    I think I know what you are asking now, I don't believe our regular forum goers can validate or answer this question. We will need the help of hardware guys.

    Perhaps a simple litmus test is to perform a dx12 draw call test on the same setup but a Radeon 7970 vs 480x. Polaris should have released with that customized command processor, and 7970 would have released with one designed for dx11 (assuming this is all real).

    We should anticipate the 480x doing 50% better if Andrews statement is true.

    I apologize for being an ass.
     
  19. function

    function None functional
    Legend Veteran

    Joined:
    Mar 27, 2003
    Messages:
    5,135
    Likes Received:
    2,248
    Location:
    Wrong thread
    DICE are all about claims of secret sauce, and GDC is for people who don't know any better!
     
  20. RancidLunchmeat

    Veteran

    Joined:
    May 11, 2005
    Messages:
    3,043
    Likes Received:
    629
    Location:
    In your closet
    The troubling (?) thing is that the supposedly custom-built Jaguar cores that are in the Scorpio that show these wonderful gains because DX12 is built into an additional compute unit closer to the metal on the GPU that offloads draw functions from the CPU and shows 30% (?) gains in the Forza Tech demo so that the Scorpio runs equivalent to a GTX 1070 with PC Ultra settings at 4k only does so using ExecuteIndirect and only does so because it's a 1st party MS game. The XB1 never saw gains from its "DX12 Secret Sauce" because 3rd party developers didn't use it. What would motivate them to use it for Scorpio if they didn't for XB1?

    It seems to me that we can almost completely ignore any benefits from that for the Scorpio because we haven't seen them come to fruition for the XB1.

    That seriously degrades the performance levels that DF witnessed and reported on, if true.

    Where am I going wrong in my thinking?
     
    ProspectorPete likes this.
Loading...

Share This Page

  • About Us

    Beyond3D has been around for over a decade and prides itself on being the best place on the web for in-depth, technically-driven discussion and analysis of 3D graphics hardware. If you love pixels and transistors, you've come to the right place!

    Beyond3D is proudly published by GPU Tools Ltd.
Loading...