Here is a great article on AD and Domain Controller capacity planning. It is applicable to Windows Server 2012 also.
For the reader, it is important to clarify that capacity planning is not the same as troubleshooting performance incidents. While they are closely related, the activities are quite different. The goal of capacity planning is to properly implement and operate an environment and minimize the time spent troubleshooting performance issues. In capacity planning, an organization might have a baseline target of 40% processor utilization during peak periods in order to meet client performance requirements and accommodate the time necessary to upgrade the hardware in the datacenter. Whereas, to be notified of abnormal performance incidents, a monitoring alert threshold might be set at 90% over a 5 minute interval. The difference is that when a capacity management threshold is continually exceeded (a one-time event is not a concern), adding in additional capacity (that is, adding in more or faster processors) would be the solution or scaling the service across multiple servers would be a solution. Performance alert threshold are designed to indicate that client experience is currently suffering and immediate steps need to be taken to address the issue. As an analogy: capacity management is about the efforts necessary to prevent a car accident (defensive driving, making sure the brakes are working properly, and so on) whereas performance troubleshooting is what the police, fire department, and emergency medical professionals do after an accident. This is about “defensive driving,” Active Directory-style.
Over the last several years, capacity planning guidance for scale-up systems in general has changed dramatically. Changes in system architectures, such as the change from 32-bit to 64-bit server platforms, virtualization versus non-virtualized scenarios, dramatically increased attention to power consumption, the industry moving from spindle based to SSD storage, and cloud scenarios have challenged fundamental assumptions about designing and scaling a service. Additionally, the approach is shifting from a server based capacity planning exercise, to a service based capacity planning exercise. Active Directory Domain Services (AD DS), a very mature distributed service against which many Microsoft and third-party products use as a backend, becomes one the most critical products to plan correctly to ensure there is necessary capacity for all the rest of the applications to run.
In capacity planning, the first decision to make is the quality of service needed. For example, generally a core datacenter will support a higher level of concurrency and require a more consistent experience across all users and consuming applications, which require greater attention to redundancy and minimizing system and infrastructure bottlenecks. In contrast, a satellite location with a handful of users will neither need the level of concurrency and may have lower requirements for fault tolerance. Thus, the satellite office might not need as much attention to optimizing the underlying hardware and infrastructure, which may lead to cost savings. All recommendations and guidance herein are for optimal performance, and can be selectively relaxed for scenarios with less demanding requirements.
Read more at source - http://technet.microsoft.com/en-us/library/capacity-planning-for-domain-controllers.aspx