CRAT: Enabling Coordinated Register Allocation and Thread-Level Parallelism Optimization for GPUs | IEEE Journals & Magazine | IEEE Xplore