A GPGPU compiler for memory optimization and parallelism management | Synapse