It's a free app by Google and I use it for walking and running.
https://market.android.com/details?id=com.google.android.maps.mytracks
My Tracks allows you to record and share your GPS tracks, including statistics. Use My Tracks while you run, bike, hike, or do anything else outdoors, and it will use the GPS sensor in your phone to record the path you took. It will also gather useful statistics such as time, speed, distance, and elevation. You can review all of this data live, or you can save it for use later. While you're out, you can mark relevant waypoints, and can ask to hear automatic voice announcements about your progress.
https://market.android.com/details?id=com.google.android.maps.mytracks