Challenges and Opportunities in Many-Core Computing

J.L. Manferdelli, N.K. Govindaraju, C. Crall
2008 Proceedings of the IEEE  
With increasing use of computers that employ many independent processing units, commercial and technical-scientific software, as well as general-purpose operating systems, will have to undergo fundamental changes. ABSTRACT | In this paper, we present some of the challenges and opportunities in software development based on the current hardware trends and the impact of massive parallelism on both the software and hardware industry. We indicate some of the approaches that can enable software
more » ... opment to effectively exploit the many-core architectures. Some of these include encapsulating domain-specific knowledge in reusable components, such as libraries, integrating concurrency with languages, and supporting explicit declarations to help compilers and operating system schedulers. Tighter interaction between software and underlying hardware is required to build scalable and portable applications with predictable performance and higher power-efficiency. Overall, many-core computing provides us opportunities to enable new application scenarios that support enhanced functionality and a richer experience for the user on commodity hardware.
doi:10.1109/jproc.2008.917730 fatcat:nh32zeed2fbvph2xcoan7ejjsm