Change search
ReferencesLink to record
Permanent link

Direct link
Non-invasive software design for many-core architectures
2009 (English)Independent thesis Advanced level (professional degree), 20 credits / 30 HE creditsStudent thesis
Abstract [en]

There’s no doubt that the fundamentals of computer programming were broken at the launch of the multi-core processor. It enabled multiple computations to be processed simultaneously and independently, in parallel. Declared as many‐core architecture programmable GPU and CPU enabled hardware provides teraflop performance to the consumer. This horizontal scaling reduces performance for software that is reluctant to optimize by widening the processing base. Instead new models must be developed which adaptively interchanges to the underlying hardware and enables the software to incorporate distributive computing where the workload is divided among the available processors. Models which reinstate the processing hardware capabilities as the definition to the limitations of performance and let software scale accordingly. This thesis presents a design scheme for integrating the CPU and GPU, where their differences lay the foundation for the solution. Further, the capabilities of re‐enabling the hardware as the performance limiter, in multi-core environments, are explored. It's fundamental to the design that it combines features with performance. Effectively allowing the parallelization of the application to drive the design choices, and therefore avoiding unnecessary overheads. The primary goal of the design is to create an inherent component structure, separating the different tasks early. Allowing multiple processing units of varying nature to be combined and process concurrently, while maintaining linear performance to the quantity of cores. Expanded upon in the actual implementation, this style of composition creates a dynamic underlying framework for the program to be built upon. Build from the ground up around the notion of concurrent processing, the design is developed for maximal core utilization, adapting to current workloads of different tasks and issuing load balancing to attain the best performance. A hybrid approach is used for concurrency with a clash of both the fine grained model and the coarse threaded model.

Place, publisher, year, edition, pages
Keyword [en]
Keyword [sv]
URN: urn:nbn:se:ltu:diva-52908ISRN: LTU-EX--09/063--SELocal ID: 9fc9abff-bb4e-4ea1-9950-1c7706465072OAI: diva2:1026280
Subject / course
Student thesis, at least 30 credits
Educational program
Media Engineering, master's level
Validerat; 20101217 (root)Available from: 2016-10-04 Created: 2016-10-04Bibliographically approved

Open Access in DiVA

fulltext(918 kB)0 downloads
File information
File name FULLTEXT01.pdfFile size 918 kBChecksum SHA-512
Type fulltextMimetype application/pdf

Search outside of DiVA

GoogleGoogle Scholar
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

ReferencesLink to record
Permanent link

Direct link