191 research outputs found

    Framework for simulation of fault tolerant heterogeneous multiprocessor system-on-chip

    Full text link
    Due to the ever growing requirement in high performance data computation, current Uniprocessor systems fall short of hand to meet critical real-time performance demands in (i) high throughput (ii) faster processing time (iii) low power consumption (iv) design cost and time-to-market factors and more importantly (v) fault tolerant processing. Shifting the design trend to MPSOCs is a work-around to meet these challenges. However, developing efficient fault tolerant task scheduling and mapping techniques requires optimized algorithms that consider the various scenarios in Multiprocessor environments. Several works have been done in the past few years which proposed simulation based frameworks for scheduling and mapping strategies that considered homogenous systems and error avoidance techniques. However, most of these works inadequately describe today\u27s MPSOC trend because they were focused on the network domain and didn\u27t consider heterogeneous systems with fault tolerant capabilities; In order to address these issues, this work proposes (i) a performance driven scheduling algorithm (PD SA) based on simulated annealing technique (ii) an optimized Homogenous-Workload-Distribution (HWD) Multiprocessor task mapping algorithm which considers the dynamic workload on processors and (iii) a dynamic Fault Tolerant (FT) scheduling/mapping algorithm to employ robust application processing system. The implementation was accompanied by a heterogeneous Multiprocessor system simulation framework developed in systemC/C++. The proposed framework reads user data, set the architecture, execute input task graph and finally generate performance variables. This framework alleviates previous work issues with respect to (i) architectural flexibility in number-of-processors, processor types and topology (ii) optimized scheduling and mapping strategies and (iii) fault-tolerant processing capability focusing more on the computational domain; A set of random as well as application specific STG benchmark suites were run on the simulator to evaluate and verify the performance of the proposed algorithms. The simulations were carried out for (i) scheduling policy evaluation (ii) fault tolerant evaluation (iii) topology evaluation (iv) Number of processor evaluation (v) Mapping policy evaluation and (vi) Processor Type evaluation. The results showed that PD scheduling algorithm showed marginally better performance than EDF with respect to utilization, Execution-Time and Power factors. The dynamic Fault Tolerant implementation showed to be a viable and efficient strategy to meet real-time constraints without posing significant system performance degradation. Torus topology gave better performance than Tile with respect to task completion time and power factors. Executing highly heterogeneous Tasks showed higher power consumption and execution time. Finally, increasing the number of processors showed a decrease in average Utilization but improved task completion time and power consumption; Based on the simulation results, the system designer can compare tradeoffs between a various design choices with respect to the performance requirement specifications. In general, designing an optimized Multiprocessor scheduling and mapping strategy with added fault tolerant capability will enable to develop efficient Multiprocessor systems which meet future performance goal requirements. This is the substance of this work

    System-Level Power Estimation Methodology for MPSoC based Platforms

    Get PDF
    Avec l'essor des nouvelles technologies d'intรฉgration sur silicium submicroniques, la consommation de puissance dans les systรจmes sur puce multiprocesseur (MPSoC) est devenue un facteur primordial au niveau du flot de conception. La prise en considรฉration de ce facteur clรฉ dรจs les premiรจres phases de conception, joue un rรดle primordial puisqu'elle permet d'augmenter la fiabilitรฉ des composants et de rรฉduire le temps d'arrivรฉe sur le marchรฉ du produit final.Shifting the design entry point up to the system-level is the most important countermeasure adopted to manage the increasing complexity of Multiprocessor System on Chip (MPSoC). The reason is that decisions taken at this level, early in the design cycle, have the greatest impact on the final design in terms of power and energy efficiency. However, taking decisions at this level is very difficult, since the design space is extremely wide and it has so far been mostly a manual activity. Efficient system-level power estimation tools are therefore necessary to enable proper Design Space Exploration (DSE) based on power/energy and timing.VALENCIENNES-Bib. รฉlectronique (596069901) / SudocSudocFranceF

    ๋งค๋‹ˆ์ฝ”์–ด ๊ฐ€์†๊ธฐ์˜ ๊ฒฐํ•จ์„ ๊ณ ๋ คํ•œ ํƒœ์Šคํฌ ๋งคํ•‘ ๋ฐ ์ž์› ๊ด€๋ฆฌ ๊ธฐ๋ฒ•

    Get PDF
    ํ•™์œ„๋…ผ๋ฌธ (๋ฐ•์‚ฌ)-- ์„œ์šธ๋Œ€ํ•™๊ต ๋Œ€ํ•™์› : ์ „๊ธฐยท์ปดํ“จํ„ฐ๊ณตํ•™๋ถ€, 2014. 8. ํ•˜์ˆœํšŒ.๊ธฐ์ˆ ์ด ๋ฐœ์ „ํ•จ์— ๋”ฐ๋ผ ํ•˜๋‚˜์˜ ์นฉ ์•ˆ์— ์ง‘์ ๋˜๋Š” ํ”„๋กœ์„ธ์„œ์˜ ๊ฐฏ์ˆ˜๊ฐ€ ์ ์  ์ฆ๊ฐ€ํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค. ๋˜ํ•œ, ์‘์šฉ๋“ค์˜ ๋ณด๋‹ค ๋†’์€ ์—ฐ์‚ฐ ๋Šฅ๋ ฅ์— ๋Œ€ํ•œ ์š”๊ตฌ๋กœ ์ธํ•ด ๋งค๋‹ˆ์ฝ”์–ด ๊ฐ€์†๊ธฐ๋Š” ์‹œ์Šคํ…œ-์˜จ-์นฉ์—์„œ ์ค‘์š”ํ•œ ์—ฐ์‚ฐ ์žฅ์น˜๊ฐ€ ๋˜์—ˆ๋‹ค. ์‹œ์Šคํ…œ์˜ ์ƒํƒœ๊ฐ€ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์š”์ธ์— ์˜ํ•ด ๋™์ ์œผ๋กœ ๋ณ€ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ์‹œ์Šคํ…œ ์ˆ˜ํ–‰์ค‘์— ๊ทธ๋Ÿฌํ•œ ๊ฐ€์†๊ธฐ๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ๋‹ค๋ฃจ๋Š” ๊ฒƒ์€ ๋งค์šฐ ์–ด๋ ค์šด ๋ฌธ์ œ์ด๋‹ค. ์‹œ์Šคํ…œ ์ˆ˜์ค€์—์„œ๋Š” ์‘์šฉ๋“ค์ด ์‚ฌ์šฉ์ž์˜ ์š”๊ตฌ์— ๋”ฐ๋ผ ์‹œ์ž‘ ๋˜๋Š” ์ข…๋ฃŒ๊ฐ€ ๋˜๊ณ , ์‘์šฉ ๋ ˆ๋ฒจ์—์„œ๋Š” ์‘์šฉ ์ž์ฒด์˜ ๋™์ž‘์ด ์ž…๋ ฅ ๋ฐ์ดํƒ€๋‚˜ ์ˆ˜ํ–‰๋ชจ๋“œ์— ๋”ฐ๋ผ ๋™์ ์œผ๋กœ ๋ณ€ํ•˜๊ฒŒ ๋œ๋‹ค. ์•„ํ‚คํ…์ฒ˜ ์ˆ˜์ค€์—์„œ๋Š” ํ”„๋กœ์„ธ์„œ์˜ ์˜๊ตฌ ๊ณ ์žฅ์œผ๋กœ ์ธํ•ด ํ•˜๋“œ์›จ์–ด ์ปดํฌ๋„ŒํŠธ์˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ƒํ™ฉ์ด ๋ณ€ํ•˜๊ฒŒ ๋œ๋‹ค. ๋ณธ ํ•™์œ„๋…ผ๋ฌธ์—์„œ๋Š” ๊ฐ€์†๊ธฐ๋ฅผ ๋‹ค๋ฃจ๋Š”๋ฐ ์žˆ์–ด์„œ์˜ ์œ„์™€ ๊ฐ™์€ ์–ด๋ ค์›€๋“ค์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์„ธ๊ฐ€์ง€ ๊ธฐ๋ฒ•์„ ์ œ์‹œํ•˜์˜€๋‹ค. ์ฒซ๋ฒˆ์งธ ๊ธฐ๋ฒ•์€ ํ”„๋กœ์„ธ์„œ์˜ ์˜๊ตฌ ๊ณ ์žฅ์ด ๋ฐœ์ƒํ•˜์˜€์„ ๋•Œ, ์ „์ฒด ์‘์šฉ๋“ค์„ ์‹œ๊ฐ„ ์ œ์•ฝ ํ•˜์— ์ฒ˜๋ฆฌ๋Ÿ‰์˜ ์ €ํ•˜๋ฅผ ์ตœ์†Œํ™”ํ•˜๋ฉฐ ์žฌ์Šค์ผ€์ฅด์„ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์ตœ์ ์˜ ์žฌ์Šค์ผ€์ฅด ๊ฒฐ๊ณผ๋“ค์€ ์ง„ํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ด์šฉํ•˜์—ฌ ์ปดํŒŒ์ผ ์‹œ์—, ๊ฐ๊ฐ์˜ ํ”„๋กœ์„ธ์„œ ๊ณ ์žฅ ์ƒํ™ฉ์— ๋”ฐ๋ผ ์ค€๋น„๊ฐ€ ๋œ๋‹ค. ์ˆ˜ํ–‰ ์‹œ๊ฐ„์— ํ”„๋กœ์„ธ์„œ ๊ณ ์žฅ์ด ๊ฐ์ง€๋˜๋ฉด, ์ •์ƒ์ ์œผ๋กœ ๋™์ž‘ํ•˜๋Š” ํ”„๋กœ์„ธ์„œ๋“ค์ด ์ €์žฅ๋œ ์Šค์ผ€์ฅด์„ ๊ฐ€์ง€๊ณ  ํƒœ์Šคํฌ ์ด์ฃผ๋ฅผ ์ˆ˜ํ–‰ํ•œ ํ›„ ํƒœ์Šคํฌ๋“ค์˜ ๋‚˜๋จธ์ง€ ์ˆ˜ํ–‰์„ ์ง€์†ํ•œ๋‹ค. ์ด ๊ธฐ๋ฒ•์—์„œ๋Š” ๋˜ํ•œ ๋” ์ข‹์€ ์„ฑ๋Šฅ์„ ์–ป๊ธฐ ์œ„ํ•ด, ์„ ์ , ๋น„์„ ์  ๋ฐ ์œตํ•ฉ ์ด์ฃผ ์ •์ฑ…์ด ์ œ์•ˆ๋˜์—ˆ๋‹ค. ์ œ์•ˆ๋œ ๊ธฐ๋ฒ•์˜ ๊ฐ€๋Šฅ์„ฑ์€ ์‹ค์ œ ๋””์ง€ํ„ธ ์‹ ํ˜ธ์ฒ˜๋ฆฌ ์‘์šฉ๋“ค๊ณผ ์ž„์˜๋กœ ์ƒ์„ฑ๋œ ์‘์šฉ๋“ค์— ๋Œ€ํ•ด ์‹œ๊ฐ„์ œ์•ฝ๊ณผ ๋‹ค์–‘ํ•œ ํ”„๋กœ์„ธ์„œ ๊ณ ์žฅ ์ƒํ™ฉ์— ๋Œ€ํ•ด ๊ฒ€์ฆ๋˜์—ˆ๋‹ค. ๋‘ ๋ฒˆ์งธ๋กœ ์ œ์•ˆ๋œ ๊ธฐ๋ฒ•์€ ๋ณตํ•ฉ ์ž์› ๊ด€๋ฆฌ ๊ธฐ๋ฒ•์œผ๋กœ, ์ฒซ๋ฒˆ์งธ ๊ธฐ๋ฒ•์—์„œ ๋‹ค๋ฃฌ ํ”„๋กœ์„ธ์„œ ์˜๊ตฌ๊ณ ์žฅ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, ๋™๊ธฐํ™” ๋ฐ์ดํƒ€-ํ๋ฆ„ ๊ทธ๋ž˜ํ”„๋กœ ๊ธฐ์ˆ ๋œ ์—ฌ๋Ÿฌ ์‘์šฉ๋“ค๊ณผ ์‘์šฉ๋“ค์˜ ๋™์  ์–‘์ƒ์„ ๋‹ค๋ฃจ๋Š” ๊ฒƒ๊นŒ์ง€๋กœ ํ™•์žฅ์ด ๋œ ๊ฒƒ์ด๋‹ค. ์ œ์•ˆ๋œ ๊ธฐ๋ฒ•์—์„œ๋Š”, ์šฐ์„  ์„ค๊ณ„ ์ˆ˜์ค€์—์„œ ํ• ๋‹น๋˜๋Š” ํ”„๋กœ์„ธ์„œ์˜ ๊ฐฏ์ˆ˜๋ฅผ ๋ณ€ํ™”์‹œ์ผœ๊ฐ€๋ฉด์„œ ๋™๊ธฐํ™”๋œ ๋ฐ์ดํƒ€-ํ๋ฆ„ ๊ทธ๋ž˜ํ”„๋“ค์˜ ์ฒ˜๋ฆฌ๋Ÿ‰์ด ์ตœ๋Œ€๋กœ ์–ป์–ด์ง€๋Š” ๋งคํ•‘ ๊ฒฐ๊ณผ๋“ค์„ ์–ป๋Š”๋‹ค. ๊ทธ๋ฆฌ๊ณ ๋‚˜์„œ ์ˆ˜ํ–‰ ์‹œ๊ฐ„์—๋Š” ๋ฏธ๋ฆฌ ๊ณ„์‚ฐ๋œ ๋งคํ•‘ ์ •๋ณด๋“ค์„ ๊ฐ€์ง€๊ณ  ์ˆ˜ํ–‰์ค‘์ธ ์‘์šฉ๋“ค์˜ ๋งคํ•‘์„, ๋™์ ์ธ ์‹œ์Šคํ…œ ๋ณ€ํ™”๊ฐ€ ๋ฐœ์ƒํ•  ๋•Œ๋งˆ๋‹ค ์ ์šฉํ•˜๊ฒŒ ๋œ๋‹ค. ์ œ์•ˆ๋œ ์ž์› ๊ด€๋ฆฌ ๊ธฐ๋ฒ•์€ Noxim์ด๋ผ๋Š” ๋„คํŠธ์›Œํฌ-์˜จ-์นฉ ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ ์œ„์—์„œ ๊ตฌํ˜„์ด ๋˜์—ˆ์œผ๋ฉฐ, ์‹คํ—˜ ๊ฒฐ๊ณผ๋“ค์€ ์ œ์•ˆ๋œ ๊ธฐ๋ฒ•์ด ์ตœ์‹ ์˜ ๋‹ค๋ฅธ ๊ธฐ๋ฒ•๋“ค๊ณผ ๋น„๊ตํ•˜์—ฌ ๋” ์ข‹์€ ์„ฑ๋Šฅ์„ ๋ณด์˜€๋‹ค. ๋งˆ์ง€๋ง‰์œผ๋กœ๋Š”, ์‹œ์Šคํ…œ์˜ ์„ฑ๋Šฅ์„ ์‹œ์Šคํ…œ-์˜จ-์นฉ ์ œ์ž‘ ์ด์ „์— ๋ณด๋‹ค ์ •ํ™•ํ•˜๊ฒŒ ํ‰๊ฐ€ํ•˜๊ธฐ ์œ„ํ•ด์„œ, ๋‘ ๋ฒˆ์งธ ๊ธฐ๋ฒ•์„ ๊ตฌํ˜„ํ•œ ์†Œํ”„ํŠธ์›จ์–ด ํ”Œ๋žซํผ์ด ๋งค๋‹ˆ์ฝ”์–ด ์•„ํ‚คํ…์ฒ˜๋ฅผ ๋Œ€์ƒ์œผ๋กœ ์ œ์•ˆ๋˜์—ˆ๋‹ค. ๊ธฐ์กด์˜ ๋งค๋‹ˆ์ฝ”์–ด ์•„ํ‚คํ…์ฒ˜๋ฅผ ๋Œ€์ƒ์œผ๋กœ ํ•œ ์—ฐ๊ตฌ๋“ค์€ ์ฃผ๋กœ ์ƒ์œ„ ์ˆ˜์ค€์˜ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜์—ฌ ์„ฑ๋Šฅ์„ ์ธก์ •ํ•˜์˜€๊ธฐ ๋•Œ๋ฌธ์—, ์‹ค์ œ ์„ฑ๋Šฅ๊ณผ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ์„ฑ๋Šฅ์ด ์–ผ๋งˆ๋‚˜ ์ฐจ์ด๊ฐ€ ๋‚ ์ง€๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ์•Œ ์ˆ˜๊ฐ€ ์—†์—ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ•œ๊ณ„๋ฅผ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ์†Œํ”„ํŠธ์›จ์–ด ํ”Œ๋žซํผ๊ณผ, ๊ฐ€์ƒ ํ”„๋กœํ† ํƒ€์ดํ•‘ ์‹œ์Šคํ…œ ๋ฐ ์ œ์˜จ ์—๋ฎฌ๋ ˆ์ด์…˜ ์‹œ์Šคํ…œ์—์„œ์˜ ํ”Œ๋žซํผ ๊ตฌํ˜„ ๋ฐฉ๋ฒ•์ด ์ œ์•ˆ์ด ๋˜์—ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์‹ค์ œ ์‹œ์Šคํ…œ ๊ตฌํ˜„์„ ํ†ตํ•˜์—ฌ ์ œ์•ˆ๋œ ๋ณตํ•ฉ ์ž์› ๊ด€๋ฆฌ ๊ธฐ๋ฒ•์—์„œ์˜ ๋‹ค์–‘ํ•œ ๋™์  ๋น„์šฉ๋“ค์ด ์ •ํ™•ํ•˜๊ฒŒ ์ถ”์‚ฐ์ด ๋  ์ˆ˜ ์žˆ์—ˆ๋‹ค. ์‹คํ—˜์—์„œ๋Š” ์ œ์•ˆ๋œ ์†Œํ”„ํŠธ์›จ์–ด ๊ธฐ๋ฒ•์ด ํƒœ์Šคํฌ๋“ค์˜ ๋™์  ๋งคํ•‘๊ณผ ์ฒดํฌ-ํฌ์ธํŒ…์„ ํ†ตํ•œ ํ”„๋กœ์„ธ์„œ ์˜๊ตฌ ๊ณ ์žฅ์„ ํšจ๊ณผ์ ์œผ๋กœ ๊ฐ๋‚ดํ•  ์ˆ˜ ์žˆ์Œ์„ ๋ณด์˜€๋‹ค.Owing to the incessant technology improvement, the number of processors integrated into a single chip increases consistently, integrating more and more applications. Also, demand for higher computing capability for applications makes a many-core accelerator become an important computing resource in a system-on-chip. Efficient handling of the accelerator at run-time, however, is very challenging because the system status is subject to change dynamically by various factors. At the system level, the set of applications running concurrently may change according to user request. At the application level, the application behavior may change dynamically depending on input data or operation mode. At the architecture level, hardware resource availability may vary since hardware components may experience transient or permanent failures. In this thesis, to resolve the difficulties in handling many-core accelerator, three techniques are proposed. The first technique is the re-scheduling of the entire application to minimize throughput degradation under a latency constraint when a permanent processor failure occurs. Sub-optimal re-scheduling results using a genetic algorithm for each scenario of processor failures are obtained at compile-time. If a failure is detected at run-time, the live processors obtain the saved schedule, perform task transfer, and execute the remaining tasks of the current iteration. In this technique, preemptive and non-preemptive migration policies and a hybrid policy are proposed to obtain better performance. The viability of the proposed technique with real-life DSP applications as well as randomly generated graphs under timing constraints and random fault scenarios are shown through experiments. The second technique is a hybrid resource management scheme, expanded version of the first technique that also handles multi-applications specified as SDF graph and their relevant dynamisms such as application/task arrivals/ends as well as processor permanent failures. In the proposed technique, at design-time, throughput-maximized mappings of each SDF graph by varying the number of allocated processors are determined. Then, at run-time, the pre-computed mapping information is exploited to adjust the mapping of active applications to the processors without user intervention on the system status change. The proposed resource management is evaluated through intensive experiments with an in-house simulator built on top of Noxim, a Network-on-Chip simulator. Experimental results show the enhanced adaptability to dynamic system status change compared to other state-of-the-art approaches. Finally, the software platform for a homogeneous many-core architecture that implements the second technique is proposed to evaluate the system performance more accurately before SoC fabrication. Existing approaches usually use a high-level simulation model to estimate the performance without knowing how much actual performance will be deviated from the estimation. To overcome the limitation, the software platform is proposed and implementation details on a virtual prototyping system and on an emulation system realized with an Intel Xeon-Phi coprocessor are presented. Actual implementation enables us to investigate the overheads involved in the hybrid resource management technique in detail, which was not possible in high-level simulation. Experimental results confirm that the proposed software platform adapts to the dynamic workload variation effectively by dynamic mapping of tasks and tolerate unexpected core failures by check-pointing.Abstract i Contents iv List of Figures viii List of Tables xii Chapter 1 Introduction 1 1.1 Motivation . . . . . . . . . . . . 1 1.2 Contribution . . . . . . . . . . . . 5 1.3 Thesis Organization . . . . . . . . . . . 7 Chapter 2 Preliminaries 8 2.1 Application Model . . . . . . . . . . 8 2.2 Architecture Model . . . . . . . . . . 13 2.3 Fault Model . . . . . . . . . . . . 15 2.4 Thesis Overview . . . . . . . . . . . 15 Chapter 3 Fault-aware Task Mapping 17 3.1 Introduction . . . . . . . . . . . . 17 3.2 Related Work . . . . . . . . . . . . 20 3.2.1 Static Approach . . . . . . . . . . 21 3.2.2 Dynamic Approach . . . . . . . . . . 22 3.3 Proposed Task Remapping/Rescheduling Technique . . 23 3.3.1 Remapping Technique . . . . . . . . 23 3.3.2 Rescheduling Technique . . . . . . . . 31 3.4 Experiments . . . . . . . . . . . . . 38 3.4.1 Remapping Results . . . . . . . . 38 3.4.2 Rescheduling Results . . . . . . . . 46 Chapter 4 Fault-aware Resource Management 53 4.1 Introduction . . . . . . . . . . . . 53 4.2 Related Work . . . . . . . . . . . . 54 4.2.1 Static Approach . . . . . . . . . . 55 4.2.2 Dynamic Approach . . . . . . . . . 55 4.2.3 Hybrid Approach . . . . . . . . . . 57 4.2.4 Summary . . . . . . . . . . . . 57 4.3 Background . . . . . . . . . . . . . 58 4.3.1 Energy Model . . . . . . . . . . . 59 4.3.2 Notation . . . . . . . . . . . . 60 4.4 Proposed Resource Management Technique . . . . 61 4.4.1 Motivational Example . . . . . . . . . 61 4.4.2 Overall Procedure . . . . . . . . . . 65 4.4.3 Design-time Analysis . . . . . . . . . 66 4.4.4 Run-time Mapping . . . . . . . . . . 67 4.5 Experiments . . . . . . . . . . . . . 74 4.5.1 Setup . . . . . . . . . . . . . . 74 4.5.2 Analysis of Run-time Overheads . . . . . . 75 4.5.3 Comparison with Other Approaches . . . . 79 Chapter 5 Software Platform for Resource Management 86 5.1 Introduction . . . . . . . . . . . . 86 5.2 Related Work . . . . . . . . . . . . 87 5.3 Overall Structure . . . . . . . . . . . . 88 5.4 Components of Software Platform . . . . . . 89 5.4.1 Application API Layer . . . . . . . . . 89 5.4.2 Communication Interface Module . . . . . 92 5.4.3 Host Interface Layer . . . . . . . . . 93 5.4.4 Memory Management Module . . . . . . 94 5.4.5 Design-time Analysis . . . . . . . . . 94 5.4.6 Slave Manager . . . . . . . . . . . 98 5.5 Software Platform Implementation . . . . . . 99 5.5.1 Scheduling Information . . . . . . . . 100 5.5.2 Function Migration and Execution . . . . . 101 5.5.3 Function Migration and Execution . . . . . 102 5.6 Virtual Prototyping System . . . . . . . . 105 5.7 Xeon Emulation System . . . . . . . . . 106 5.8 Experiments . . . . . . . . . . . . . 107 5.8.1 Setup . . . . . . . . . . . . . . 107 5.8.2 Experiments on the Virtual Prototyping System . . 108 5.8.3 Experiments on the Xeon Emulation System . . . 111 Chapter 6 Conclusion 116 Bibliography 119 Abstract in Korean 130Docto

    RITSim: distributed systemC simulation

    Get PDF
    Parallel or distributed simulation is becoming more than a novel way to speedup design evaluation; it is becoming necessary for simulating modern processors in a reasonable timeframe. As architectural features become faster, smaller, and more complex, designers are interested in obtaining detailed and accurate performance and power estimations. Uniprocessor simulators may not be able to meet such demands. The RITSim project uses SystemC to model a processor microarchitecture and memory subsystem in great detail. SystemC is a C++ library built on a discrete-event simulation kernel. Many projects have successfully implemented parallel discrete-event simulation (PDES) frameworks to distribute simulation among several hosts. The field promises significant simulation speedup, possibly leading to faster turnaround time in design space exploration and commercial production. However, parallel implementation of such simulators is not an easy task. It requires modification of the simulation kernel for effective partitioning and synchronization. This thesis explores PDES techniques and presents a distributed version of the SystemC simulation environment. With minimal user interaction, SystemC models can executed on a cluster of workstations using a message-passing library such as the Message Passing Interface (MPI). The implementation is designed for transparency; distribution and synchronization happen with little intervention by the model author. Modification of SystemC is fashioned to promote maintainability with future releases. Furthermore, only freely available libraries are used for maximum flexibility and portability

    From Microbial Communities to Distributed Computing Systems

    Get PDF
    A distributed biological system can be defined as a system whose components are located in different subpopulations, which communicate and coordinate their actions through interpopulation messages and interactions. We see that distributed systems are pervasive in nature, performing computation across all scales, from microbial communities to a flock of birds. We often observe that information processing within communities exhibits a complexity far greater than any single organism. Synthetic biology is an area of research which aims to design and build synthetic biological machines from biological parts to perform a defined function, in a manner similar to the engineering disciplines. However, the field has reached a bottleneck in the complexity of the genetic networks that we can implement using monocultures, facing constraints from metabolic burden and genetic interference. This makes building distributed biological systems an attractive prospect for synthetic biology that would alleviate these constraints and allow us to expand the applications of our systems into areas including complex biosensing and diagnostic tools, bioprocess control and the monitoring of industrial processes. In this review we will discuss the fundamental limitations we face when engineering functionality with a monoculture, and the key areas where distributed systems can provide an advantage. We cite evidence from natural systems that support arguments in favor of distributed systems to overcome the limitations of monocultures. Following this we conduct a comprehensive overview of the synthetic communities that have been built to date, and the components that have been used. The potential computational capabilities of communities are discussed, along with some of the applications that these will be useful for. We discuss some of the challenges with building co-cultures, including the problem of competitive exclusion and maintenance of desired community composition. Finally, we assess computational frameworks currently available to aide in the design of microbial communities and identify areas where we lack the necessary tool

    Innovation in manufacturing through digital technologies and applications: Thoughts and Reflections on Industry 4.0

    Get PDF
    The rapid pace of developments in digital technologies offers many opportunities to increase the efficiency, flexibility and sophistication of manufacturing processes; including the potential for easier customisation, lower volumes and rapid changeover of products within the same manufacturing cell or line. A number of initiatives on this theme have been proposed around the world to support national industries under names such as Industry 4.0 (Industrie 4.0 in Germany, Made-in-China in China and Made Smarter in the UK). This book presents an overview of the state of art and upcoming developments in digital technologies pertaining to manufacturing. The starting point is an introduction on Industry 4.0 and its potential for enhancing the manufacturing process. Later on moving to the design of smart (that is digitally driven) business processes which are going to rely on sensing of all relevant parameters, gathering, storing and processing the data from these sensors, using computing power and intelligence at the most appropriate points in the digital workflow including application of edge computing and parallel processing. A key component of this workflow is the application of Artificial Intelligence and particularly techniques in Machine Learning to derive actionable information from this data; be it real-time automated responses such as actuating transducers or informing human operators to follow specified standard operating procedures or providing management data for operational and strategic planning. Further consideration also needs to be given to the properties and behaviours of particular machines that are controlled and materials that are transformed during the manufacturing process and this is sometimes referred to as Operational Technology (OT) as opposed to IT. The digital capture of these properties and behaviours can then be used to define so-called Cyber Physical Systems. Given the power of these digital technologies it is of paramount importance that they operate safely and are not vulnerable to malicious interference. Industry 4.0 brings unprecedented cybersecurity challenges to manufacturing and the overall industrial sector and the case is made here that new codes of practice are needed for the combined Information Technology and Operational Technology worlds, but with a framework that should be native to Industry 4.0. Current computing technologies are also able to go in other directions than supporting the digital โ€˜sense to actionโ€™ process described above. One of these is to use digital technologies to enhance the ability of the human operators who are still essential within the manufacturing process. One such technology, that has recently become accessible for widespread adoption, is Augmented Reality, providing operators with real-time additional information in situ with the machines that they interact with in their workspace in a hands-free mode. Finally, two linked chapters discuss the specific application of digital technologies to High Pressure Die Casting (HDPC) of Magnesium components. Optimizing the HPDC process is a key task for increasing productivity and reducing defective parts and the first chapter provides an overview of the HPDC process with attention to the most common defects and their sources. It does this by first looking at real-time process control mechanisms, understanding the various process variables and assessing their impact on the end product quality. This understanding drives the choice of sensing methods and the associated smart digital workflow to allow real-time control and mitigation of variation in the identified variables. Also, data from this workflow can be captured and used for the design of optimised dies and associated processes
    • โ€ฆ
    corecore