A lot of solutions were tried: JMS, Symfony serializer, Better serializer and lots of other PHP serializers. All of them are great libraries, but none of them showed any improvements. By that time the team accepted to live with this performance hit until a new GoLang developer joined.
He worked on a solution in GoLang: Sheriff. The first results were very promising. To reuse the current JMS annotations Liip created a library for generating Go structs using Sheriff out of PHP models. And at last, to make things work with the PHP application, Goridge was used. Goridge allows you to call Go service methods from PHP.
This GO + PHP approach was great and the application had a huge speed boost. But, PHP had no fair chance. So the team decided to implement the way GO uses serialization into their own open source php library: liip/serializer.