Maybe it's getting localized? The split isn't an array but a list. So it might be keeping two copies of the data.
Don't know enough about perlguts yet but I would think it something to that effect. Plus the difference grows larger with a larger dataset. My guess anyway.