Announcement

Collapse
No announcement yet.

Radeon GCN Compiler Backend Merged Into GCC 9 - To Allow OpenMP/OpenACC Offloading

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

  • Radeon GCN Compiler Backend Merged Into GCC 9 - To Allow OpenMP/OpenACC Offloading

    Phoronix: Radeon GCN Compiler Backend Merged Into GCC 9 - To Allow OpenMP/OpenACC Offloading

    The long-in-development AMD "GCN" back-end for the GNU Compiler Collection that allows targeting recent generations of Radeon GPUs for compute offloading has been merged into the upcoming GCC 9 release...

    http://www.phoronix.com/scan.php?pag...GCN-GCC-Merged

  • #2
    Nothing planned from AMD in the LLVM front? It would be nice to have radeon offloading along with nvidia over there =)

    Comment


    • #3
      Originally posted by elldekaa View Post
      Nothing planned from AMD in the LLVM front? It would be nice to have radeon offloading along with nvidia over there =)
      There is already the AMDGPU LLVM back-end (and NVPTX LLVM back-end) though on the Radeon front don't recall anyone working on OpenACC/OpenMP offloading there, it might possibly already work or with some effort, haven't checked and again haven't heard anyone talk about it at least in recent years on that front.
      Michael Larabel
      http://www.michaellarabel.com/

      Comment


      • #4
        How exactly does this work? Let's say I want to use OpenMP offloading to a GCN GPU. Do I compile the binary specifically for this combination (hence, no runtime selection of the acceleration device)? Do I need a second binary for x86+Nvidia acceleration? Or are there fat binaries supporting more than one accelerator type? If so, I am really hoping for a more general approach like the one suggested by Intel, where the accelerated kernels are simply compiled to SPIRV and fed to anything that will accept it.

        Comment


        • #5
          Originally posted by elldekaa View Post
          Nothing planned from AMD in the LLVM front? It would be nice to have radeon offloading along with nvidia over there =)
          Why?

          GCC GCN backend is fork of SUSEwork


          16 March 2017

          While the AMDGPU "GCN" compiler support in LLVM is quite mature now, the GNU Compiler Collection (GCC) hasn't yet received a full-fledged GCN compiler back-end for AMD GPUs. SUSE developers have been working on that for AMD and today they have published their code branch. This GCN back-end for GCC is primarily focused on compute capabilities rather than compiling graphics shaders.
          https://www.phoronix.com/scan.php?pa...For-GCC-Branch
          An Early Port Of GCC To AMD's GCN Architecture
          22 September 2016
          https://www.phoronix.com/scan.php?pa...-AMD-GCN-Early


          AMD Graphics Core Next

          New and clean instruction set used by AMD GPUs

          First specification released in 2011, Generation 3 in 2015

          !!!!!!!Similar to traditional CPUs (unlike the predecessors)
          https://gcc.gnu.org/wiki/cauldron201...GCC+to+GCN.pdf
          More Details On The AMD GCN Back-End For GCC That's Expected To Merge For GCC 9
          11 September 2018 at 07:25 AM EDT.

          Last week I reported on Code Sourcery / Mentor Graphics posting their new AMD GCN port to the GNU Compiler Collection (GCC). This GPU back-end for the widely-used GCC compiler is hoped for merging ahead of the GCC 9 stable release expected in early 2019. At this past weekend's GNU Tools Cauldron 2018 conference was a briefing by Mentor Graphics on undertaking funded by AMD.

          AMD has indeed been funding Mentor Graphics to create this new GCC port... It was pretty much assumed, but not entirely clear with AMD and SUSE being long-time partners and SUSE having originally started working on the GCN back-end in 2016. But it turns out AMD ended up hiring Mentor to work on this code since 2017 while using the SUSE code as a starting point.
          https://www.phoronix.com/scan.php?pa...-2018-Cauldron


          It is little bit confusing when assume no change
          Sponsors

          Platinum sponsors of openSUSE AMD

          The combined forces of you, AMD and openSUSE are helping lead the Linux operating system community in 64-bit innovation.
          Consistent with AMD's theme of customer-centric innovation, openSUSE provides developers with a tool to compile, release, and publish their software for the broad user audience. AMD is a proud Platinum Sponsor of openSUSE.
          SUSE has consistently been among the first Linux distributions to support advanced features in AMD microprocessors such as AMD Direct Connect Architecture with NUMA memory architecture and HyperTransport technology, AMD Virtualization™ technology (AMD-V™), and AMD PowerNow!™ technology.

          Silver Sponsors of openSUSE

          https://en.opensuse.org/Sponsors

          Comment


          • #6
            Originally posted by elldekaa View Post
            Nothing planned from AMD in the LLVM front? It would be nice to have radeon offloading along with nvidia over there =)
            I know AMD has been working on a version of their compiler HCC2 that has support for device offloading. That version is based off LLVM and eventually they want to get the changes up stream into LLVM. So I assume it will arrive at some point, since HCC2 already provides support itself.

            Comment

            Working...
            X