Predicting program phases and defending against side-channel attacks using hardware performance counters
Can hardware performance counters be trusted?