Announcement

Collapse
No announcement yet.

amdgpu questions

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Originally posted by agd5f View Post

    It's already implemented in radeon. For amdgpu, it requires DAL.



    It will require DAL. However, there is a lot of driver independent work required to expose freesync in a generally useful way.



    They use the same firmware with the exception of the UVD and VCE firmware. The only difference in the UVD and VCE firmware is the lack of support in radeon for handling the new firmware header format for UVD and VCE. It someone is interested, they could port the support for the new header format from amdgpu to radeon. However, there is no real advantage to doing so feature-wise other than to share the same firmware image so it's not something we are planning to do.
    Yeah, that seems perfectly fine to me. Imean really if the only benefit to it is the fact that they can use the same firmware files but otherwise functionally the same difference, then it doesn't need to be done.

    Although, I do think it would be a good project for a new contributor to learn on. Anybody looking to get their feet wet may want to consider this contribution.

    Comment


    • #12
      speaking about yourself?

      Comment


      • #13
        Originally posted by juno View Post
        speaking about yourself?
        Well, maybe not. But it would be a good project to learn on I think. Hey, I may not be a great programmer, but I'm certain there are great programmers that read these forums. Don't get me wrong though, I do dabble. I have contributed bug reports and fixes to a number of projects. I do try to do my fair share.

        Comment


        • #14
          Originally posted by juno View Post
          I see the radeon feature matrix has been updated w/ this info: http://www.x.org/wiki/RadeonFeature/
          listed done for HDMI audio and TODO for DP before, I think...
          Will pre-VI cards used with amdgpu also support HDMI/DP audio?
          Yes, DAL supports all asics supported by amdgpu.


          Originally posted by juno View Post
          Can you tell if the open vulkan userspace driver is going to be the same one, transitioned to foss or a project on it's own?
          We will be open sourcing our closed source implementation.

          Originally posted by juno View Post
          Do you think it would make sense to implement ogl on top of vk (once the vk driver is done) for a vendor-independent ogl 4.x implementation?
          No.


          Comment


          • #15
            Thank you very much for the answers!


            Do you have a time schedule you want to share for the release of the open OCL2/Vulkan drivers other than "is it done when it's done"?

            Can you tell something about the challenges you encounter trying to open-source existing code? Are there legal/licensing problems or technical reasons, refactoring that takes a lot of time to fit the code to the open stack?

            Do you see any chance of downsampling/"VSR" on Linux anytime soon like it is possible on windows since Catalyst Omega? I think this is not done by compute units but the DCE(?) itself?

            This is maybe a bit off topic, but is there any public documentation for the supported formats of the different parts of the whole GPUs?
            I mean, I see this table: http://www.x.org/wiki/RadeonFeature/#index7h2
            Now I know, Carrizo has a newer DCE than Fiji but which generation of VCE, UVD, GCN does it have?
            And after that, I don't know from that table that DCE11 supports HDMI2.0 while DCE10 don't. And seeing todays patches about Stoney's UVD, I don't know the capabilities (max. de-/encoding resolution, framerate) of the UVD/VCEs on different products. Maybe this kind of info could be added there or even fit on the new domain gpuopen.com?


            Just one more question came to my mind: is it possible to connect a HDMI-port in an "audio-only" mode with amdgpu? This would be useful using digital multi-channel audio, e.g. with a AV-Receiver without the need to connect an extra TV/ HDMI monitor through the AVR. TOSLINK bandwith is only enough for stereo.
            Last edited by juno; 09 March 2016, 07:56 AM.

            Comment


            • #16
              Originally posted by juno View Post
              Do you have a time schedule you want to share for the release of the open OCL2/Vulkan drivers other than "is it done when it's done"?
              Not at this point. Depends quite a bit on what other activities are competing for peoples' time.

              Originally posted by juno View Post
              Can you tell something about the challenges you encounter trying to open-source existing code? Are there legal/licensing problems or technical reasons, refactoring that takes a lot of time to fit the code to the open stack?
              The main challenge is when drivers are written to be cross-platform / code-shared, so they bring in OS-specific bits from multiple OSes. In theory you can hide all that behind abstraction layers and just pick out the Linux bits, but in practice sufficiently opaque abstraction layers tend to hurt performance and so instead the OS-specific bits tend to be visible through the abstractions.

              Originally posted by juno View Post
              Do you see any chance of downsampling/"VSR" on Linux anytime soon like it is possible on windows since Catalyst Omega? I think this is not done by compute units but the DCE(?) itself?
              I thought the downsampling was actually done with shaders so would be fairly easy for someone to add, not sure though.

              Originally posted by juno View Post
              This is maybe a bit off topic, but is there any public documentation for the supported formats of the different parts of the whole GPUs?
              I mean, I see this table: http://www.x.org/wiki/RadeonFeature/#index7h2
              Now I know, Carrizo has a newer DCE than Fiji but which generation of VCE, UVD, GCN does it have?
              And after that, I don't know from that table that DCE11 supports HDMI2.0 while DCE10 don't. And seeing todays patches about Stoney's UVD, I don't know the capabilities (max. de-/encoding resolution, framerate) of the UVD/VCEs on different products. Maybe this kind of info could be added there or even fit on the new domain gpuopen.com?
              Look in the "generation" files for amdgpu (eg cik.c, vi.c) and search for ".funcs" - you'll see a table for each GPU listing the blocks & versions. I'm not aware of any table listing capabilities of each block version although that could probably be picked out of the code in the same way (looking at the logic for setting cap bits based on GPU family).

              Originally posted by juno View Post
              Just one more question came to my mind: is it possible to connect a HDMI-port in an "audio-only" mode with amdgpu? This would be useful using digital multi-channel audio, e.g. with a AV-Receiver without the need to connect an extra TV/ HDMI monitor through the AVR. TOSLINK bandwith is only enough for stereo.
              Will leave this for someone else

              Comment


              • #17
                Thank you. There is just one thing I don't understand yet
                Originally posted by bridgman View Post
                The main challenge is when drivers are written to be cross-platform / code-shared, so they bring in OS-specific bits from multiple OSes. In theory you can hide all that behind abstraction layers and just pick out the Linux bits, but in practice sufficiently opaque abstraction layers tend to hurt performance and so instead the OS-specific bits tend to be visible through the abstractions.
                I get that this takes a lot of effort but what does that have to do with not being able to publish the code as open source initially?
                I mean, the OS-specific work is already done when e.g. the Vulkan driver is ready in the hybrid stack. Then there is a 'transition' (which in something is happening I have no idea what it is) to open source and finally there is support in the all-open stack, too. But afaiu hybrid stack utilizes amdgpu, libdrm_amdgpu as well as the Vulkan userspace which agd5f confirmed to be the exact one that is going to be open-sourced...


                oh, something more
                Originally posted by bridgman View Post
                Look in the "generation" files for amdgpu (eg cik.c, vi.c) and search for ".funcs" - you'll see a table for each GPU listing the blocks & versions. I'm not aware of any table listing capabilities of each block version although that could probably be picked out of the code in the same way (looking at the logic for setting cap bits based on GPU family).
                Found Stoney to be set to Carrizo values. Based on today's news I thought Stoney was getting a newer UVD then Carrizo. Is this just an early solution or does both have in fact version 6.0?
                Last edited by juno; 09 March 2016, 10:01 AM.

                Comment


                • #18
                  Originally posted by juno View Post
                  I get that this takes a lot of effort but what does that have to do with not being able to publish the code as open source initially?
                  I mean, the OS-specific work is already done when e.g. the Vulkan driver is ready in the hybrid stack. Then there is a 'transition' (which in something is happening I have no idea what it is) to open source and finally there is support in the all-open stack, too.
                  Simple -- we're allowed to expose OS internals for Linux but not for any of the other OSes... so if the abstraction code can't completely hide them then even the abstraction layers need to change.

                  Originally posted by juno View Post
                  But afaiu hybrid stack utilizes amdgpu, libdrm_amdgpu as well as the Vulkan userspace which agd5f confirmed to be the exact one that is going to be open-sourced...
                  I really doubt that agd5f used the word "exact"

                  Comment


                  • #19
                    Ah now I get it. Thanks for the patience
                    No, of course he didn't. It was bad word choice, I just meant it is the "same" driver to be transitioned, then released as open source - not a completely new one

                    Comment


                    • #20
                      Originally posted by juno View Post
                      Just one more question came to my mind: is it possible to connect a HDMI-port in an "audio-only" mode with amdgpu? This would be useful using digital multi-channel audio, e.g. with a AV-Receiver without the need to connect an extra TV/ HDMI monitor through the AVR. TOSLINK bandwith is only enough for stereo.
                      Not possible. Audio and other information is sent during the blanking periods so you need a video signal to carry the audio, etc.

                      Originally posted by juno View Post
                      Found Stoney to be set to Carrizo values. Based on today's news I thought Stoney was getting a newer UVD then Carrizo. Is this just an early solution or does both have in fact version 6.0?
                      It's a newer version (6.1 or 6.2 I think). However the kernel code for all UVD 6.x chips is shared so all UVD 6.x based chips (Carrizo, Stoney, Fiji) use the same kernel UVD 6 code. Same thing for display hardware. Stoney and Carrizo are both DCE 11.x based so they share the same kernel code even though they have slightly different capabilities. Same for gfx, etc.

                      Comment

                      Working...
                      X