Although multi-core processors have emerged as a dominant low-power architectural solution in high performance processor design, it is still challenging to take a full advantage of the high power efficiency of multi-core processors. One such challenge occurs when an operating system tries to assign a multi-threaded application to a target multi-core processor in an energy efficient fashion. With an increasing number of cores combined with sophisticated power management schemes, it becomes more difficult to decide the most appropriate runtime configuration for a given application so that the overall energy efficiency is maximized. In this paper, we propose a novel performance and power estimation technique, called PET, for multi-core systems. The PET scheme is based on a compact but accurate performance and power transformation model, which aims to predict the performance and power consumption of a large number of runtime configurations using hardware performance counters collected in a small number of representative runtime configurations. Using a transformation model, PET enables to accurately determine the best runtime configuration of multi-threaded applications at runtime with a small overhead over an existing naive solution. Experimental results on an Intel Q6600 quad-core processor show that PET can accurately predict the performance and power consumption of multi-threaded applications running on 1-4 cores under two different frequency levels with an average prediction error of 2.1%-8.3% and 3.2%-6.5% over the measured data, respectively. We also show that PET is effective in estimating the performance and power consumption of two co-running applications with an average prediction error of less than 5%.