updating pmu implementation