0 votes
1 view
in AWS by (17.9k points)

I'm writing a cluster-wide profiling tool for EC2 that is designed to collect data by running OProfile on each instance. I'd eventually like to aggregate the XML output generated by opreport, and analyze it later.

Right now, I'm stuck on getting OProfile to see hardware events -- all I can do is build profiles in Timer Interrupt mode. I have a feeling this is due to the fact that EC2 instances run in a virtualized environment, where OProfile cannot see hardware events.

I looked into this hunch a bit and came up with Xenoprof as a possible solution, but there's very limited documentation on how to get it up and running with EC2.

If anyone's had any success running Xenoprof on EC2 (and I know there must be some successes because there are several papers about it), could you clue me in as to what's going wrong?

When I run yum install oprofile

and then man opcontrol

on the instance, I see the options for Xen are there, which I think means that Xenoprof must be installed. I just don't know what to do to get the hardware events as my samples.

1 Answer

0 votes
by (42k points)

This is the oprofile to run on EC2:

opcontrol --deinit 

modprobe oprofile timer=1

opcontrol --reset

opcontrol --no-vmlinux

opcontrol --start

...