Principles of High-Performance Processor Design: For High Performance Computing, Deep Neural Networks and Data Science