Exploring Performance Portability For Accelerators Via High-Level Parallel Patterns