Allocation of server resources to creating a map cache
When you create a cache, you can indicate the number of map service (MapServer) instances that you want to work on the cache. Caching uses service instances intensely and for relatively long periods of time. It is best to completely dedicate the server's resources while creating a cache. For these reasons, a good starting point is to set the number of instances equal to N+1, where N is the number of CPU cores on a machine. In the unlikely case where you notice that CPU utilization on your machine is not approaching 90%, you could consider adding more instances.
You cannot dedicate a higher number of instances to caching than you have allowed in the Maximum Number of Instances property for the service. The default maximum number of instances for a service is 2, so if you'll be dedicating multiple CPU cores to caching, you should raise this value. You can set the maximum number of instances on the Pooling tab of the Service Properties dialog box.