6 resultados para multi-execution
em QUB Research Portal - Research Directory and Institutional Repository for Queen's University Belfast
Resumo:
Increasingly infrastructure providers are supplying the cloud marketplace with storage and on-demand compute resources to host cloud applications. From an application user's point of view, it is desirable to identify the most appropriate set of available resources on which to execute an application. Resource choice can be complex and may involve comparing available hardware specifications, operating systems, value-added services, such as network configuration or data replication, and operating costs, such as hosting cost and data throughput. Providers' cost models often change and new commodity cost models, such as spot pricing, have been introduced to offer significant savings. In this paper, a software abstraction layer is used to discover infrastructure resources for a particular application, across multiple providers, by using a two-phase constraints-based approach. In the first phase, a set of possible infrastructure resources are identified for a given application. In the second phase, a heuristic is used to select the most appropriate resources from the initial set. For some applications a cost-based heuristic is most appropriate; for others a performance-based heuristic may be used. A financial services application and a high performance computing application are used to illustrate the execution of the proposed resource discovery mechanism. The experimental result shows the proposed model could dynamically select an appropriate set of resouces that match the application's requirements.
Resumo:
Processor architectures has taken a turn towards many-core processors, which integrate multiple processing cores on a single chip to increase overall performance, and there are no signs that this trend will stop in the near future. Many-core processors are harder to program than multi-core and single-core processors due to the need of writing parallel or concurrent programs with high degrees of parallelism. Moreover, many-cores have to operate in a mode of strong scaling because of memory bandwidth constraints. In strong scaling increasingly finer-grain parallelism must be extracted in order to keep all processing cores busy.
Task dataflow programming models have a high potential to simplify parallel program- ming because they alleviate the programmer from identifying precisely all inter-task de- pendences when writing programs. Instead, the task dataflow runtime system detects and enforces inter-task dependences during execution based on the description of memory each task accesses. The runtime constructs a task dataflow graph that captures all tasks and their dependences. Tasks are scheduled to execute in parallel taking into account dependences specified in the task graph.
Several papers report important overheads for task dataflow systems, which severely limits the scalability and usability of such systems. In this paper we study efficient schemes to manage task graphs and analyze their scalability. We assume a programming model that supports input, output and in/out annotations on task arguments, as well as commutative in/out and reductions. We analyze the structure of task graphs and identify versions and generations as key concepts for efficient management of task graphs. Then, we present three schemes to manage task graphs building on graph representations, hypergraphs and lists. We also consider a fourth edge-less scheme that synchronizes tasks using integers. Analysis using micro-benchmarks shows that the graph representation is not always scalable and that the edge-less scheme introduces least overhead in nearly all situations.
Resumo:
BACKGROUND AND OBJECTIVE: Human research ethics committees provide essential review of research projects to ensure the ethical conduct of human research. Several recent reports have highlighted a complex process for successful application for human research ethics committee approval, particularly for multi-centre studies. Limited resources are available for the execution of human clinical research in Australia and around the world.
METHODS: This report overviews the process of ethics approval for a National Health and Medical Research Council-funded multi-centre study in Australia, focussing on the time and resource implications of such applications in 2007 and 2008.
RESULTS: Applications were submitted to 16 hospital and two university human research ethics committees. The total time to gain final approval from each committee ranged between 13 and 77 days (median = 46 days); the entire process took 16 months to complete and the research officer's time was estimated to cost $A34 143.
CONCLUSIONS: Obstacles to timely human research ethics committee approval are reviewed, including recent, planned and potential initiatives that could improve the ethics approval of multi-centre research.
Resumo:
This paper proposes a hierarchical energy management system for multi-source multi-product (MSMP) microgrids. Traditional energy hub based scheduling method is combined with a hierarchical control structure to incorporate transient characteristics of natural gas flow and dynamics of energy converters in microgrids. The hierarchical EMS includes a supervisory control layer, an optimizing control layer, and an execution control layer. In order to efficiently accommodate the systems multi time-scale characteristics, the optimizing control layer is decomposed into three sub-layers: slow, medium and fast. Thermal, gas and electrical management systems are integrated into the slow, medium, and fast control layer, respectively. Compared with wind energy, solar energy is easier to integrate and more suitable for the microgrid environment, therefore, potential impacts of the hierarchical EMS on MSMP microgrids is investigated based on a building energy system integrating photovoltaic and microturbines. Numerical studies indicate that by using a hierarchical EMS, MSMP microgrids can be economically operated. Also, interactions among thermal, gas, and electrical system can be effectively managed.
Resumo:
Background: Large-scale biological jobs on high-performance computing systems require manual intervention if one or more computing cores on which they execute fail. This places not only a cost on the maintenance of the job, but also a cost on the time taken for reinstating the job and the risk of losing data and execution accomplished by the job before it failed. Approaches which can proactively detect computing core failures and take action to relocate the computing core's job onto reliable cores can make a significant step towards automating fault tolerance. Method: This paper describes an experimental investigation into the use of multi-agent approaches for fault tolerance. Two approaches are studied, the first at the job level and the second at the core level. The approaches are investigated for single core failure scenarios that can occur in the execution of parallel reduction algorithms on computer clusters. A third approach is proposed that incorporates multi-agent technology both at the job and core level. Experiments are pursued in the context of genome searching, a popular computational biology application. Result: The key conclusion is that the approaches proposed are feasible for automating fault tolerance in high-performance computing systems with minimal human intervention. In a typical experiment in which the fault tolerance is studied, centralised and decentralised checkpointing approaches on an average add 90% to the actual time for executing the job. On the other hand, in the same experiment the multi-agent approaches add only 10% to the overall execution time
Resumo:
Graphics Processing Units (GPUs) are becoming popular accelerators in modern High-Performance Computing (HPC) clusters. Installing GPUs on each node of the cluster is not efficient resulting in high costs and power consumption as well as underutilisation of the accelerator. The research reported in this paper is motivated towards the use of few physical GPUs by providing cluster nodes access to remote GPUs on-demand for a financial risk application. We hypothesise that sharing GPUs between several nodes, referred to as multi-tenancy, reduces the execution time and energy consumed by an application. Two data transfer modes between the CPU and the GPUs, namely concurrent and sequential, are explored. The key result from the experiments is that multi-tenancy with few physical GPUs using sequential data transfers lowers the execution time and the energy consumed, thereby improving the overall performance of the application.