I've been using GolfShot for the iPhone 4 since day 1. I also had it on my 3GS. On the 3GS, a round would put me down to about 40%. On the 4, about 65% remaining after the round. You learn how to manage when to put it in standby and when to leave it on also.
For the 3GS, I used GolfShot and GolfLogix. They had about the same functionality, but GolfLogix would grab a satellite quicker. On the iPhone 4 (actually on iOS4 - my 3GS was better after I updated), the GolfShot app is just as good, and it is cheaper (29.95 one time, rather than yearly). Also, the one time they didn't have the course I played I requested it and it was mapped in 24 hours.
Great detail, highly recommend. Well worth the money. I play 2-3 times a week and it's great.