Vulkan/OpenGL Next Generation Initiative: unified API for mobile and non-mobile devices.

Discussion in 'Rendering Technology and APIs' started by ToTTenTranz, Aug 11, 2014.

  1. BRiT

    BRiT (>• •)>⌐■-■ (⌐■-■)
    Moderator Legend Alpha

    Joined:
    Feb 7, 2002
    Messages:
    16,928
    Likes Received:
    16,828
    But on what hardware does Google support Vulkan for? There's still OEMs releasing new Android products with anemic hardware. How can Google push Vulkan for games when their hardware products capable of running it will be splintered?
     
    pharma, Razor1 and homerdog like this.
  2. tongue_of_colicab

    Veteran

    Joined:
    Oct 7, 2004
    Messages:
    3,642
    Likes Received:
    815
    Location:
    Japan
    Isn't it just a matter of time? 2 ~ 3 years after Google introduced Vulkan to Android 7 or 8 or whatever 99% of the devices in use will be running a Vulkan capable Android version. Yes there will be a load of old phones still running a older OS but those phones won't be used by people that want to play games.

    MS required a OS upgrade to use the latest version of DX twice, I don't see why Google can't do the same.
     
    homerdog likes this.
  3. ToTTenTranz

    Legend Veteran Subscriber

    Joined:
    Jul 7, 2008
    Messages:
    11,302
    Likes Received:
    5,925

    I think it would be fine if the phones/tablets carrying these bottom-of-the-barrel SoCs were prevented from upgrading to e.g. Android 7, and from playing high-end games from 2016/17. And AFACT, for 2015 SoCs we're only talking about Hisilicon's Kirin 620 which is only present in a handful of low-end Huawei smartphones. All the others have been putting Midgard GPUs in their lowest-end for some time.
     
  4. willardjuice

    willardjuice super willyjuice
    Moderator Veteran Alpha

    Joined:
    May 14, 2005
    Messages:
    1,385
    Likes Received:
    299
    Location:
    NY
    Intel's X3 also uses Mali-4xx (http://www.anandtech.com/show/9304/asus-announces-two-new-zenpad-tablets). I'm sure there's more examples.

    But look at the current hardware stats of Android: http://hwstats.unity3d.com/mobile/gpu-android.html

    Mali-4xx has almost 30% of the market share (and depressingly it increased its share from last year)! Obviously that will (hopefully?) start to fall, but currently over 50% of the market only supports es 2.0. It's not just a software problem; although I admit software is probably the bigger obstacle to Vulkan on Android in 2016-2017. It's just hard to see Vulkan becoming a "real competitor" when (and I think I'm being generous here) only ~1/3 of the market will support by the end of 2017.

    If Vulkan does becomes a real competitor to DX12 (I'm not even sure what that means btw), I don't think it will be because of Android.
     
  5. pharma

    Veteran Regular

    Joined:
    Mar 29, 2004
    Messages:
    3,735
    Likes Received:
    2,596
    Vulkan Shader Resource Binding

    [​IMG]

     
    #185 pharma, Jan 29, 2016
    Last edited: Jan 29, 2016
    Lightman and Razor1 like this.
  6. lanek

    Veteran

    Joined:
    Mar 7, 2012
    Messages:
    2,469
    Likes Received:
    315
    Location:
    Switzerland
  7. Andrew Lauritzen

    Moderator Veteran

    Joined:
    May 21, 2004
    Messages:
    2,526
    Likes Received:
    454
    Location:
    British Columbia, Canada
    Yes, it's actually quite different than Mantle despite similar naming - probably one of the API areas that was modified the most (the other being the render pass stuff).
     
  8. Infinisearch

    Veteran Regular

    Joined:
    Jul 22, 2004
    Messages:
    771
    Likes Received:
    145
    Location:
    USA
    Was that because it has to support a wide variety of hardware?
     
  9. Alessio1989

    Regular Newcomer

    Joined:
    Jun 6, 2015
    Messages:
    604
    Likes Received:
    320
    What about a decent debug/validation layer in Vulkan? A reference driver/device would be really appreciated..
     
  10. Andrew Lauritzen

    Moderator Veteran

    Joined:
    May 21, 2004
    Messages:
    2,526
    Likes Received:
    454
    Location:
    British Columbia, Canada
    Mostly, yes - both in terms of efficiently supporting a broader range of hardware but also in terms of exposing functionality on other architectures such as push constants. There were other considerations as well (future expand-ability to bindless, DX design, etc).
     
  11. Infinisearch

    Veteran Regular

    Joined:
    Jul 22, 2004
    Messages:
    771
    Likes Received:
    145
    Location:
    USA
    Have you worked with Vulkan yet? If so I was wondering if you like it and if you think they're taking it in a good direction as far as future proofing goes?
     
  12. Andrew Lauritzen

    Moderator Veteran

    Joined:
    May 21, 2004
    Messages:
    2,526
    Likes Received:
    454
    Location:
    British Columbia, Canada
    A little bit but mostly just in the spec phase a while ago - I haven't done my hands-on with it yet on real drivers.

    Direction is reasonable overall. I like the binding model stuff in DX12 slightly more but it makes sense why they couldn't go quite as far in Vulkan and what's there is certainly just fine.
     
  13. Rodéric

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

    Joined:
    Feb 6, 2002
    Messages:
    4,031
    Likes Received:
    898
    Location:
    Planet Earth.
    meh !
    as long as it's not gfxVirtualAlloc( GPU|GART, address, size, COMMIT|RESERVE|RESET ) + gfxVirtualFree( address, size, DECOMMIT|RELEASE ) we are not there yet !

    Reserve for each resource, Commit/Uncommit on need, know that page granularity is 64Kio and let the OS map hardware pages as it likes ! (That's what virtual memory is for !)

    And not allocate physical memory (D3D12Heap) and link it to virtual memory (UpdateTileMapping of a CreateReservedResource) when you could jet let the OS handle that bit at a page granularity...


     
  14. Andrew Lauritzen

    Moderator Veteran

    Joined:
    May 21, 2004
    Messages:
    2,526
    Likes Received:
    454
    Location:
    British Columbia, Canada
    Yeah unfortunately when the GPU guys defined "tiled resources" they made some choices that are incompatible with how "real virtual memory" works, so at best the GPU 64kb stuff ends up as yet another layer on top of the "real OS page tables". That said, I fully agree on the shared page tables, GPU can fault, etc. stuff and reject the nay-sayers who think the world will explode if the GPU has to cover the latency of a page fault.
     
    BRiT likes this.
  15. 3dilettante

    Legend Alpha

    Joined:
    Sep 15, 2003
    Messages:
    8,409
    Likes Received:
    4,133
    Location:
    Well within 3d
    Is there a reference for the reasoning for the larger non-native resource granularity, ARMv8 aside?
     
  16. Andrew Lauritzen

    Moderator Veteran

    Joined:
    May 21, 2004
    Messages:
    2,526
    Likes Received:
    454
    Location:
    British Columbia, Canada
    Presumably TLB overhead which is valid. But it goes beyond just the page size - the miss behavior and so on for TR is not compatible with regular OS virtual memory.
     
  17. Infinisearch

    Veteran Regular

    Joined:
    Jul 22, 2004
    Messages:
    771
    Likes Received:
    145
    Location:
    USA
    Earlier you said that future expandability to bindless was a factor, do you consider DX12 resource binding tier 3 as bindless? If not will you like vulkan more in the future when they go bindless?
     
  18. Andrew Lauritzen

    Moderator Veteran

    Joined:
    May 21, 2004
    Messages:
    2,526
    Likes Received:
    454
    Location:
    British Columbia, Canada
    Even Tier 2 in DX's binding model is "bindless". If you can index a sufficiently large number of resources (in this case, ~1 million) on the fly in the shader and support non-uniform indexing, it's bindless.
     
  19. rpg.314

    Veteran

    Joined:
    Jul 21, 2008
    Messages:
    4,298
    Likes Received:
    0
    Location:
    /
    What do you think about getting rid of manual paging management and letting the GPU fetch pages from CPU memory upon a page fault, just like normal page miss?

    Resource streaming from disk could be handled by mmaping them. Devs could always issue prefetch hints for max perf.
     
  20. Alessio1989

    Regular Newcomer

    Joined:
    Jun 6, 2015
    Messages:
    604
    Likes Received:
    320
    Maybe I missed something, but I still do not see an equivalent of the root buffer/signature on Vulkan... Does this concern certain mobile ulp architectures?

    And now just an evil question: will Fermi receive real Vulkan drivers? :lol:
     
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...