6 research outputs found

    Entwicklung effizienter gemischt paralleler Anwendungen

    Get PDF
    Die Ausnutzung von gemischter Parallelität durch parallele Tasks führt im Vergleich mit reiner Datenparallelität und reiner Taskparallelität häufig zu effizienteren und flexibleren parallelen Implementierungen. In der vorliegenden Dissertation wird mit dem CM-task Programmiermodell eine Erweiterung des Standardmodells der parallelen Tasks vorgestellt. Damit wird die Modellierung von Kommunikationsoperationen zwischen zeitgleich ausgeführten parallelen Tasks unterstützt, was zur besseren Strukturierung von parallelen Anwendungen mit einem regelmäßigen Datenaustausch zwischen verschiedenen Programmteilen beiträgt. Für das CM-task Programmiermodell wird das zugehörige Schedulingproblem definiert und ein entsprechender Schedulingalgorithmus vorgestellt. Die Anwendungsentwicklung im CM-task Programmiermodell wird durch das CM-task Compilerframework unterstützt, das eine gegebene plattformunabhängige Spezifiktion eines parallelen Algorithmus schrittweise in ein plattformspezifisches Koordinationsprogramm übersetzt. Das Koordinationsprogramm enthält Programmcode zum Anlegen und Verwalten der benötigten Prozessorgruppen, zum Ausführen der vom Anwender bereitgestellten CM-tasks auf diesen Prozessorgruppen sowie zur Realisierung der benötigten Datenumverteilungsoperationen zwischen den Prozessorgruppen. Der Aufbau und die Schnittstellen des CM-task Compilerframeworks werden in der vorliegenden Dissertation detailliert beschrieben. Anhand verschiedener Anwendungen aus dem wissenschaftlichen Rechnens wird die Einsetzbarkeit des CM-task Programmiermodells und des CM-task Compilerframeworks demonstriert.Mixed parallel programming models based on parallel tasks often lead to more efficient and more flexible implementations compared to pure data and pure task parallelism. In this thesis, the CM-task programming model is proposed which extends standard parallel tasks such that communication phases between concurrently executed parallel tasks can be modeled thus allowing a better structuring of parallel applications that require a frequent data exchange between different program parts. Based on the CM-task programming model the CM-task scheduling problem is defined and a scheduling algorithm is proposed. The development of parallel applications within the CM-task programming model is supported by the CM-task compiler framework, which transforms a given platform independent specification of a parallel algorithm into a platform specific coordination program. The coordination program is responsible for the creation and the management of the required processor groups, the execution of the user provided CM-tasks on these processor groups and for the implementation of the data re-distribution operations between these processor groups. The architecture and the interfaces of the CM-task compiler framework are explained in detail. The applicability of the CM-task programming model and the CM-task compiler framework are demonstrated for several scientific applications

    Combined Scheduling and Mapping for Scalable Computing with Parallel Tasks

    No full text
    Recent and future parallel clusters and supercomputers use symmetric multiprocessors (SMPs) and multi-core processors as basic nodes, providing a huge amount of parallel resources. These systems often have hierarchically structured interconnection networks combining computing resources at different levels, starting with the interconnect within multi-core processors up to the interconnection network combining nodes of the cluster or supercomputer. The challenge for the programmer is that these computing resources should be utilized efficiently by exploiting the available degree of parallelism of the application program and by structuring the application in a way which is sensitive to the heterogeneous interconnect. In this article, we pursue a parallel programming method using parallel tasks to structure parallel implementations. A parallel task can be executed by multiple processors or cores and, for each activation of a parallel task, the actual number of executing cores can be adapted to the specific execution situation. In particular, we propose a new combined scheduling and mapping technique for parallel tasks with dependencies that takes the hierarchical structure of modern multi-core clusters into account. An experimental evaluation shows that the presented programming approach can lead to a significantly higher performance compared to standard data parallel implementations

    Transformation ereignisgesteuerter Prozeßketten in Workflowbeschreibungen im XPDL-Format

    No full text
    Aufgrund des stetig zunehmenden Kostendrucks geht ein Trend in Richtung der rechnergestützten Abarbeitung von betrieblichen Geschäftsprozessen und behördlichen Verwaltungsvorgängen in Form von Workflows. Liegen die abzuarbeitenden Vorgänge bereits als Geschäftsprozeßmodell vor, kann durch eine Transformation in ein Workflowmodell eine komplette Neumodellierung vermieden werden. Dieser Bericht beschreibt ein Übersetzungswerkzeug, das eine derartige Transformation halbautomatisch durchführen kann. Als Ausgangspunkt dienen Geschäftsprozeßmodelle basierend auf ereignisgesteuerten Prozeßketten, die über mehrere Transformationsschritte in eine im XPDL Format kodierte Workflowbeschreibung überführt wird. Die einzelnen Transformationsschritte werden an einem konkreten Anwendungsfall aus dem Bereich des E-Governments verdeutlicht und die Bedienung des Werkzeugs, die über eine graphische Benutzeroberfläche erfolgt, erläutert

    Combining Measures for Temporal and Spatial Locality

    No full text
    Numerical software for sequential or parallel machines with memory hierarchies can benefit from locality optimizations which are usually achieved by program restructuring or program transformations. The choice of the program version that achieves the best performance is usually complex as many dependencies have to be taken into account. Thus program-based locality measures have been introduced to give programmers a guideline if a performance gain can be expected from a program restructuring. The novel contribution of this paper is the extension of these locality measures to support spatial locality. These extended measures are applied to two applications from scientific computing and the obtained prediction is compared to benchmark results

    Transformation ereignisgesteuerter Prozeßketten in Workflowbeschreibungen im XPDL-Format

    Get PDF
    Aufgrund des stetig zunehmenden Kostendrucks geht ein Trend in Richtung der rechnergestützten Abarbeitung von betrieblichen Geschäftsprozessen und behördlichen Verwaltungsvorgängen in Form von Workflows. Liegen die abzuarbeitenden Vorgänge bereits als Geschäftsprozeßmodell vor, kann durch eine Transformation in ein Workflowmodell eine komplette Neumodellierung vermieden werden. Dieser Bericht beschreibt ein Übersetzungswerkzeug, das eine derartige Transformation halbautomatisch durchführen kann. Als Ausgangspunkt dienen Geschäftsprozeßmodelle basierend auf ereignisgesteuerten Prozeßketten, die über mehrere Transformationsschritte in eine im XPDL Format kodierte Workflowbeschreibung überführt wird. Die einzelnen Transformationsschritte werden an einem konkreten Anwendungsfall aus dem Bereich des E-Governments verdeutlicht und die Bedienung des Werkzeugs, die über eine graphische Benutzeroberfläche erfolgt, erläutert
    corecore