diff --git a/src/vppinfra/CMakeLists.txt b/src/vppinfra/CMakeLists.txt
index 7103d60..2636849 100644
--- a/src/vppinfra/CMakeLists.txt
+++ b/src/vppinfra/CMakeLists.txt
@@ -136,6 +136,7 @@
   os.h
   pipeline.h
   pool.h
+  pmc.h
   ptclosure.h
   random_buffer.h
   random.h
diff --git a/src/vppinfra/pmc.h b/src/vppinfra/pmc.h
new file mode 100644
index 0000000..258b925
--- /dev/null
+++ b/src/vppinfra/pmc.h
@@ -0,0 +1,46 @@
+/*
+ * Copyright (c) 2018 Cisco and/or its affiliates.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at:
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef included_clib_pmc_h
+#define included_clib_pmc_h
+
+#if defined (__x86_64__)
+
+always_inline u64
+clib_rdpmc (int counter_id)
+{
+  u32 a, d;
+
+  asm volatile ("rdpmc":"=a" (a), "=d" (d):"c" (counter_id));
+  return (u64) a + ((u64) d << (u64) 32);
+}
+
+#else
+always_inline u64
+clib_rdpmc (int counter_id)
+{
+  return 0ULL;
+}
+#endif /* __aarch64__ */
+
+#endif /* included_clib_pmc_h */
+
+/*
+ * fd.io coding-style-patch-verification: ON
+ *
+ * Local Variables:
+ * eval: (c-set-style "gnu")
+ * End:
+ */
