Directive-based programming interfaces such as OpenACC and OpenMP are becoming more prevalent in application development targeting accelerators, inparticular porting of legacy codes. They are designed to be portable across different accelerators, and therefore once necessary directives are added to an existing CPU-only code, it can be executed on different accelerator architectures depending on the availability of supporting compilers. However, it does not mean that such code runs efficiently on different architectures. Towards realizing performance portability in accelerator programming, we propose a set of extended directives that allow the programmer to optimizedata layouts for a given accelerator without modifying original program code.