I recently decided to force myself to actually learn FreeCad. I’ve tried on and off for the past two years but just couldn’t get along with the UI and workflow…well, now I’m giving it an honest shot, and after a few weeks of misery, it is getting better.

But my laptop is not particularly powerful, and I frequently have performance issues when working with imported step-files. Lo and behold, you can run FreeCad in docker, so I can use my server which is significantly more powerful and just access via browser.

The catch is, it seems to run even worse than on my laptop. I can also see that it actually doesn’t use much of the available power of the server. Does anyone have experience with setting up a docker compose for FreeCad? I’ve looked at the docs and my GPU should be passed through and I’ve also allocated 32GB ram to the container. But it doesn’t actually use it it seems.

  • kvadd@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    15 hours ago

    Not an answer to your question, but i’m more curious about how you started learning freeCAD. Was there a tutorial or something you followed?

    I’m currently in the same boat as you, trying to learn but it’s not really intuitive.

  • Test_Tickles@lemmy.world
    link
    fedilink
    English
    arrow-up
    10
    ·
    2 days ago

    My guess is that the GPU available on the Serv is either really underpowered for 3d rendering, or not being clearly picked up by the docker. If the docker having to completely render in software, it is going to be slow

    • dual_sport_dork 🐧🗡️@lemmy.world
      link
      fedilink
      English
      arrow-up
      5
      ·
      2 days ago

      FWIW, FreeCAD does not use the GPU for geometry calculation at all. That’s done purely in software and insofar as I’m aware it’s not even multithreaded. Your GPU is only used in any capacity for final display, i.e. spinning the already calculated model(s) around in the preview window which it does via OpenGL. Otherwise it’s all CPU.

      Spinning a complicated model around at 244 FPS (my monitor’s maximum display frequency) makes my GPU peak at all of… around 3.5%. Doing a total recalculation on said model or changing a feature on it spikes CPU load momentarily but doesn’t register on GPU usage at all. Doing the same on my laptop which instead has the usual early-gen Intel Graphics Decelerator in it doesn’t provide much of anything different in the speed and usability department. OP’s problem therefore surely lies elsewhere.

      • Test_Tickles@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 day ago

        That’s true. I hadn’t realized how little it uses the GPU. I have had other 3d cad apps that I have worked with that were impossible to run on a server without a well above average video card, so that was definitely my first thought.
        I guess one thing he could do is try some other opengl apps on his server and in the same docker. I have seen some badly configured servers and docker instances that fell back to rendering everything to bitmap.and then using some antiquated x11 bitmap handling routines to transfer the images. The handling of the images was so slow it was impossible to use.

  • GreenKnight23@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 day ago

    you might be having latency issues if you’re on WiFi. try a hardline.

    others have also pointed out GPU access, something to look at.

    finally it could be the vnc protocol sucks at streaming the app. try setting up an x11 forward for it to stream it from your server to your local.

  • HelloRoot@lemy.lol
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    2 days ago

    do you have a docker image or link so that I can try it out and see if it’s the same for me?

  • Stampela@startrek.website
    link
    fedilink
    English
    arrow-up
    3
    ·
    2 days ago

    I don’t have any experience here, but everything seems to point towards the docker being just a way to install it for any machine, for ease of management, not a streaming/remote control situation where the software runs on the server, and you just see/interact with the video output. So probably the slowdown is caused by your laptop liking FreeCad even less once it’s running in your web browser.

    Obviously I can be way off, but this is what it looks to me.

    • ExcessShiv@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      4
      ·
      edit-2
      2 days ago

      Docker is just a virtualized environment that enables OS agnostic deployment of services, it is normal to access the dep via a web interface, I do this with orca slicer (and a bunch of other stuff) too without issues. The docker image of FreeCad is specifically intended to be accessed via web interface.

      • Stampela@startrek.website
        link
        fedilink
        English
        arrow-up
        2
        arrow-down
        3
        ·
        2 days ago

        Yes, but your laptop is not liking the software, and now you are running it in a browser too. Unless the service offered by the container is remote control, then it’s not going to be of any help for you. Difference between running a HTML5 game in your browser, or GeForce Now: one runs locally, the other is just a video feed.

        • ExcessShiv@lemmy.dbzer0.comOP
          link
          fedilink
          English
          arrow-up
          5
          ·
          edit-2
          2 days ago

          FreeCad is run inside the container, on the server hardware, the frontend is then accessed via browser. My laptop is not doing any more work than browsing the internet, it’s all handled by the server hardware.

          • atzanteol@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            1
            ·
            2 days ago

            A lot of the work FreeCAD does is in the client though. Rendering the display. That’s not going to be done server-side.

            • ExcessShiv@lemmy.dbzer0.comOP
              link
              fedilink
              English
              arrow-up
              2
              ·
              2 days ago

              Thats also not the most intensive part. Managing geometries and compute is the most intensive part and that is done server side.

                • ExcessShiv@lemmy.dbzer0.comOP
                  link
                  fedilink
                  English
                  arrow-up
                  1
                  ·
                  edit-2
                  2 days ago

                  Its really not that intensive, I barely break 15% CPU utilization and 25% RAM utilization on my laptop wheen using via browser to dockerized FreeCad on the server, compared to 100% CPU and 45% RAM when running FreeCad directly on the laptop.

            • Blue_Morpho@lemmy.world
              link
              fedilink
              English
              arrow-up
              1
              ·
              edit-2
              2 days ago

              Are you familiar with remote desktop or ssh? Imagine you ssh in to a remote server and run a command. What resources are being used on your client PC? Same thing with FreeCad running on a remote server and you connecting to it via a web browser as a remote desktop. The client web browser is doing nothing but getting a compressed video stream from the server. Like watching Youtube.

              • atzanteol@sh.itjust.works
                link
                fedilink
                English
                arrow-up
                1
                ·
                2 days ago

                Are you familiar with remote desktop or ssh?

                Very.

                I didn’t realize that’s what this was doing though. Still requires a bit of client-side rendering performance from the browser and network capability. Depending on what potato they’re using on the desktop the latency might be giving the perception of “slowness”.

        • HelloRoot@lemy.lol
          link
          fedilink
          English
          arrow-up
          3
          ·
          2 days ago

          Thats not how that docker container is actually set up.

          What you describe does exist, but here it is actually running on the server and gets streamed to the users browser.

    • ExcessShiv@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      4
      ·
      edit-2
      23 hours ago

      The whole point of switching to FreeCad (for me) is to get rid of proprietary software from shitty companies.

      • daannii@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        23 hours ago

        Yeah that’s fair. But I don’t pay to use it.

        I didn’t pay for my copy of Photoshop or illustrator either.

        🦜 ⚓

          • daannii@lemmy.world
            link
            fedilink
            English
            arrow-up
            1
            ·
            8 hours ago

            I 100 percent agree that if you can use open source, then do it.

            I haven’t tried openscad but I’m willing to try it. I did start learning 3d CAD on FreeCAD and I had a bad time.

            Actually when I first saw this post I thought openscad was the program I had previously used but after double checking, I realized I was mixed up.

            Hey I love blender and it’s Open source and it’s always evolving and improving.

            I use other open source like audacity and shotcut.

            But sometimes there isn’t anything better than a proprietary software. Ive never found a comparable replacement for Photoshop, Camera raw, or illustrator. I also like paint tool sai. It’s not free exactly but it is a one time small fee. Small company owns it.

            So Ill just keep using my pirated versions of those Adobe programs.

            But I’m always open to finding alternatives.

    • altphoto@lemmy.today
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 day ago

      Learning fusion 360 at home is like getting word or excel to use at home. Freecad is freedom like libre office.