Battlescape saves contain much repetitive data, e.g. smoke is almost always 0, most mapData contains -1, -1, -1.
The patch affects only tile.cpp, and checks the data it is about to save. For each tile, it elides data from the save if it is "predictable". Equally, during load, each tile checks whether a value node exists before trying to load it; if the node is not available it inserts this "predictable" value instead.
My battlescape saves have gone from 601kb to 347kb, and my load times (oldish i7 laptop with SSD) from about 60 seconds to 45 seconds.
The patch is backward-compatible with existing saves, but don't overwrite your old saves if you want to be able to remove the patch.