With the rapid growth of data centers and clouds, the power cost and power consumption of their computing and storage resources become critically important to be managed efficiently. Several research studies have shown that data servers typically operate at a low utilization of 10% to 15%, while their power consumption is close to those at peak loads. With this significant fluctuation in the workloads, an elastic delivery of computing services with an efficient power provisioning mechanism becomes an important design goal. Live workload migrations and virtualization are important techniques to optimize power and performance in large-scale data centers ,  This paper presents an application specific autonomic adaptive power and performance management system that utilizes AppFlow-based reasoning to configure dynamically datacenter resources and workload allocations. This system will continuously monitor the workload to determine the current operating point of both workloads and the virtual machines (VMs) running these workloads and then predict the next operating points for these VMs. This enables the system to allocate the appropriate amount of hardware resources that can run efficiently the VM workloads with minimum power consumption. We have experimented with and evaluated our approach to manage the VMs running RUBiS bidding application. Our experimental results showed that our approach can reduce the VMs' power consumption up to 84% compared to static resource allocation and up to 30% compared to other methods with minimum performance degradation.