# Optimizing Virtual Machines for Specific Tasks

When creating a virtual machine, you can optimize it according to your needs. You can choose to configure the virtual machine for:

<table><thead><tr><th width="224">Profile</th><th>Properties</th></tr></thead><tbody><tr><td><strong>Productivity</strong></td><td><p>This profile is optimized for everyday tasks such as using Windows applications, web browsing, email, and other tasks. It provides a balanced allocation of CPU and memory resources to ensure smooth performance and multitasking capabilities. Priority is given to performance over battery life.</p><p></p><p><strong>Ideal for</strong>: Almost everyone. People primarily using their VM for standard office work and productivity tasks will benefit most from this profile.</p></td></tr><tr><td><strong>Games only</strong></td><td><p>Designed specifically for gaming, this profile maximizes graphics performance to deliver the best possible gaming experience. It tunes the keyboard, mouse, and display settings for a better experience when playing games. Virtual machine starts in full screen mode by default.</p><p></p><p><strong>Ideal for</strong>: People who want to play Windows games on a Mac.</p></td></tr><tr><td><strong>Design</strong><br>(only available in Pro and Business Editions)</td><td><p>Optimized for graphic designers and users who work with graphics-intensive software. This profile provides high memory allocation and enhanced graphics performance to ensure the smooth operation of resource-intensive design applications and tools.</p><p><br><strong>Ideal for</strong>: Graphic designers, engineers, creative professionals and other people who need to run demanding graphics-intensive apps.</p></td></tr><tr><td><strong>Software development</strong><br>(only available in Pro and Business Editions)</td><td><p>This profile is tailored for software developers who need a robust environment for coding, running development tools, and testing software. It features enhanced configuration settings to support code compilation, running virtual servers, and performing automated tests efficiently. The feature enables <a href="../../parallels-desktop-preferences-and-virtual-machine-settings/virtual-machine-settings/hardware-settings/cpu-and-memory-settings">nested virtualization</a> on Intel Macs by default.</p><p><br><strong>Ideal for</strong>: People who require a stable and high-performance environment for their software development workflows.<br></p><p><a data-footnote-ref href="#user-content-fn-1"><strong>Note</strong>: if you’re a developer, you can also benefit from using our free</a> <a href="https://marketplace.visualstudio.com/items?itemName=ParallelsDesktop.parallels-desktop">VS Code extension for Parallels Desktop</a>.</p></td></tr><tr><td><strong>Software testing</strong><br>(only available in Pro and Business Editions)</td><td><p>The profile is configured to support rigorous software testing and quality assurance processes in a virtual machine isolated from your Mac. It offers robust CPU and memory allocations, along with network configurations optimized for running multiple testing environments, virtual machines, and automated testing tools concurrently.<br></p><p><strong>Ideal for</strong>: QA engineers and testers who need a reliable and high-performance environment for extensive software testing.</p></td></tr></tbody></table>

If you want to learn how Parallels Desktop assigns virtual CPU cores automatically depending on the profile, refer to [this page](https://docs.parallels.com/landing/pdfm-ug/v20-en-us/parallels-desktop-for-mac-20-users-guide/advanced-topics/working-with-virtual-machines/changing-the-number-of-virtual-cpus-allocated-to-a-virtual-machine) of the guide.

### How to Change the Performance Profile of a Virtual Machine

You can change the profile after the virtual machine is created:

1. Start Parallels Desktop.
2. In **Control Center**, right-click the virtual machine (it must be shut down) and choose **Configure**.
3. On the **General** tab, click **Change**.
4. Select the profile that best fits your needs.

{% hint style="info" %}
**Note:** If you made any changes to the virtual machine configuration and then select a new profile, your changes may be reset to this profile's default values.
{% endhint %}

[^1]:
