DX11 vs DX12

Discussion in '3D Hardware, Software & Output Devices' started by iroboto, Jan 15, 2015.

  1. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    13,502
    Likes Received:
    16,533
    Location:
    The North
    I feel like what he writes is wrong. Please let me know if I'm off base here. I've cut out some select points that I thought were incorrect, but if I'm wrong I don't mind to be corrected.
    Full article here: http://www.littletinyfrogs.com/article/460524/DirectX_11_vs_DirectX_12_oversimplified

    edit: what is up with this formatting?

    DirectX 11 vs. DirectX 12 oversimplified
    This can't be right, submission of work and how many cores and blocks your work is spread over is determined by the GPU isn't it?

    Only in CPU bound scenarios should we see this type of improvement.

    Wait what? I thought that multi-core draw call submission in place for both X1 and PS4 already?
     
    #1 iroboto, Jan 15, 2015
    Last edited: Jan 15, 2015
  2. Andrew Lauritzen

    Andrew Lauritzen Moderator
    Moderator Veteran

    Joined:
    May 21, 2004
    Messages:
    2,553
    Likes Received:
    633
    Location:
    British Columbia, Canada
    Yeah those quotes are sorta wrong... article is a bit confusing though so maybe it's just badly worded? Definitely some stuff that is highly misleading there and other stuff that is just wrong.
     
    #2 Andrew Lauritzen, Jan 15, 2015
    Last edited: Jan 15, 2015
  3. 3dilettante

    Legend Alpha

    Joined:
    Sep 15, 2003
    Messages:
    8,556
    Likes Received:
    4,729
    Location:
    Well within 3d
    You might need to use the remove formatting option or switch the editor so you can see the formatting tags.

    The point about how there's a primarily single-threaded submission process on the CPU side is true.
    The characterization of the cores on the GPU side is very off. The software does not talk to a SIMD lane one at a time. I'm not sure it can be said that the game actually talks to any individual thread at all, given the driver model and how the GPU virtualizes its resources. Maybe he means that without the expanded command buffer functionality, there is a narrowing at the front end?
    The runtime and GPU do have the ability to chunk and load balance at a level beyond a SIMD lane.

    I'm not entirely clear as to the feature level of the PS4, but it does look like the Xbox One's original API had some similar bundling and command submission enhancements, but it turned out to be more poorly threaded for submission than originally assumed, at least in the initial incarnation of the SDK.

    There's a later point about modern engines only supporting 4 lights. Maybe that word doesn't mean what I think it means? I thought we had a few more significant zeroes than that.
     
  4. liquidboy

    Regular Newcomer

    Joined:
    Jan 16, 2013
    Messages:
    416
    Likes Received:
    77
    hopefully on 21st January when Satya Nadelle (CEO), Joe Belfiore (WP/Win), Terry Meyerson(OS) , Phil Spencer (Xbox) take the stage and talks Windows 10 we'll see something impressive that uses Dx12 on Windows 10 :)


    [​IMG]
     
  5. HTupolev

    Regular

    Joined:
    Dec 8, 2012
    Messages:
    936
    Likes Received:
    564
    The "cores" being referred to in the article don't even have their own instruction memory and program counters. The idea of issuing instructions to them one at a time is like reasoning that because a dinner fork has four prongs, the four people around a table should to be able to share a single fork to eat their food simultaneously with no, umm, contention.

    Yeah, I had to do a triple-take on that one.
     
    #5 HTupolev, Jan 15, 2015
    Last edited: Jan 15, 2015
    Grall likes this.
  6. sebbbi

    Veteran

    Joined:
    Nov 14, 2007
    Messages:
    2,924
    Likes Received:
    5,296
    Location:
    Helsinki, Finland
    The number of dynamic shadow casting lights can be actually around 4 (in x360 / ps3 games at least) or even lower. Look at Uncharted / TLoU, both basically just have two dynamic shadow casting lights: the cascaded sun light and the flashlight (main characters hand). All the static light sources are baked (not actual lights at runtime). I would call TLoU still modern (it is only one year old).

    Modern tile based lighting systems can render several thousand of lights at 60 fps (on current gen). But shadows are still hard (both the performance and the quality). GPU driven techniques make various shadow optimization possible, since the culling can be done at very high (per pixel) precision (rendering only geometry to shadow maps that actually cast a shadow to an actual visible pixel on the g-buffer).
     
    Grall likes this.
  7. Osamar

    Newcomer

    Joined:
    Sep 19, 2006
    Messages:
    210
    Likes Received:
    36
    Location:
    40,00ºN - 00,00ºE
    For me the most interesting part is last paragraph. OpenGL NEXT details at GDC, seems the right place to it.

    GDC
    Pay very very close attention to GDC this year. Even if you’re an OpenGL fan. NVidia, AMD, Microsoft, Intel and Sony have a unified goal. Something is about to happen. Something wonderful.


    And this sentence

    The first game to use it should be announced before GDC and in theory, will be the very first native DirectX 12 and Mantle and xxxx game (i.e. written from scratch for those platforms).
     
  8. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    13,502
    Likes Received:
    16,533
    Location:
    The North
    If I could pick your mind for a bit Sebbbi would/how could switching to mantle/d3d12 improve dynamic shadow casting, does having that many more draw calls make shadow casting easier?

    I've often been under the assumption that more draw calls can lead to more complex/fuller scenes.

    edit: nevermind sebbbi ;) I found some of your earlier posts. But those were written in quite a bit back ago, I do wonder if things have changed since then.

    hmm, really need to get back to learning DX11.
     
    #8 iroboto, Jan 15, 2015
    Last edited: Jan 15, 2015
  9. sebbbi

    Veteran

    Joined:
    Nov 14, 2007
    Messages:
    2,924
    Likes Received:
    5,296
    Location:
    Helsinki, Finland
    Faster draw calls definitely help in shadow rendering. Shadow rendering tends to be draw call bound (in complex scenes with lots of small objects). Some engines don't need to perform draw calls per object or per mesh type (instancing) but most engines still do.

    However, even if you can make the draw call cost near zero (either by an efficient API, or by GPGPU techniques) shadow rendering requires quite a bit of geometry processing and fill rate on GPU. Shadow map geometry processing cost is similar to visible geometry rendering geometry cost (slightly cheaper because you don't need to transform normal/tangents). There is no silver bullet to solve these issues. We need faster GPUs and/or improved shadow mapping algorithms that perform less unnecessary work. The good thing here is that improved algorithms can bring gains that are close to performance difference between two console generations. Shadow mapping is far from a solved problem.
     
    HTupolev, lanek and Lightman like this.
  10. Kaotik

    Kaotik Drunk Member
    Legend

    Joined:
    Apr 16, 2003
    Messages:
    9,879
    Likes Received:
    4,054
    Location:
    Finland
    Sigh, I hate how well the NVIDIA marketing has bit to people on DX12.
    Yes, it supports some new features which will be introduced with DX12 - but that's only part of the DX12 features, which we know straight from the horses mouth. Yes, GM20x might support all of the rest too, but it's still unknown.
    It does support the API, but then, so does Fermi and Kepler and GCN and Intel (Gen7 or 7.5 and up, can't remember?), all which have been available for years.
     
  11. homerdog

    homerdog donator of the year
    Legend Veteran Subscriber

    Joined:
    Jul 25, 2008
    Messages:
    6,292
    Likes Received:
    1,074
    Location:
    still camping with a mauler
    Does anyone know the full D3D12 feature set at this point?
     
  12. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    13,502
    Likes Received:
    16,533
    Location:
    The North
    I thought the full d3d12 feature set was announced at GDC during the announcement. Dx12 full feature set hasn't been yet though if I understand correctly.

    edit: If I understand that such a separation between the Direct3D driver and the full API exists.
     
    #12 iroboto, Jan 19, 2015
    Last edited: Jan 19, 2015
  13. Kaotik

    Kaotik Drunk Member
    Legend

    Joined:
    Apr 16, 2003
    Messages:
    9,879
    Likes Received:
    4,054
    Location:
    Finland
    Quite possiblty, but when GM204 was released they were not public information (and still aren't) and there was no tests for hardware manufacturers to confirm feature compatibility
     
  14. madyasiwi

    Newcomer

    Joined:
    Oct 7, 2008
    Messages:
    194
    Likes Received:
    32
    Unity Blog - Staying ahead with DirectX12

    What happen to AMD? Too busy with Mantle and now playing catch-up?
     
  15. silent_guy

    Veteran Subscriber

    Joined:
    Mar 7, 2006
    Messages:
    3,754
    Likes Received:
    1,380
    Groundbreaking as Mantle is, AMD maneuvered itself into a position where it now needs to support an extra API.
     
  16. Jawed

    Legend

    Joined:
    Oct 2, 2004
    Messages:
    11,290
    Likes Received:
    1,562
    Location:
    London
    Yeah radically difficult stuff since Mantle and D3D12 as so different.
     
  17. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    13,502
    Likes Received:
    16,533
    Location:
    The North
    IIRC DX12 has some features not found in todays cards that have been announced so far:
    rasterizer ordered views, typed UAV load, volume tiled resources and conservative rasterization

    there could be more
     
    mosen likes this.
  18. silent_guy

    Veteran Subscriber

    Joined:
    Mar 7, 2006
    Messages:
    3,754
    Likes Received:
    1,380
    They definitely are built on the same principle, but that doesn't mean that their implementation can't be significantly different. We obviously can't know for sure since the API details for both DirectX 12 and Mantle, open-in-name-only, are still under wraps.

    So unless they are near identical, not very likely, they will have their own bugs. And they will need their own bug fixing when different games trigger different code paths etc.

    No matter how you turn it, it's going to add additional strain to AMD's driver team. For a company that's already spread thin, maintaining Mantle won't be a worthwhile endeavor in the long term. Once all major engines support DX12 as well, it will be mission accomplished for Mantle and it can ride into the sunset.
     
    pharma likes this.
  19. liquidboy

    Regular Newcomer

    Joined:
    Jan 16, 2013
    Messages:
    416
    Likes Received:
    77
    from the Windows 10 story presentation ... a pic from the dx11 vs dx12 demo

    [​IMG]

    dx11 : 30fps 47K draw calls (peaking)
    dx12 : 120fps 73k draw calls (lots of headroom)
     
  20. Rodéric

    Rodéric a.k.a. Ingenu
    Moderator Veteran

    Joined:
    Feb 6, 2002
    Messages:
    4,063
    Likes Received:
    960
    Location:
    Planet Earth.
    Good let's see if the API is simple enough, let us manage virtual memory and stop waste our time...
    12 tries to get a decent API ? Good job MS !
    :p
     
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...