Yup. always gotta be that one single threaded program. In this case, appears to be frigate.

  • Morethanevil
    link
    fedilink
    English
    2311 months ago

    Multithreading is almost impossible with only a few cores. It is barely enough to run Windows 🥺

    You should upgrade soon ☝🏻

    • HTTP_404_NotFoundOPA
      link
      fedilink
      English
      1011 months ago

      I know, it’s horrible.

      Although, I really need to get this machine added into my proxmox cluster. My cluster really does need more resources…

      But, my good old unraid box just “works”… so, I don’t wanna touch it lol

  • @deleted@lemmy.world
    link
    fedilink
    English
    1711 months ago

    It’s mildly infuriating tbh but I understand it’s hard to implement threading for some functions.

    What actually infuriates me more is some AAA titles that specifically utilize 4 threads of my 3950x 32 threads cpu.

    • @vext01@lemmy.sdf.org
      link
      fedilink
      English
      911 months ago

      Programming with threads is much harder than using a single thread.

      First your workload has to be split up in such a way that it can be distributed. That’s not always possible.

      The you gotta insert “synchronisation” to avoid a whole class of concurrency issues.

      Hence programmers always default to a single thread unless really needed.

      • shadowbert
        link
        fedilink
        611 months ago

        Of course - I get that. I’m a programmer myself.

        But it does have to be said that there’s little excuse for not doing it anymore for heavy applications, especially games. The tools/frameworks/engines have vastly improved, and people know (at least roughly) ahead of time what work is going to slog the CPU, especially in the case of a AAA studio.

        Note: I’m only referring to relatively modern games here - anything that’s older than when multithread really took off gets an automatic pass - it’s not reasonable to expect someone to cater for a situation that doesn’t exist yet.

        • @douglasg14b@lemmy.world
          link
          fedilink
          1
          edit-2
          11 months ago

          there’s little excuse for not doing it anymore for heavy applications, especially games

          … Wut. You chose one of the best examples of where multi-threaded workloads are extremely difficult and often impractical as your example of where it should definitely be used…? 🤦

          Games are where it’s the most difficult, nevermind enterprise workloads that can be multi-threaded on paper, while games can often not even make that work in theory. Game workloads are incredibly, almost insurmountably, difficult to multi-threaded for most teams and studios.

          Not just from a technical standpoint but from a practical standpoint as well as you are significantly increasing the surface area for software defects, full of pitfalls and gotchas. Sure you can multi-thread your workload but now it actually runs slower than it would have if you never did this at all due to increased resource usage as a result of synchronization…etc

          Games like factorio are rarities, where the developers had both a small game and scope, and all the time and resources they needed to produce multi-threaded solutions to their workloads. Engines like unity have ECS, which has limitations of use and comes with extra asterisks. But outside that and a few other examples actual multi-threading is a massive undertakings that may actually mean your Game cannot be delivered.

          • shadowbert
            link
            fedilink
            211 months ago

            Difficult, yes. Impractical? Absolutely not, at least with some planning ahead. It’s not trivial (and I never said it was) but it’s getting both easier and more important every year.

      • @deleted@lemmy.world
        link
        fedilink
        English
        311 months ago

        I’m programmer myself and I understand that it’s not simple even though you can use blocking or protected collections.

        I’m referring to a situation where the programmer made a function multithreaded but hard coded creating only 4 threads “to fully utilize a 4 core cpu”

        • AggressivelyPassive
          link
          fedilink
          English
          511 months ago

          Multithreading in games is much more difficult because you not only have to make sure, everything is synchronized, but also that everything finishes in time. It’s a bit like a RTOS in that regard. Using a known and fixed amount of threads can be a sane choice.

    • shadowbert
      link
      fedilink
      311 months ago

      Heh. Classic case of being able to market your product as being “multithreaded” because is uses 2 threads? :P

      • 𝘋𝘪𝘳𝘬
        link
        fedilink
        311 months ago

        “The garbage collector runs in a second thread! This means we’re fully multithreaded now! Ship to customer and advertise multithreading!”

    • HTTP_404_NotFoundOPA
      link
      fedilink
      English
      311 months ago

      I know your pain. Although, my gaming PC is only rocking a Ryzen 7 5800x. Not, nearly as many threads… but, there are a ton of games which are only using a small fraction of the available CPU.

      If I recall, Assassins’ creed was pretty bad about it… Minecraft (Especially modded) was horribly single threaded. And- more.

    • HTTP_404_NotFoundOPA
      link
      fedilink
      English
      111 months ago

      Oh, no bottleneck.

      But, just found it interesting out of the 64 threads on this box… there is typically one maxed out.

        • HTTP_404_NotFoundOPA
          link
          fedilink
          English
          311 months ago

          Apologies then, its harder to sense sarcasm here on lemmy… when people are 100% serious about going around and vandalizing cars, because people have them… (Not- joking…)

  • Ocelot
    link
    fedilink
    English
    511 months ago

    Getting a coral TPU should massively improve that. Worth the $$ imo

      • Ocelot
        link
        fedilink
        English
        211 months ago

        Considering I have 8 HD cameras and my coral is barely breaking a sweat. wow.

        Have you tried lowering the detection framerate?

  • @SubPrimeBadger@lemmynsfw.com
    link
    fedilink
    English
    211 months ago

    Xeon gang in the house. I picked up an HPE with an E5-2650 v4 on eBay with 64GB memory and some spinning disks for $180. Best investment I have made. It’s the z640 tower so pretty quiet and doesn’t need a rack. Core count has made my life a whole lot easier.