High Performance Computing: Problem Solving With Parallel and Vector Architectures