The P7 works beautifully direct drive. On a good cell it seems to self regulate at a maximum of about 4 amps. Without driver losses it's pretty much as efficient as you can get all energy goes to the led instead of wasting some in the driver. The only downside is it's not regulated, but single cell including driver overhead, you wouldn't get much regulation anyways.
But you may be getting low readings because of several reasons. First one and most common is the leads to your multimeter may be too thin and you're getting a false reading because of the resistance the leads are introducing. This gets worse the higher the current you're measuring. Replace the cables with some nice fat ones. I simply jammed as short a length of 16 gauge wire in mine and a normal 2.5 amp reading all of a sudden became a nice and healthy 3.5 amp reading on my P7 direct drive light.
Another reason could be your cells. I've noticed sometimes the protection circuit seems to limit current going to some of my led flashlights. Also if you have cheap cells it can also lower the maximum current you'll be measuring as they may not be able to drive the P7 led at full power without sagging in voltage a lot.