Да, Vtune от Intel (Linux и Windows) может измерять IPC.
Если вы хотите измерить его самостоятельно с точными счетчиками для некоторой части кода, вам нужно использовать некоторые API производительности, такие как PAPI или perfctr (оба для Linux).
Они используют аппаратные счетчики производительности, описанные в руководствах Intel http://www.intel.com/products/processor/manuals/
Том 3D, глава 30 и приложение А.
http://www.intel.com/Assets/PDF/manual/253669.pdf
Vtune использует соотношение «Отставка инструкций» и «Нерабочие часы» для вычисления ИПЦ («Количество циклов на одну инструкцию»). Для Core2 используются следующие счетчики производительности: «CPU_CLK_UNHALTED.CORE», «INST_RETIRED.ANY»
Эти счетчики одинаковы для всех процессоров Core *:
Приложение A1 тома 3B, стр. 384:
Table A-1. Architectural Performance Events
Event | Event Mask Mnemonic | Umask | Description
num.
3CH | UnHalted Core Cycles| 00H | Unhalted core cycles
C0H | Instruction Retired | 00H | Instruction retired