Fluids

Fluids

Topics related to Fluent, CFX, Turbogrid and more.

Environment Tab of Fluent Launcher Doesn’t Alter Launched Behavior

    • comiskeyp
      Subscriber

      Hello,

      I'm having an issue running Fluent using HPC resources and it appears to be related to the processor affinity. I'm using Slurm as a scheduler, have followed these instructions on the forum, and can launch Fluent on the HPC when there are no other jobs on the node. However, I run into issues when requesting resources that require multiple nodes, and I believe that it may be due to the default behavior of Fluent requesting to be run on nodes exclusively. Specifically, my .slurm file which gets created when I submit a job looks like the following:

      Investigating the processor affinity resolution document on the forum, and reading the 24R2 User's Manual, it appears that the "--exclusive" flag may be the issue. This can be altered with the environment variable "FLUENT_AFFINITY=" according to Section 4.1.2.6 in the User's Manual, however, whatever I type into the Environment tab of the Fluent launcher appears to be ignored when Fluent is launched. In other words, I can't seem to change the affinity with the Fluent launcher. Additionally, it seems like anything, not just a command that I type into the Environment tab seems to be ignored when Fluent is launched. Note that I'm not changing Windows environment variables in addition to typing in the Environment tab of the Fluent Launcher.

      Does anyone have ideas or experience with getting the Fluent Launcher to use what's typed in the Environment tab, or how to change the affinity?

      Thanks

    • CFD_Friend
      Ansys Employee

      Hi comiskeyp,

      "--exclusive" and "FLUENT_AFFINITY" are two completely different things. "--exclusive" tells slurm to submit in exclusive mode. That is, to only allocate to machines that are not already partially in use.  Depending on how the slurm is configured some queues may already have been defined to be exlusive only queues. You can turn it off with the undocumented command line option -scheduler_exclusive=0, though it will only make a difference on queues that are not defined to be exclusive. When you run Fluent with -scheduler=slurm all it does is write out a slurm script and submit it. The screenshot is of the script that fluent wrote out. Nothing you set in the environment tab will affect the contents of the  script. But you can edit the script to anything you want and resubmit it with an sbatch command. However, if you turn off exclusive mode and submit to a machine on which fluent is already running you may see messages that affinity is not being set. All that means is that allocation of processes to cores will be handled by the operating system instead of by MPI. It is less efficient but it won't stop the solver from running.

      • comiskeyp
        Subscriber

        Hi CFD_Friend, thanks for the reply. I guess I conflated "--exclusive" and "FLUENT_AFFINITY", thanks for clearing that up! From my understanding of how slurm is configured on our HPC, there are not exclusive only queues, and I'm the only one running Fluent so there shouldn't be an affinity issue. It's also good to hear about "-scheduler_exclusive=0", that sounds like exactly the command line option I need, however, I'm not too sure how to apply it outside of submitting a batch job. Since Fluent automatically creates that script and the environment tab does not affect the contents of that script, is there no possible way to run Fluent with the GUI on my Windows machine using our Linux HPC with the exclusive option turned off?

        To me, it at least doesn't seem possible with the Windows Fluent launcher which leads me to attempt to launch the Fluent GUI through the command line with Windows Command Prompt where I could supply the option "-scheduler_exclusive=0". This leads me to the documentation "Running Fluent Using a Load Manager", but in Section 2.1.2.1, it sounds like I need to submit to Slurm with a journal file. Since I'm trying to use the GUI, this sort of defeats the purpose. I've attemped to open Fluent with the command line example in Section 2.1.2.1 without the journal file and Fluent simply opens everything on my local machine ignoring the Slurm commands. Can I run Fluent with Slurm from the Windows Command Prompt without a journal file?

        All of this leads me to believe maybe my workflow is just wrong. Is it not common and/or not recommended to run Fluent with the GUI on a local Windows machine using processors on a Linux HPC?

Viewing 1 reply thread
  • You must be logged in to reply to this topic.