Universitat Oberta de Catalunya
The emerge of Chip Multi-Processors (CMPs) and many-core chips has introduced huge computational power that using traditional programming models, compilers and operating systems is hard to deal with. Chip Multi-Processors (CMPs) are composed by many cores and different distributed memories. The large numbers of hardware threads these architectures support are not being used at all. In order to use these hardware threads, applications require of higher degrees of parallelism. Therefore, CMP processors require of more adequate programming models.