Direct3D feature levels discussion

Discussion in 'Rendering Technology and APIs' started by DmitryKo, Feb 20, 2015.

  1. liquidboy

    Regular Newcomer

    Joined:
    Jan 16, 2013
    Messages:
    416
    Likes Received:
    77

    you could do a "modern app" version of it and thus put it in the store ;)
     
  2. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    8,149
    Likes Received:
    6,419
    lol the beta windows store? Hmm... I should check it out I've never tried to make a windows app, my app was going to be ghetto like, using wm_paint functions lol. I should look into it though, I had my hopes on playing Pillars of Eternity, but I can barely break 20 fps @ 1200p on this machine. Not sure if it's my video card, it's windows 10, or my CPU is just too shitty to be worthwhile anymore.
     
  3. Mindtaker

    Joined:
    Mar 31, 2015
    Messages:
    8
    Likes Received:
    2
    Then Kepler is Resource Binding Tier 2?
     
  4. liquidboy

    Regular Newcomer

    Joined:
    Jan 16, 2013
    Messages:
    416
    Likes Received:
    77
    seriously you should do it :) .. most of your code will likely "just work" in a UAP (universal App) ...

    p.s. most Windows Store apps are "ghetto", if anything it will be a good experience just getting something in there
     
  5. Ryan Smith

    Regular

    Joined:
    Mar 26, 2010
    Messages:
    611
    Likes Received:
    1,052
    Location:
    PCIe x16_1
    I'd certainly appreciate it. It would be a useful tool to have, and not just for myself.

    Though for now I'd suggest distributing it as a standard CLI application. WinStore apps are unpleasant to sideload.
     
  6. pjbliverpool

    pjbliverpool B3D Scallywag
    Legend

    Joined:
    May 8, 2005
    Messages:
    7,583
    Likes Received:
    703
    Location:
    Guess...
    It's still showing resource binding tier 2 on Kepler?
     
  7. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    8,149
    Likes Received:
    6,419
    Ill look over the API and see what's going on. I'll make a standard binary :) I can't guarantee I can output it to XML, I've never attempted it in C before. etc. I'll try copying values to clipboard or something. it's going to look like MS paint though lol. But I am fairly positive that I used the hardware driver type and not reference. I'll check when I get home from work
     
    #127 iroboto, Mar 31, 2015
    Last edited: Mar 31, 2015
  8. DmitryKo

    Regular

    Joined:
    Feb 26, 2002
    Messages:
    702
    Likes Received:
    588
    Location:
    55°38′33″ N, 37°28′37″ E
    Yes, Tier 2. It seems like Max McMullen's account on Resource Binding limits is the most authoritative one.
    Maybe someone would actually go and write the code to test the number of UAV slots that is possible to create on Kepler/Maxwell and GCN...

    I'd just wait for Microsoft to update the DirectX Caps Viewer... one thing is to spend a few hours on a five-line program then post a screenshot from the visual debugger, another is to attach a full-featured UI, DXGI adapter enumeration, and clipboard copy/paste... XML-based UAP would be the most effortless though, if it weren't for Store packaging requirements.
     
    liquidboy likes this.
  9. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    8,149
    Likes Received:
    6,419
    I'll give this somewhat of a shot. This was actually more fun than I expected. If they don't release a new DirectX Caps viewer for a long time, what will the world do ? ;)
     
  10. DmitryKo

    Regular

    Joined:
    Feb 26, 2002
    Messages:
    702
    Likes Received:
    588
    Location:
    55°38′33″ N, 37°28′37″ E
    It looks like GCN 1.1/1.2 and Xbox One do support feature level 12_0 - i.e. at least Resource Binding Tier 2, Tiled Resources Tier 2, and Typed UAV Load with additional formats !


    Here are the options reported on my Radeon 290X with the latest WDDM 2.0 driver 15.200.1012.2:

    D3D12OPTIONS.png

    No support for Tiled Resources under Direct3D12 for some reason, however DxCapsView report under Direct3D 11.3 is bit-to-bit identical to the one posted above by Ryan and shows Tiled Resources Tier 2.


    Source code is attached for anyone who already has Windows 10 preview with a D3D12-capable card and wants to play with SDK VS2015 CTP6. Absolutely no UI, you have to use the debugger.
     

    Attached Files:

    #130 DmitryKo, Mar 31, 2015
    Last edited: May 5, 2015
    liquidboy and iroboto like this.
  11. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    8,149
    Likes Received:
    6,419
    I'm wondering if just to make sure you're not hitting any possible bugs. You may want to initialize to 0 and also, have you tried running 11_0 instead of 10_0?
     
  12. DmitryKo

    Regular

    Joined:
    Feb 26, 2002
    Messages:
    702
    Likes Received:
    588
    Location:
    55°38′33″ N, 37°28′37″ E
    There's no need to initialize the options structure, it's completely overwritten with the call... if you move cursor to D3D12_FEATURE_DATA_D3D12_OPTIONS and hit Alt+F12 (Peek Definition), every member is declared as "Out".

    There is no difference if I create the device with levels 9_1, 10_0 or 11_1. Since the Direct3D12 runtime works on Direct3D 11-class hardware on the PC, the lower feature layers run through the same DDI 10/11/12 just like the higher layers, unlike Direct3D 11 which can run through DDI9.
     
  13. iroboto

    iroboto Daft Funk
    Legend Regular Subscriber

    Joined:
    Mar 6, 2014
    Messages:
    8,149
    Likes Received:
    6,419
    Okay that's fair. I guess at this point then it's just reporting the 290x incorrectly then.
     
  14. Ryan Smith

    Regular

    Joined:
    Mar 26, 2010
    Messages:
    611
    Likes Received:
    1,052
    Location:
    PCIe x16_1
     
    Lightman and iroboto like this.
  15. Abwx

    Newcomer

    Joined:
    Sep 30, 2014
    Messages:
    5
    Likes Received:
    0
  16. Kaotik

    Kaotik Drunk Member
    Legend

    Joined:
    Apr 16, 2003
    Messages:
    8,258
    Likes Received:
    1,948
    Location:
    Finland
    It's not an error (anymore), it coun queue engines, not how many queues they can handle
     
  17. Nemo

    Newcomer

    Joined:
    Sep 15, 2012
    Messages:
    125
    Likes Received:
    23
    French article said GCN 1.1 has up to 8 ACE's per 8 queues = 64 + CP = 65 compute
    http://www.hardware.fr/news/14133/gdc-d3d12-amd-parle-gains-gpu.html

    If you want to refer to the queue engine is the correct data:
    AMD GCN 1.2 (285) 1 Graphics + 8 Compute / 8 Compute
    AMD GCN 1.1 (290 Series) 1 Graphics + 8 Compute / 8 Compute
    AMD GCN 1.1 (260 Series) 1 Graphics + 8 Compute /8 Compute
    AMD GCN 1.0 (7000/200 Series) 1 Graphics + 2 Compute / 2 Compute
    NVIDIA Maxwell 2 (900 Series) 1 Graphics + 1 Compute / 1 Compute
    NVIDIA Maxwell 1 (750 Series) 1 Graphics / 1 Compute
    NVIDIA Kepler GK110 (780/Titan) 1 Graphics / 1 Compute
    NVIDIA Kepler GK10x (600/700 Series) 1 Graphics / 1 Compute

    Nvidia's 32 queues based on one CP = MPS for Hyper-Q = 1 queue engine
    https://docs.nvidia.com/deploy/pdf/CUDA_Multi_Process_Service_Overview.pdf
    http://docs.nvidia.com/cuda/samples/6_Advanced/simpleHyperQ/doc/HyperQ.pdf
     
  18. pharma

    Veteran Regular

    Joined:
    Mar 29, 2004
    Messages:
    3,003
    Likes Received:
    1,687
    http://www.extremetech.com/gaming/2...-into-amd-gpus-thanks-to-asynchronous-compute
     
  19. 3dilettante

    Legend Alpha

    Joined:
    Sep 15, 2003
    Messages:
    8,137
    Likes Received:
    2,939
    Location:
    Well within 3d
    Nvidia has 32 ACE-equivalent front end processors?
     
  20. Kaotik

    Kaotik Drunk Member
    Legend

    Joined:
    Apr 16, 2003
    Messages:
    8,258
    Likes Received:
    1,948
    Location:
    Finland
    No. I must stress that I don't actually know this for sure, but it probably has front end with 32 "engines" total which of 1 can run compute or gfx and the rest only compute, the "engines", however, are limited to 1 queue each, while ACE's can do 8 queues each and gfx queue, done by separate unit, doesn't eat their slots. So their frontend is "equal" to 4 ACE's more or less.
     
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...