An Analytical Model for a GPU Architecture with Memory-level and Thread-level Parallelism Awareness