🧡 Skip to main content🔍 Skip to search

Tweak App Action modifies CPU priority for a Windows app or process. It also allows pinning an app to a particular CPU core/thread or multiple virtual CPUs. Overall system performance can be greatly optimized by selecting the correct logical CPUs for an app.

Use the App Monitor or Task Scheduler Triggers to reinforce CPU affinity when the OS scheduler decides to allocate different CPUs to the process.

ApplicationDetails
ApplicationSelect a process or app to fine-tune:
  • Simple · choose a name from the list.
  • Dynamic · provide a name of executable (with an optional path). Utilize the Variable Wizard to incorporate input from variables.
  • Process ID · use a process identifier (usually using the Variable Wizard PID value that is returned by other Actions or Triggers).
App infoShows the current status of a process or application, for example:
  • The application "Settings" is currently running.
  • The process "Lighting" recently was closed.

The tooltip displays extended process information in real-time.
Priority Select one of the standard Windows process priority classes. This will change the CPU priority for all application threads:
  • Realtime
  • High
  • Above normal
  • Normal
  • Below normal
  • Low
  • Do not change
Priority boost Enable or disable the ability to temporarily boost performance of the selected app:
  • Enable
  • Disable
  • Do not change
CPU affinity Choose a logical CPU or multiple CPUs to allocate for the selected process. Selecting CPUs from multiple NUMA nodes will activate them only from one NUMA node (in most server configurations).

Depending on your BIOS and Windows configuration a logical CPU is one of the following:
  • Physical CPU
  • CPU core
  • A virtual CPU core (when Hyper-thread is enabled)

Hover mouse over each CPU to view its properties, such as NUMA node number and which virtual cores are shared with a particular physical core · CPU affinity explained

Use Max / More feature to add additional cores, which are limited by Automation Workshop edition · Compare editions

Adding more cores than your system has, will not have any effect when the Task runs, however, it is useful when you are configuring workflows for Remote deployment.
System configuration The quick overview shows your current CPU configuration:
  • 1 NUMA node · 6 cores · 12 logical processors
  • 2 sockets · 2 nodes · 36 cores · 72 processors
  • 2 sockets · 4 nodes · 96 cores · 192 processors

Hover your mouse over the info block to reveal more in-depth CPU information including make and model:
  • AMD EPYC 7R13 · 2,650 MHz
  • AMD EPYC 7R13 Processor · 2.65 GHz
  • AMD64 · Family 25 · Model 1 · Stepping 1
  • Authentic AMD
Start menuStart menu buttonChoose an App using the virtual Windows Start menu. All the necessary app parameters will be prefiled automatically.
BrowseBrowse buttonUse Browse to select a particular file or folder on local disk, network share on LAN (local area network), etc.
Variable WizardVariable Wizard buttonUse dynamic data input—substitute a parameter from a file, web, connected Trigger, other Actions, date and time presets, etc.
YouTube video · Automatic CPU pinning in Windows

Interconnect

  • Dynamic variables & Events of the Tweak App. Access the path and filename of the executable that was fine-tuned, along with its Process ID (PID). If more than one app was modified, access the list of PIDs and the number of affected app instances.

    Additionally, information, warning, and failure events regarding the tweaking success, potential problems, or switches to fallback mode are recorded.

Note

In Windows, an app or background process can have multiple instances of the same executable running concurrently. You have three options to choose from:

  • Selecting an app from the provided list by its name will modify all instances of the app.
  • Typing a name of the app manually will also tweak all instances of the app.
  • Providing a specific Process identifier (PID) of the app or process will only tweak the specified instance. The PID can be obtained using Variable Wizard from other Actions.

It's important to note that the first two options are used to tweak all the instances of the running app, whereas the last option is for modifying only the specific instance of the app.

CPU affinity on 1 socket, 1 NUMA node, 6 cores, 12 logical processors

Capabilities

While Automation Workshop doesn't have hardcoded limits, your system configuration and Windows edition can limit the available number of CPUs, cores, threads, and NUMA nodes.

  • It is recommended to execute the Task using the SYSTEM user account or, at least—with a user account that has administrative privileges.
  • The 32-bit version of Automation Workshop is limited to the first 32 cores (0–31 vCPU) in the 1st NUMA node. However, if your workflow is designed to be run on a remote machine, the Max / More feature can be used to add more CPUs.

Ask for more…

If you have any questions, please do not hesitate to contact our support team.