Challenges and Opportunities at All Levels: Interactions Among Operating Systems, Compilers, and Multicore Processors
Source: University of Virginia
The tremendous advances in process technology have opened the doors to many opportunities, but have also introduced a wealth of challenges. On one hand, microprocessor designers can pack several cores, whether homogeneous or heterogeneous, on a single chip, enabling more parallelism. On the other hand, programmers must focus on producing parallel programs since automatic parallelization is still in its infancy, especially for non-scientific code. System designers must also focus on managing resources to optimize performance and minimize the impact on power and reliability. The increase in on-chip transistors results in increased power dissipation, both static and dynamic, and gives rise to other challenges related to parameter variations.