Performance tuning

Contributors Download PDF of this page

This section provides some of the tuning parameters that help to improve the performance of XCP operations:

  • For better scaling and to distribute the workload across multiple XCP instances, split the subfolders for each XCP instance for the migration and data transfer.

  • XCP can use maximum CPU resources—the more the CPU cores, the better the performance. Therefore, you should have more CPUs in the XCP server. We lab tested 128GB RAM and 48x core CPUs, which provided better performance than 8x CPUs and 8GB RAM.

  • The XCP copy with the -parallel option is based on the number of CPUs. The default number of parallel threads (seven) is sufficient for most XCP data transfer and migration operations. For XCP Windows, by default, the number of parallel processes is equal to the number of CPUs.

  • 10GbE is a good start for data transfer. However, we tested with 25GbE and 100GbE, which provided better data transfer and are recommended for large file-size data transfer.

  • For Azure NetApp Files, the performance varies based on the service level. For more information, see the following table, which shows Azure NetApp Files service levels and performance details.

Service level Standard Premium Ultra


16MBps/terabyte (TB)



Workload types

General purpose file shares, email, and web

BMs, databases, and applications

Latency-sensitive applications

Performance explained

Standard performance: 1,000 IOPS per TB (16K I/O) and 16MBps/TB

Premium performance – 4,000 IOPS per TB (16k I/O) and 64MBps/TB

Extreme performance: 8,000 IOPS per TB (16k I/O) and 128MBps/TB

You must choose the right service level based on the throughput and workload types. Most customers start with the Premium level and change the service level based on the workload.