PetaBricks - Keeping Performance Portable In High Performance Kernels