GEMS: GPU-Enabled Memory-Aware Model-Parallelism System for Distributed DNN Training