Announcement

Collapse
No announcement yet.

Pop!_OS 19.10 Released With Tensorman Tool For Tensorflow Management, GNOME 3.34

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

  • Pop!_OS 19.10 Released With Tensorman Tool For Tensorflow Management, GNOME 3.34

    Phoronix: Pop!_OS 19.10 Released With Tensorman Tool For Tensorflow Management, GNOME 3.34

    System76 has released their newest operating system update of their Pop!_OS distribution based upon Ubuntu. Pop!_OS 19.10 is based upon this week's release of Ubuntu 19.10 "Eoan Ermine" but adding various extra changes and enhancements...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    I never found it all that hard to run tensorflow. Building it is a whole nother matter. You can use the NVIDIA NGC containers if you want good GPU support. Was this something Pop OS users were asking for? It looks like they just shortened a few commands. Maybe it's because I'm familiar with how to use docker I never found this to be a problem.

    Comment


    • #3
      It's only supporting nvidia with CUDA? What about the AMD ROCm support that is available for using with Tensorflow?

      Comment


      • #4
        Originally posted by polarathene View Post
        It's only supporting nvidia with CUDA? What about the AMD ROCm support that is available for using with Tensorflow?
        They have more information here[0], but the general problem with ROCm is it’s problematic to install (for the required host pieces). I don’t run Ubuntu or have AMD hardware, but reading through the ROCm readme[1] linked from the ROCm docker page[2] shows that there is enough host system configuration necessary that it’s not OOTB ready yet to be used with a tool like Tensorman. Or that Tensorman isn’t mature enough yet to handle ROCm.

        Cheers,
        Mike

        [0] https://support.system76.com/articles/use-tensorman/
        [1] https://hub.docker.com/r/rocm/tensorflow/
        [2] https://github.com/RadeonOpenCompute...quick-start.md

        Comment


        • #5
          Originally posted by mroche View Post
          The general problem with ROCm is it’s problematic to install (for the required host pieces).
          Isn't that something the tool could check has been handled by the user upfront and if it's not been taken care of, inform the user in some way or claim it's unsupported? For System76 where you'll generally find Pop!_OS on their products when purchased, surely they can ensure packaing/setup of such for the user in their distro for customers that purchase products with AMD GPU(s)?

          The README doc you mention states only Ubuntu and Fedora have official support, not that they're the only ones that work. You can find upstream kernel support for ROCm from 4.17 or later(provided you're GPU is listed as having upstream support here[0]), or using the kernel module rock-dkms(only officially supports 4.18 kernel, but may work with newer ones), on Arch Linux, that's available to users in the AUR for example, other distros likely have that available too.

          Although, as you might notice, some of the docs might be a tad out of sync / out of date. The link I provided cites official support for Ubuntu and CentOS/RHEL instead of Fedora, but also provides supported distro release versions too.

          Originally posted by mroche View Post
          Reading through the ROCm readme shows that there is enough host system configuration necessary that it’s not OOTB ready yet to be used with a tool like Tensorman
          Do you also not have much experience with Docker or installing kernel modules/packages? Going through those instructions on the README isn't as complicated as it looks(I assume the length of it and script/command snippets at a glance may have given that impression?).

          Step 1. Have a compatible kernel, or install the kernel module(eg rock-dkms, not unlike installing nvidia drivers). On some distros, this is likely a no-op, or someone has packaged the module, like the nvidia driver. On Pop!_OS this could likely automated and handled for the user? (Note: Nvidia has similar setup requirements afaik?[1])

          Step 2. Have docker installed. This is a given already if you're wanting to use Tensorman(like for current nvidia support).

          Step 3. Use the overlay2 storage driver(Optional). This is best practice / standard if you're using Docker usually(depending on filesystem). If you have docker experience, it's probably a change you've done. Pop!_OS could also default this for their distro if it's not default already. (Note: Nvidia also has advised the same thing[2])

          Step 4. Use the Docker image. Their instructions and terminal videos demonstrate cloning the repo and building the image locally with Docker or Docker-Compose, but you could pull down a pre-built image from DockerHub[3]. Note the terminal videos are running on Ubuntu 14.04? Perhaps they lacked the DockerHub image at the time, I dunno.

          Step 5. Run a command in the container to verify it's working properly.

          [0] https://rocm.github.io/ROCmInstall.h...-linux-kernels
          [1] https://github.com/NVIDIA/nvidia-docker
          [2](Page 58) https://www.nvidia.co.kr/content/apa...1_Joshpark.pdf
          [3] https://hub.docker.com/r/rocm/tensorflow/


          TL;DR steps:

          #1 Have a recent kernel/distro or install rock-dkms package. Have docker installed(package).

          #2 Add the `drun` alias from the DockerHub to your shell profile, or just use the full command. Run it like so(setting storage driver and which rocm tensorflow image to use, followed by a command to run:

          Code:
          drun --storage-driver=overlay2 rocm/tensorflow:rocm2.6-tf1.14-python3 hcc --version
          Done.

          Raised an issue on the github project if anyone wants to subscribe to it(assuming Tensorman will add support for AMD in future).

          Comment


          • #6
            I got this installed but for some reason it doesn't remember ANY settings for the desktop, not even display configuration. Quite annoying, seems I've lost sometime along the way, probably result of switching to plasma and sddm at some point

            EDIT: Just some corruption in my user account folder somewhere, a common issue when messing with multi desktops. Tip for new comers, migrate to NEMO, nautilus is so terrible!

            Also it seems fractional scaling is still not quite working right for gnome, many apps suffer from subtle but obvious blur/fuzz
            Last edited by theriddick; 20 October 2019, 01:41 PM.

            Comment


            • #7
              Using POP OS here and actually working great out of the box on a fresh installation. Quite good for a laptop setup. Sane defaults and not bloated. Great job.

              Comment


              • #8
                Originally posted by polarathene View Post

                Isn't that something the tool could check has been handled by the user upfront and if it's not been taken care of, inform the user in some way or claim it's unsupported? For System76 where you'll generally find Pop!_OS on their products when purchased, surely they can ensure packaing/setup of such for the user in their distro for customers that purchase products with AMD GPU(s)?
                They can, and in time they likely will. That being said ROCm is still fairly new to being used with Tensorflow, so it makes sense that the first release of the tooling is focused on the largest majority of users, ala CUDA users.

                Originally posted by polarathene View Post

                The README doc you mention states only Ubuntu and Fedora have official support, not that they're the only ones that work. You can find upstream kernel support for ROCm from 4.17 or later(provided you're GPU is listed as having upstream support here[0]), or using the kernel module rock-dkms(only officially supports 4.18 kernel, but may work with newer ones), on Arch Linux, that's available to users in the AUR for example, other distros likely have that available too.
                Fedora does not and has never had official ROCm support in any capacity/report I've seen, that's Ubuntu and RHEL (hcc seems like it may, but it's all built from source in their wiki). The doc I linked may have used the Fedora phrasing as RHEL is a sort of Fedora derivative, but Fedora is not supported by the group. It can work if built from source, or the RPMs provided may function on Fedora, but they aren't built for it. And assuming their documentation is still accurate (despite showing 2.7 as the release number), the upstream kernel usage has some serious limitations. I would expect rock-dms to exist in Pop_OS! since it's in Ubuntu, but I don't know if that's included in 19.xx as I don't use said distributions.

                Originally posted by polarathene View Post
                Do you also not have much experience with Docker or installing kernel modules/packages? Going through those instructions on the README isn't as complicated as it looks(I assume the length of it and script/command snippets at a glance may have given that impression?).
                Everyday. I will freely admit here that I read the README much too quickly and when I saw the `wget` command, the words mixed together and I thought I was reading instructions to build the kernel module, not install the repo file and package. I'm also realizing that I wrote my prior statement at 1:30 in the morning, and that did not help

                Though my statement wasn't about how it is simple for people like us, and did go outside of the realm of supported distributions. I was thinking of how packaging for ROCm is still not universal due to some hardcoded natures (if memory serves me right), but that doesn't apply to Ubuntu et al and was a case of not thinking clearly at the time. I would like to see ROCm support and processes added to Tensorman, and I think it will in the future. The folks at System76 are smart people and will figure out a way to handle all of the configuration checks that are necessary for the tool to work properly. I saw your GitHub issue, just give them a bit of time and it'll likely show up.

                Cheers,
                Mike

                Comment

                Working...
                X