Karlsruher Institut für Technologie KIT – Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Managing Heterogeneity by Light-weight Abstraction and Self-Guidance Rainer Buchty KIT, Institute of Computer Science & Engineering (ITEC), Chair for Computer Architecture and Parallel Processing Eberhard Karls Univ. Tübingen, Wilhelm Schickard Institute for Computer Science (WSI), Dept. of Computer Engineering
44
Embed
Managing Heterogeneity by Light-weight Abstraction and ...ra.ziti.uni-heidelberg.de/coeht/pages/events/20110208/presentations/... · Karlsruher Institut für Technologie Cost-aware
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Karlsruher Institut für Technologie
KIT – Universität des Landes Baden-Württemberg undnationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
Managing Heterogeneity by Light-weightAbstraction and Self-GuidanceRainer Buchty
KIT, Institute of Computer Science & Engineering (ITEC), Chair for Computer Architecture and Parallel ProcessingEberhard Karls Univ. Tübingen, Wilhelm Schickard Institute for Computer Science (WSI), Dept. of Computer Engineering
Karlsruher Institut für TechnologieMotivationHeterogenity on the rise
in the past: “everything is software”Application requirements and Technology aspects shift focusRevival of heterogenous architectures
Karlsruher Institut für TechnologieMotivation (cont’d)
Example: HTX-based reconfigurable acceleratorFPGA-based universal acceleratorFlexible use of FPGA resources by partitioning
Dynamic configuration of individual “slots”Focus on use within multitasking/multithreading environments
Mon.
Accelerator
PR
B
Accelerator Slot
Accelerator Wrapper
HT Core
DMA Unit
Co
mm
an
d &
Sta
tus
Bu
s
Da
ta B
us
Mon.P
RB
Accelerator
Accelerator Slot
Accelerator Wrapper
Static Dynamic
Inte
rfa
ce
Ac
ce
l.
Coder
Request
Reconfiguration
Controller
Inte
rfa
ce
Ac
ce
l.David Kramer, Thorsten Vogel,Rainer Buchty, Fabian Nowak,Wolfgang Karl: A general purposeHyperTransport-based ApplicationAccelerator Framework;Proceedings of the SecondInternational Workshop onHyperTransport Research andApplications (WHTRA 2009),Mannheim, Germany, February 12,2009
Karlsruher Institut für TechnologieAbstraction layer
Light-weight run-time layer extensionFunction call is a proxyProxy dynamically mapped to desired implementationFlexible mapping-control enabling external guidanceNo measurable impact on run-time
Function Switcher
Control
Daemon
long libfct_a(int a, ...) long libfct_b(int a, ...)
Interface
Kernel
long (*fct)(int a, ...)
Function Pointer
Rainer Buchty, Mario Kicherer, DavidKramer, Wolfgang Karl: Anembrace-and-extend approach tomanaging the complexity of futureheterogeneous systems;Proceedings of SAMOS IX, Springer,Series Lecture Notes in ComputerScience (LNCS) Volume 5657, pp.226-235, Samos, Greece, July 2009
Karlsruher Institut für TechnologieAbstraction layer (cont’d)
Expansion of Task-State Segment (TSS)TSS: OS’s task management structure
TSS handled in software, hence changes possibleSlight changes to kernel source required
Keep management list with threadFunction mappings individual per thread“Unlimited” implementation alternatives possibleRegistering of alternatives required
Flexibility and compatibilityEmbrace OS structureSpans 4 dedicated system layers
Application and library reside in user address spaceControl daemon decoupled in own address spaceKernel address space (hardware access)Hardware
Interfacing between layersInter-process communication (IPC) using procfs between userand daemon address spaceHardware device drivers between kernel and hardware
Karlsruher Institut für TechnologieComplexity issues (cont’d)
Overcoming complexity by Self-XSelf-awareness: system-state analysis and evaluationSelf-adaptation and Self-optimizationSelf-protection and Self-healing
Introduce bio-inspired flexibility“Sensors and actuators”Communication and control
Rainer Buchty, Wolfgang Karl: Design Aspects forSelf-Organizing Heterogeneous Multi-CoreArchitectures; it - Information Technology Journal 5/08"‘Computer Architecture – New Developments"’,Oldenbourg Wissenschaftsverlag, 2008
Karlsruher Institut für TechnologieCost-aware function migration (cont’d)
Dynamic instrumentationLight-weight expansionof the abstraction layerProxy function resolves tofunction listCall any amount of fcts.before and after selectedimplementationHowever: requires callerstack-frame duplicationInstrumentation costshidden by pre/post fcts.
Pro
xy lis
t
Post
Functions
f()
Pre
Functions
f()
Application
f()
f()
using
proxy list
proxy resolving
simple
Mario Kicherer, Fabian Nowak, Rainer Buchty, Wolfgang Karl:Extending a Light-weight Runtime System by DynamicInstrumentation for Performance Evaluation; ARCS 2010Workshop Proceedings (PARMA 2010), pages 279-284, VDE, ISBN978-3-8007-3222-7, Hannover, Germany, February 2010
Karlsruher Institut für TechnologieCost-aware function migration (cont’d)
Phase 2: Guided executionSelect implementationbased on workload sizeand associated cost valueMeasure execution timeRedo classification if toomuch deviation fromexpectation
Mario Kicherer, Rainer Buchty, Wolfgang Karl: Cost-awareFunction Migration in Heterogeneous Systems HiPEAC 2011,Proceedings of the 2011 International Conference on HighPerformance Embeddded Architectures & Compilers, Heraklion,Crete, Greece, January 2011
Karlsruher Institut für TechnologieCompatibility issues
So far we achieved...
(Almost) compatibility on source-code levelOnly registration of functions requiredNo code overloading with implementation selectionApproach orthogonal to parallel programming models
Compatibility on execution levelTransparent changes to runtime systemLegacy software unharmed
But what about run-time compatibility?Classification takes timeApplication might break due to given constraints!
Fabian Nowak, Mario Kicherer, Rainer Buchty, Wolfgang Karl:Delivering Guidance Information in Heteroge- neousSystems, PARS 2010, Hannover, Februar 2010
KIT – Universität des Landes Baden-Württemberg undnationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
Managing Heterogeneity by Light-weightAbstraction and Self-GuidanceRainer Buchty
KIT, Institute of Computer Science & Engineering (ITEC), Chair for Computer Architecture and Parallel ProcessingEberhard Karls Univ. Tübingen, Wilhelm Schickard Institute for Computer Science (WSI), Dept. of Computer Engineering
Karlsruher Institut für TechnologieFunction resolution
Basic overhead
min avg. max Ovhd.native 21.26s 21.60s 21.91s –GLS 21.26s 21.60s 21.91s 0DLS-DL 21.08s 21.54s 21.88s ∼0DLS-SL 21.06s 21.57s 21.94s ∼0
KIT – Universität des Landes Baden-Württemberg undnationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
Managing Heterogeneity by Light-weightAbstraction and Self-GuidanceRainer Buchty
KIT, Institute of Computer Science & Engineering (ITEC), Chair for Computer Architecture and Parallel ProcessingEberhard Karls Univ. Tübingen, Wilhelm Schickard Institute for Computer Science (WSI), Dept. of Computer Engineering