Xbox One November SDK Leaked

Discussion in 'Console Technology' started by DieH@rd, Dec 31, 2014.

  1. Shifty Geezer

    Shifty Geezer uber-Troll!
    Moderator Legend

    Joined:
    Dec 7, 2004
    Messages:
    40,743
    Likes Received:
    11,226
    Location:
    Under my bridge
    If the second CP isn't described in the SDK, doesn't that pretty much confirm it's for OS use only? If it was being exposed for devs to use, it'd need to be documented. With XB1's complex OS structure, one pipeline for preemptive GPU control makes sense to me.
     
    iroboto likes this.
  2. shredenvain

    Regular

    Joined:
    Sep 12, 2013
    Messages:
    921
    Likes Received:
    189
    Location:
    Somewhere in southern U.S.
    I have always understood that the function of the dual graphics command processors was to use one CP for high priority work (Title Rendering) and the 2nd for low priority work ( UI functions). Now this usage isn't necessarily set in stone, but if the 2nd GCP is ever given to the title wouldn't that disable some system side functions like Snapping Apps? Sure 1.3 CPU cores are dedicated to system functions like snap, but they still have to be rendered don't they?
     
    iroboto likes this.
  3. mikee

    Newcomer

    Joined:
    Jan 9, 2015
    Messages:
    17
    Likes Received:
    2
    Did Microsoft not say how many queues the compute command processors have, I am sure I read they are not equivalent to 1 ACE, seems odd they would double the graphics command processor allowing dual pipeline but not beef up the compute ? I should probably continue reading the document, it is very interesting makes you wonder :)
     
  4. 3dilettante

    Legend Alpha

    Joined:
    Sep 15, 2003
    Messages:
    8,125
    Likes Received:
    2,885
    Location:
    Well within 3d
    One side note is that the SDK discusses how one of the command queues for the second low-priority ACE is system reserved. I also have not seen reference to the second graphics front-end.

    For comparison, Vgleaks has a system-reserved graphics front end and a (probably) system-reserved compute pipe for Orbis.
    The exact proportions have shifted, but there may be a base motivation for both architectures to split the front ends.
     
    Cyan and iroboto like this.
  5. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    7,910
    Likes Received:
    6,192
    This is more or less I think what I've settled on. I guess there's no point further in discussing it unless we see dual CPs come up in future AMD IPs.
     
  6. mikee

    Newcomer

    Joined:
    Jan 9, 2015
    Messages:
    17
    Likes Received:
    2
    That would be like saying the 7 ACES on the ps4 are only for cpu usage in which case why have that many. Apologies that is not meant to sound nasty, but reading it back I realise it could be taken that way, it is a genuine question. I am trying to understand the differences and what customisations have been made.
     
  7. Shifty Geezer

    Shifty Geezer uber-Troll!
    Moderator Legend

    Joined:
    Dec 7, 2004
    Messages:
    40,743
    Likes Received:
    11,226
    Location:
    Under my bridge
    Feel free to present your own theory. As far as seems described, MS added a second graphics command processor, the function of which we can only guess it. As it doesn't seem to be exposed to the devs to use, surely the logical conclusion is that it's for the system to use? And as the system multitasks with games including the system's own graphics drawing which needs to have higher priority drawing for smooth operation, doesn't it make sense to have a graphics command processor dedicated to the task with its own queues?

    It has nothing in parallel with PS4's ACEs which are there for compute, not CPU anything.
     
  8. mikee

    Newcomer

    Joined:
    Jan 9, 2015
    Messages:
    17
    Likes Received:
    2
    Sorry dude was reading CP as the compute command processor not the graphics command processor, I was looking at the ieee xbox one diagram thinking the graphics part was geared to doing two graphics commands simultaneously. And as you guys said what is the compute part doing if it's not in the sdk. Excuse my ignorance not read all the documentation yet :(

    Previously somebody mentioned xdma would that suggest some sort of dual usage somewhere, I thought if it has two graphics command processors this would add up.

    I am sure I will be wrong lol
     
    Cyan likes this.
  9. mikee

    Newcomer

    Joined:
    Jan 9, 2015
    Messages:
    17
    Likes Received:
    2
    Oh hang on did somebody not say you had high priority render and low but either could overtake the other or use spare resources. Maybe that's what they are, you can use a % to do a task but can run two at once, instead of having it wait until the first one finished.

    Sorry brain fart, probably makes no sense, time for bed :)
     
  10. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    7,910
    Likes Received:
    6,192
    I suppose if we go with this the OS cpu cores
    are issuing draw call commands with specific flags so that it goes to 1 command processor over the other. Does make me wonder how ps4 is handling their OS or because snap does not exist or camera controls don't exist while a game title is playing it excludes them from requiring it.

    I suppose it's not required though, but when running a game in windowed mode the graphics command processor needs to do both OS and game title right? It seems to handle it fine on Windows.
     
  11. mikee

    Newcomer

    Joined:
    Jan 9, 2015
    Messages:
    17
    Likes Received:
    2
    Is that what MS are calling display planes ? I thought they said it had 3, or was that virtual OS. The OS/UI is not that complicated, doubt it would need 3d or vector processing. As you said up till now one has managed fine for windows.

    Though to contradict myself if MS can drop OS usage to 1.2 cores would suggest they did most of the processing in compute and did not use the second graphics command processor.

    Kinda hope they release the dx12 notes, am I right in saying dx 11.2 or whatever they use currently can not use dual graphics command processors anyway, which might explain why is not in the documentation.
     
  12. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    7,910
    Likes Received:
    6,192
    No display planes are on GCN. IIRC GCN has 2, and if you decide you need to use more you can create additional display planes with your own solution as opposed to a complete hardware solution. Anything done in hardware can always be replicated in software.

    I just walked home from transit. The thought that just occurred to me is that I've never checked if you could run 2 Direct3d accelerated games in windowed mode at the same time, at least using the same display driver. If you have 2 video cards you could theoretically assign 1 game 1 display driver, and the other a different one. Maybe xbox is capable of 2 direct3d one of which is currently reserved for OS and snap mode and one for the game title.
     
    #192 iroboto, Jan 9, 2015
    Last edited: Jan 10, 2015
  13. powdercore

    Newcomer

    Joined:
    Aug 6, 2014
    Messages:
    41
    Likes Received:
    29
    Is it possible this is not yet exposed because it requires an SDK that supports it? I have a guess it's waiting for DX12. We don't see much about DX12 in this leak that will likely exposed once DX12 reaches completion.
     
  14. Cyan

    Cyan orange
    Legend Veteran

    Joined:
    Apr 24, 2007
    Messages:
    8,572
    Likes Received:
    2,292
    Actually, I am surprised at that too because the Xbox One is running 3 simultaneous OSs using a single core and 20% of a second core, and still while it doesn't have a superb fast dashboard, it runs fine. You also need to consider it is adding new functionalities quite swiftly too, from custom backdrops to DLNA support, etc etc, while performance remains the same.

    I think that Sony are going to do something similar over time --except if they pretend to use a second core for Project Morpheus. Sony chose FreeBSD for the PS4 and the PS4 was created to use 512MB in mind. FreeBSD uses very little memory itself, something along the lines of 300/350 MB with a UI. So I guess a similar approach is to be expected.

    https://www.freebsd.org/doc/en/books/design-44bsd/overview-memory-management.html

    [​IMG]

    mosen is mythical!! :D
     
  15. Scott_Arm

    Legend

    Joined:
    Jun 16, 2004
    Messages:
    13,277
    Likes Received:
    3,726
    It's not running 3 operating systems using 1.5 cores. The title OS runs on the 6.5 cores for the game. The System OS would run on the other 1.5 cores, but the Host OS should use little to nothing in terms of resources. The Host OS is just a hypervisor.

    I think a lot of people see "3 Operating Systems" and they imaging 3 Windows kernels running at the same time, but that's not what it is. The System OS is probably closest to Windows, while the Host OS is a hypervisor and the Title OS is probably an absolutely stripped down kernel that basically handles all the SDK API calls and that's pretty much it.
     
  16. oldschoolnerd

    Newcomer

    Joined:
    Sep 13, 2013
    Messages:
    65
    Likes Received:
    8
    Isn't this referred to in the sdk. Highlighted in this image.
    [​IMG]
     
  17. 3dilettante

    Legend Alpha

    Joined:
    Sep 15, 2003
    Messages:
    8,125
    Likes Received:
    2,885
    Location:
    Well within 3d
    The discussion was focused on the second graphics front end. That documentation in aligns with the two ACEs, which have various mentions in the document.
     
  18. SlickShoesRUCrazy

    Newcomer

    Joined:
    Sep 24, 2012
    Messages:
    97
    Likes Received:
    0
    This made by the misterxmedia guys? cause that's who i have seem post around the net, or did they get from somewhere else?
     
  19. oldschoolnerd

    Newcomer

    Joined:
    Sep 13, 2013
    Messages:
    65
    Likes Received:
    8
    I didn't get it from there, but it does have the smell of it. However, if you just look at the bits from that actual sdk and ignore and added interpretation it does seem to support the view that more that one command processors (called pipes in the document?) will become available to titles once the sdk is updated.
     
  20. Shifty Geezer

    Shifty Geezer uber-Troll!
    Moderator Legend

    Joined:
    Dec 7, 2004
    Messages:
    40,743
    Likes Received:
    11,226
    Location:
    Under my bridge
    As 3dilettante says, that excerpt is talking about asynchronous compute, or the CCPs. The line of discussion you replied to was the second GCP. It would appear from your excerpt that only low priority compute jobs can be requested (defaulting to 4 CUs?), but in future the high priority compute requests will be enabled. Though the nature of asynchronous compute is that it works when the GPU is 'idle'. Higher priority jobs would divert GPU resources to compute and not be so asynchronous! ;) It'd be more 'compute' in that case, as I understand it. This is of course essential for compute-based renderers in future.
     
    shredenvain 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...