Previous | Next --- Slide 49 of 58
Back to Lecture Thumbnails
zhiyuany

The word 'portability' here also means 'performance portability'. Softwares that are optimized specifically for some hardwares may not work well on other hardwares. For example, one algorithm implemented in CUDA is efficient on GPU but may work well on clusters or multicore machines. Without performance-portable framework, you need to implement different versions of algorithm for different hardwares to get high performance, while even implementing single version optimized for one hardware is difficult. With performance-portable framework, you can implement algorithm once in a easier way and still get high performance everywhere.