• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 4
  • 1
  • 1
  • Tagged with
  • 6
  • 6
  • 6
  • 6
  • 6
  • 5
  • 5
  • 5
  • 4
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
1

Lastgetriebene Validierung Dienstbereitstellender Systeme / Load-Driven Validation of Service Providing Systems

Caspar, Mirko 07 January 2014 (has links) (PDF)
Mit steigender Komplexität heterogener, verteilter Systeme nehmen auch die Anforderungen an deren Validierung zu. In dieser Arbeit wird ein Konzept vorgestellt, mit dem eine bestimmte Klasse komplexer Systeme, so genannte Dienstbereitstellende Systeme, durch automatisiertes Testen validiert werden kann. Mit Hilfe heterogener Klienten, bspw. eingebetteter Systeme, wird die Systemfunktionalität getestet. Hierzu wird das zu testende System auf die nach außen zur Verfügung gestellten Dienste reduziert und die Nutzung dieser Dienste durch Klienten mit einer Last quantifiziert. Eine Validierung wird durch die Vorgabe zeitlich veränderlicher Lasten für jeden Dienst definiert. Diese Lasten werden zielgerichtet den verfügbaren Klienten zugeteilt und durch diese im zu testenden System erzeugt. Zur praktikablen Anwendung dieses Konzeptes ist eine Automatisierung des Validierungsprozesses notwendig. In der Arbeit wird die Architektur einer Testbench vorgestellt, die zum einen die Heterogenität der Klienten berücksichtigt und zum anderen Einflüsse durch die Dynamik der Klienten während der Laufzeit der Validierung ausgleicht. Das hierbei zu lösende algorithmische Problem der Dynamischen Testpartitionierung wird ebenso definiert, wie ein Modell zur Beschreibung aller notwendigen Parameter. Die Testpartitionierung kann mittels einer eigens entwickelten Heuristik in Polynomialzeit gelöst werden. Zur Bestimmung der Leistungsfähigkeit des entwickelten Verfahrens wird die Heuristik aufwendigen Untersuchungen unterzogen. Am Beispiel eines zu testenden Mobilfunknetzwerkes wird die beschriebene Testbench umgesetzt und Kernparameter mittels Simulation ermittelt. Das Ergebnis dieser Arbeit ist ein Konzept zur Systemvalidierung, das generisch auf jede Art von dienstbereitstellenden Systemen angewandt werden kann und damit zur Verbesserung des Entwicklungsprozesses von komplexen verteilten Systemen beiträgt.
2

Scalable Applications on Heterogeneous System Architectures: A Systematic Performance Analysis Framework

Dietrich, Robert 15 November 2019 (has links)
The efficient parallel execution of scientific applications is a key challenge in high-performance computing (HPC). With growing parallelism and heterogeneity of compute resources as well as increasingly complex software, performance analysis has become an indispensable tool in the development and optimization of parallel programs. This thesis presents a framework for systematic performance analysis of scalable, heterogeneous applications. Based on event traces, it automatically detects the critical path and inefficiencies that result in waiting or idle time, e.g. due to load imbalances between parallel execution streams. As a prerequisite for the analysis of heterogeneous programs, this thesis specifies inefficiency patterns for computation offloading. Furthermore, an essential contribution was made to the development of tool interfaces for OpenACC and OpenMP, which enable a portable data acquisition and a subsequent analysis for programs with offload directives. At present, these interfaces are already part of the latest OpenACC and OpenMP API specification. The aforementioned work, existing preliminary work, and established analysis methods are combined into a generic analysis process, which can be applied across programming models. Based on the detection of wait or idle states, which can propagate over several levels of parallelism, the analysis identifies wasted computing resources and their root cause as well as the critical-path share for each program region. Thus, it determines the influence of program regions on the load balancing between execution streams and the program runtime. The analysis results include a summary of the detected inefficiency patterns and a program trace, enhanced with information about wait states, their cause, and the critical path. In addition, a ranking, based on the amount of waiting time a program region caused on the critical path, highlights program regions that are relevant for program optimization. The scalability of the proposed performance analysis and its implementation is demonstrated using High-Performance Linpack (HPL), while the analysis results are validated with synthetic programs. A scientific application that uses MPI, OpenMP, and CUDA simultaneously is investigated in order to show the applicability of the analysis.
3

A New System Architecture for Heterogeneous Compute Units

Asmussen, Nils 09 August 2019 (has links)
The ongoing trend to more heterogeneous systems forces us to rethink the design of systems. In this work, I study a new system design that considers heterogeneous compute units (general-purpose cores with different instruction sets, DSPs, FPGAs, fixed-function accelerators, etc.) from the beginning instead of as an afterthought. The goal is to treat all compute units (CUs) as first-class citizens, enabling (1) isolation and secure communication between all types of CUs, (2) a direct interaction of all CUs, removing the conventional CPU from the critical path, and (3) access to operating system (OS) services such as file systems and network stacks for all CUs. To study this system design, I am using a hardware/software co-design based on two key ideas: 1) introduce a new hardware component next to each CU used by the OS as the CUs' common interface and 2) let the OS kernel control applications remotely from a different CU. The hardware component is called data transfer unit (DTU) and offers the minimal set of features to reach the stated goals: secure message passing and memory access. The OS is called M³ and runs its kernel on a dedicated CU and runs the OS services and applications on the remaining CUs. The kernel is responsible for establishing DTU-based communication channels between services and applications. After a channel has been set up, services and applications communicate directly without involving the kernel. This approach allows to support arbitrary CUs as aforementioned first-class citizens, ranging from fixed-function accelerators to complex general-purpose cores.
4

Adaptive work placement for query processing on heterogeneous computing resources

Karnagel, Thomas, Habich, Dirk, Wolfgang 10 November 2022 (has links)
The hardware landscape is currently changing from homogeneous multi-core systems towards heterogeneous systems with many di↵erent computing units, each with their own characteristics. This trend is a great opportunity for database systems to increase the overall performance if the heterogeneous resources can be utilized eciently. To achieve this, the main challenge is to place the right work on the right computing unit. Current approaches tackling this placement for query processing assume that data cardinalities of intermediate results can be correctly estimated. However, this assumption does not hold for complex queries. To overcome this problem, we propose an adaptive placement approach being independent of cardinality estimation of intermediate results. Our approach is incorporated in a novel adaptive placement sequence. Additionally, we implement our approach as an extensible virtualization layer, to demonstrate the broad applicability with multiple database systems. In our evaluation, we clearly show that our approach significantly improves OLAP query processing on heterogeneous hardware, while being adaptive enough to react to changing cardinalities of intermediate query results.
5

Lastgetriebene Validierung Dienstbereitstellender Systeme

Caspar, Mirko 07 January 2014 (has links)
Mit steigender Komplexität heterogener, verteilter Systeme nehmen auch die Anforderungen an deren Validierung zu. In dieser Arbeit wird ein Konzept vorgestellt, mit dem eine bestimmte Klasse komplexer Systeme, so genannte Dienstbereitstellende Systeme, durch automatisiertes Testen validiert werden kann. Mit Hilfe heterogener Klienten, bspw. eingebetteter Systeme, wird die Systemfunktionalität getestet. Hierzu wird das zu testende System auf die nach außen zur Verfügung gestellten Dienste reduziert und die Nutzung dieser Dienste durch Klienten mit einer Last quantifiziert. Eine Validierung wird durch die Vorgabe zeitlich veränderlicher Lasten für jeden Dienst definiert. Diese Lasten werden zielgerichtet den verfügbaren Klienten zugeteilt und durch diese im zu testenden System erzeugt. Zur praktikablen Anwendung dieses Konzeptes ist eine Automatisierung des Validierungsprozesses notwendig. In der Arbeit wird die Architektur einer Testbench vorgestellt, die zum einen die Heterogenität der Klienten berücksichtigt und zum anderen Einflüsse durch die Dynamik der Klienten während der Laufzeit der Validierung ausgleicht. Das hierbei zu lösende algorithmische Problem der Dynamischen Testpartitionierung wird ebenso definiert, wie ein Modell zur Beschreibung aller notwendigen Parameter. Die Testpartitionierung kann mittels einer eigens entwickelten Heuristik in Polynomialzeit gelöst werden. Zur Bestimmung der Leistungsfähigkeit des entwickelten Verfahrens wird die Heuristik aufwendigen Untersuchungen unterzogen. Am Beispiel eines zu testenden Mobilfunknetzwerkes wird die beschriebene Testbench umgesetzt und Kernparameter mittels Simulation ermittelt. Das Ergebnis dieser Arbeit ist ein Konzept zur Systemvalidierung, das generisch auf jede Art von dienstbereitstellenden Systemen angewandt werden kann und damit zur Verbesserung des Entwicklungsprozesses von komplexen verteilten Systemen beiträgt.
6

A Hardware/Software Stack for Heterogeneous Systems

Lehner, Wolfgang, Castrillon, Jeronimo, Lieber, Matthias, Klüppelholz, Sascha, Völp, Marcus, Asmussen, Nils, Aßmann, Uwe, Baader, Franz, Baier, Christel, Fettweis, Gerhard, Fröhlich, Jochen, Goens, Andrés, Haas, Sebastian, Habich, Dirk, Härtig, Hermann, Hasler, Mattis, Huismann, Immo, Karnagel, Tomas, Karol, Sven, Kumar, Akash, Leuschner, Linda, Ling, Siqi, Märcker, Steffen, Menard, Christian, Mey, Johannes, Nagel, Wolfgang, Nöthen, Benedikt, Peñaloza, Rafael, Raitza, Michael, Stiller, Jörg, Ungethüm, Annett, Voigt, Axel, Wunderlich, Sascha 17 July 2023 (has links)
Plenty of novel emerging technologies are being proposed and evaluated today, mostly at the device and circuit levels. It is unclear what the impact of different new technologies at the system level will be. What is clear, however, is that new technologies will make their way into systems and will increase the already high complexity of heterogeneous parallel computing platforms, making it ever so difficult to program them. This paper discusses a programming stack for heterogeneous systems that combines and adapts well-understood principles from different areas, including capability-based operating systems, adaptive application runtimes, dataflow programming models, and model checking. We argue why we think that these principles built into the stack and the interfaces among the layers will also be applicable to future systems that integrate heterogeneous technologies. The programming stack is evaluated on a tiled heterogeneous multicore.

Page generated in 0.0498 seconds