Return to search

Building a foundation for the future of software practices within the multi-core domain

Multi-core programming presents developers with a dramatic paradigm shift.
Where the conceptual models of sequential programming largely supported the decoupling
of source from underlying architecture, it is now unwise to develop new
patterns, abstractions and parallel software in complete isolation from issues of modern
hardware utilization. Challenging issues historically associated with complex
systems code are now compounded within the parallel domain. These issues are
manifested at all stages of software development including design, development, testing
and maintenance. Programmers currently lack the essential tools to even partially
automate reasoning techniques, resource utilization and system configuration management.
Current trial and error strategies lack a systematic approach that will scale to
growing multi-core and multi-processor environments. In fact, current algorithm and
data layout conceptual models applied to design, implementation and pedagogy often
conflict with effective parallelization strategies. This disertation calls for a rethinking,
rebuilding and retooling of conceptual models, taking into account opportunities to
introduce parallelism for multi-core architectures from the ground up. In order to
establish new conceptual models, we must first 1) identify inherent complexities in
multi-core development, 2) establish support strategies to make handling them more explicit and 3) evaluate the impact of these strategies in terms of proposed software
development practices and tool support. / Graduate

Identiferoai:union.ndltd.org:uvic.ca/oai:dspace.library.uvic.ca:1828/3539
Date31 August 2011
CreatorsBerg, Celina
ContributorsCoady, Yvonne
Source SetsUniversity of Victoria
LanguageEnglish, English
Detected LanguageEnglish
TypeThesis
RightsAvailable to the World Wide Web

Page generated in 0.0023 seconds