Maximizing data flow is one of the most important graph problems and has numerous applications across various computational domains: transportation networks, power routing, image segmentation, social network clustering, and recommendation systems. There are many efficient algorithms that have been developed for this problem, most of them trying to minimize computational complexity. However, not all these algorithms map well to massively parallel architectures like GPUs. We'll present a novel GPU-friendly approach based on the MPM algorithm that achieves from 5 to 20 times speedup over the state-of-the-art multithreaded CPU implementation from Galois library on general graphs with various diameters. We'll also discuss some real-world applications of the maximum flow problem in computer vision for image segmentation and in data analytics to find communities in social networks.