I'm not really sure what you're asking.  The upper bound of a CPU's IPC is going to be its allocation/retirement width and the lower bound of IPC is something closer to 0. And as you mentioned, the actual IPC you will get depends on the workload/program/benchmark.  So it's impossible to have a benchmark that will give a single IPC number that's equal to the IPC for every workload out there.
		
		
	 
Headfoot's post I responded to said that IPC is just a vague term for amateurs at forums like this, but something that people how know much "about design IC" knows more about.
So I wanted to know what he meant.
To me IPC is a general vague term, meaning intructions per clock without further definition.
I remember my old Amiga 500 where integer multiply took more than 50 cycles and integer division even more 

So really bad IPC in some of my Amiga code....