Introduction to High Performance Computing (Part 2)