-Parallel and distributed computing theory and algorithms (Algorithms): Design and analysis of novel numerical and combinatorial parallel algorithms; protocols for resource management; communication and synchronization on parallel and distributed systems; parallel algorithms handling power, mobility, and resilience.
-Experiments and practice in parallel and distributed computing (Experiments): Design and experimental evaluation of applications of parallel and distributed computing in simulation and analysis; experiments on the use of novel commercial or research architectures, accelerators, neuromorphic architectures, and other non-traditional systems; algorithms for cloud computing; domain-specific parallel and distributed algorithms; performance modeling and analysis of parallel and distributed algorithms.
-Programming models, compilers and runtimes for parallel applications and systems (Programming Models): Parallel programming paradigms, models and languages; compilers, runtime systems, programming environments and tools for the support of parallel programming; parallel software development and productivity.
-System software and middleware for parallel and distributed systems (System Software): System software support for scientific workflows; storage and I/O systems; system software for resource management, job scheduling, and energy-efficiency; frameworks targeting cloud and distributed systems; system software support for accelerators and heterogeneous HPC computing systems; interactions between the OS, runtime, compiler, middleware, and tools; system software support for fault tolerance and resilience; containers and virtual machines; system software supporting data management, scalable data analytics, machine learning, and deep learning; specialized operating systems and runtime systems for high performance computing and exascale systems; system software for future novel computing platforms including quantum, neuromorphic, and bio-inspired computing.
-Architecture: Architectures for instruction-level and thread-level parallelism; memory technologies and hierarchies; exascale system designs; data center architectures; novel big data architectures; special-purpose architectures and accelerators; network and interconnect architectures; parallel I/O and storage systems; power-efficient and green computing systems; resilience and dependable architectures; performance modeling and evaluation.
-Multidisciplinary: Papers that cross the boundaries of the previous tracks are encouraged and can be submitted to the multidisciplinary track. During submission of multidisciplinary papers, authors should indicate their subject areas that can come from any area. Contributions should either target two or more core areas of parallel and distributed computing where the whole is larger than sum of its components, or advance the use of parallel and distributed computing in other areas of science and engineering.