People sometimes find that the distance reported by Memory-Map for a recorded track is different from the same track recorded on another device. The reason for this is that different devices use different types of filtering.
It is important to understand that the recorded GPS points contain "noise" that causes jitters in the recorded track.
If you simply add up the total distance between each consecutive GPS position, you will get a distance that is much longer than the actual distance traveled. That is why some kind of smoothing is required. The detail of the software to do this is not standardized, so the algorithm used in Memory-Map will be different from another manufacturer.
Even within Memory-Map there are different smoothing techniques in use that give slightly different answers. The Windows PC app is different from the mobile apps. The technique used while the tracklog is being collected is different from the smoothing technique used when the tracklog is loaded from storage. During tracklog recording the distance has to be updated every second. When a track is loaded at a later time, the distance is calculated just once, so it uses a better smoothing algorithm. This means that the distance shown in real time while you are recording a tracklog will be slightly longer than when you look at the track at a later time.
The same considerations apply to average speed and maximum speed of a track.
To improve tracklogs and reduce the effects of smoothing, it is important to ensure you GPS has a clear view of the sky, without being blocked by your body or tree canopy, etc. Also, the faster you are traveling the less effect jitter will have on the measurements.