🧡 Skip to main content🔍 Skip to search
Matthew AdamsBy Matthew Adams 🕢 Updated on January 3, 2024 at 7:30 am

Automation Workshop includes the Tweak App Action that enables you to pin logical processors in Windows to the selected applications or background processes. Custom processor allocation overrides the OS scheduler allocated CPUs with user selected ones.

Automation Workshop includes the Tweak App Action—a feature designed to allow users to assign specific logical processors in Windows to the specified applications or background processes. In other words, it allows an app to use only specified CPU cores.

This custom processor allocation supersedes the OS default scheduler, providing you with enhanced control over CPU resources and the potential to optimize performance based efficiency/performance cores or physical memory/hardware proximity.

YouTube video · Automatic CPU pinning in Windows

Overview

Simply select an application or background process to fine tune its priority and allocate the selected cores or a whole NUMA node. As a part of an automated workflow, the Tweak App Action is adjusting CPU pinning in an unattended manner without necessity to adjust thread affinity manually using Windows Task Manager.

CPU pinning on 8–15 logical processors

Information about your CPU configuration is shown instantly, while hovering your mouse over each logical CPU will reveal information about its NUMA node and shared physical CPU cores.

Windows Task Manager

Windows may not always have a comprehensive understanding of your CPU architecture, leading to potential inefficiencies in the operating system scheduler when allocating the most performant cores to your programs.

Factors such as physical memory and PCIe proximity, as well as, power efficiency and performance cores might not consistently align with the CPU allocation algorithms employed by the Windows Kernel, which can impact overall system performance.

Task Manager summary view · AMD EPYC 7R13
AMD EPYC 7R13 CPU with 192 logical processors

In certain situations, Windows may allocate CPUs or cores unevenly based on your specific workloads being executed. This can lead to a suboptimal distribution of resources, with some cores remaining idle while others are tasked with running multiple applications or background processes simultaneously.

To address this issue, you can explore options for custom processor allocation, allowing for a more balanced and efficient distribution of resources across all available cores. This can help you to maximize system performance and ensure that each core is optimally utilized.

CPU affinity on 2 sockets, 2 NUMA nodes, 36 cores, 72 logical processors

Customizing CPU affinity for applications and background programs can significantly improve the efficiency of your system. CPU pinning, thread affinity, and other related concepts can provide more control over hardware resource allocation, ensuring that applications run at peak performance while minimizing resource bottlenecks.

One of the primary reasons to leverage Automation Workshop for CPU affinity customization is to optimize resource utilization for your mission-critical applications. In many cases, multiple applications and programs run concurrently on a system, competing for CPU resources.

By using the Tweak App Action you can customize CPU affinity by assigning specific CPU cores to high-priority applications, thus ensuring that these applications receive the required CPU resources. For instance, assigning dedicated CPU cores to a real-time analytics application can lead to faster processing times and more accurate insights.

Another practical use case for the custom CPU pinning is to maximize the performance of multi-threaded applications. In a scenario where an application is designed to take advantage of parallel processing, customizing CPU affinity can help you to ensure that individual threads of your apps are distributed across multiple CPU cores. For example, a video rendering application can greatly benefit from this approach, as it can speed up the rendering process.

Summary

Automation Workshop can provide you with a powerful no-code tool to enhance application performance and optimize resource allocation by utilizing CPU affinity customization. By assigning CPU cores and NUMA nodes to specific applications, you can ensure that your high-priority tasks receive the necessary computational resources. Improve system effectiveness, increase performance, and reduce hardware costs:

  • Improved system performance—pinning applications to specific CPU cores can reduce performance bottlenecks, allowing applications to run at their peak performance.
  • Automation of the affinity setting process—the Tweak App Action allows users to automate the process of setting CPU affinity, freeing up valuable time and resources.
  • More precise allocation of system resources—with the Tweak App Action, users can allocate specific CPU cores to applications and processes, ensuring that critical workloads receive the resources they need. This can result in a more efficient and reliable system overall.

A fully functional trial version of Automation Workshop is available for immediate download (no registration required).

Questions?

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