Announcement

Collapse
No announcement yet.

Processor Affinity with 3.40

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

  • Processor Affinity with 3.40

    Hey folks,

    I frequently use Windows Task Manager to disable several processors' affinity in my active 3dsmax.exe process so that I can work easily in other applications during test renders. I have found with the latest update (3.40.02), that when I render, the process continually reverts to <All Processors>, either at the beginning, during, or after test renders.

    Using this thread from a year ago (http://forums.chaosgroup.com/showthr...essor+affinity), I've been able to use renderers.current.system_numThreads=N to control this, but it does embed into the scene, and without any visual cue, this means its easy to forget. Is there any easy visual way to keep track of this? If the old Windows Task Manager route isn't going to work anymore, it would be great if we could get something in the UI, preferably in the VFB itself, to control the number of processors being utilized.

    mike.

  • #2
    This is mentioned in another post. That'll no longer work, it was disabled, otherwise you couldn't use for than so many cores. I'm not going to pretend I understand, but a forum search might help explain.
    Bobby Parker
    www.bobby-parker.com
    e-mail: info@bobby-parker.com
    phone: 2188206812

    My current hardware setup:
    • Ryzen 9 5900x CPU
    • 128gb Vengeance RGB Pro RAM
    • NVIDIA GeForce RTX 4090
    • ​Windows 11 Pro

    Comment


    • #3
      If you want to continue using the Task Manager, you can set the environment variable VRAY_USE_THREAD_AFFINITY=0 to stop V-Ray from trying to use all cores. This will also prevent V-Ray from working on more than 64 cores.

      Alternatively, you can also use the environment variable VRAY_NUM_THREADS=N where N is the number of threads to use. This is not persistent in scene files, and it will allow V-Ray to use more than 64 cores.

      Best regards,
      Vlado
      Last edited by vlado; 19-07-2016, 12:21 AM.
      I only act like I know everything, Rogers.

      Comment


      • #4
        Awesome. Thank you, Vlado. That was exactly what I was looking for. Up until some additional digging, I didn't understand what environment variables did or how to use them. Thanks again.

        Comment


        • #5
          Originally posted by vlado View Post
          VRAY_USE_THREAD_AFFINITY=0
          This doesn't work when using Progressive... It just keeps reverting back to using all threads.

          Edit: And nor does VRAY_NUM_THREADS


          This is a rather urgent problem for me as I can't use my workstation while rendering... I now have to change affinity every 30 seconds to keep working and it's infuriating...
          Any chance we can get a checkbox in settings? Or a solution that works with progressive?

          Thanks
          Last edited by Pixelcon; 01-10-2016, 01:57 PM.
          James Burrell www.objektiv-j.com
          Visit my Patreon patreon.com/JamesBurrell

          Comment


          • #6
            Same here. I think Chaos spoke about it and it's hard coded so you can use more cores, or something like that.
            Bobby Parker
            www.bobby-parker.com
            e-mail: info@bobby-parker.com
            phone: 2188206812

            My current hardware setup:
            • Ryzen 9 5900x CPU
            • 128gb Vengeance RGB Pro RAM
            • NVIDIA GeForce RTX 4090
            • ​Windows 11 Pro

            Comment


            • #7
              I can't say that I understand why, but I have not had that problem since adding that environment variable. You don't by chance have Process Lasso, running, do you? I have process lasso installed so that I can use Topaz plug-ins while editing photography, but I have found that I need to disable it and its core process for 3ds Max and vray to work properly with affinities. So I only run it selectively. Don't know if that helps at all, but best of luck. I very much feel your pain.

              Comment


              • #8
                Originally posted by Pixelcon View Post
                This doesn't work when using Progressive... It just keeps reverting back to using all threads. Edit: And nor does VRAY_NUM_THREADS
                There is no logical possibility for both of these not to work. I don't think this is V-Ray's fault.

                Any chance we can get a checkbox in settings?
                I'm afraid not. There is also the renderers.current.system_numThreads parameter, but it only works for rendering inside a GUI session of 3ds Max (i.e. not through backburner). Also, the preferred method to change the CPU usage from a process IS TO LOWER THE PROCESS PRIORITY, NOT TO CHANGE ITS AFFINITY (sorry for the bold caps, but seems it's hard for people go grasp that). I don't know who came up with the idea of changing the process affinity.

                Or a solution that works with progressive?
                In my tests all of these methods work fine with the progressive sampler.

                Best regards,
                Vlado
                I only act like I know everything, Rogers.

                Comment


                • #9
                  Originally posted by vlado View Post
                  but seems it's hard for people go grasp that
                  This is the first time I'm hearing it...
                  James Burrell www.objektiv-j.com
                  Visit my Patreon patreon.com/JamesBurrell

                  Comment

                  Working...
                  X