首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 524 毫秒
1.
The PEPPHER (EU FP7 project) component model defines the notion of component, interface and meta-data for homogeneous and heterogeneous parallel systems. In this paper, we describe and evaluate the PEPPHER composition tool, which explores the application’s components and their implementation variants, generates the necessary low-level code that interacts with the runtime system, and coordinates the native compilation and linking of the various code units to compose the overall application code to optimize performance. We discuss the concept of smart containers and its benefits for reducing dispatch overhead, exploiting implicit parallelism across component invocations and runtime optimization of data transfers. In an experimental evaluation with several applications, we demonstrate that the composition tool provides a high-level programming front-end while effectively utilizing the task-based PEPPHER runtime system (StarPU) underneath for different usage scenarios on GPU-based systems.  相似文献   

2.
Power-efficiency has been a key issue for today’s application and system design, ranging from embedded systems to data centers. While application-specific designs and optimizations may improve the power efficiency, it requires significant efforts to co-design the hardware and software, which are difficult to re-use. On the hardware front, the trend of heterogeneous computing enables custom designs for specific applications by integrating different types of processors and reconfigurable hardware to handle compute-intensive tasks. However, what is still missing is an elegant application framework, i.e., a programming environment and a runtime system, to develop portable applications which can offload tasks or be reconfigured dynamically to run on a variety of systems efficiently.Our ongoing work, MobileFBP, provides an application framework which aims to support heterogeneous and reconfigurable systems. Using the framework, the developers build portable applications with a dataflow programming paradigm, and the MobileFBP runtime system dynamically schedules the task components to run on available computing resources locally or remotely based on the application profiles. We hope that this ability produces high-level portable applications and reduces the efforts and skills needed for the developers to optimize their applications on a range of systems. This paper describes this work and presents our preliminary results.  相似文献   

3.
云应用是云计算技术在应用层的一种重要体现形式,通常由分布式异构组件构成,且组件相互依赖,配置参数众多。组件依赖导致配置参数间存在关联,使应用运行时弹性扩展难以确定组件实例的配置顺序并保证关联参数的一致性,导致应用扩展后的系统故障和服务不可用。针对这一问题,提出了一种基于模型的云应用动态自配置方法,实现运行时组件实例配置顺序的自动协调,保障配置参数的一致性,提高应用运行时弹性扩展的可靠性。首先提出一种部署配置模型STM(Service-based Topology Model),该模型采用声明式的方法刻画云应用的部署拓扑结构,并基于服务的方式描述组件信息,实现组件间关联关系的分离,涵盖运维部署、扩展、运行时服务状态的监测。 然后 基于该模型,提出了一个云应用动态自配置协议,其基于服务注册发现机制实现组件间强依赖关系的解耦,保证动态调整应用实例时组件配置变化的一致性,实现组件部署配置的并行化。基于上述方法实现了一个原型系统,通过对分布式应用BookStore-TPCW的部署配置和运行时弹性扩展来验证方法的有效性。  相似文献   

4.
David Rine   《Information Sciences》2003,150(3-4):123-151
Human exploration and development of space will involve opening the space frontier by exploring, using and enabling the development of space through information technology, while expanding the human experience into the far reaches of space. At that point in time we assert that the current primitive World Wide Web (Web) will be replaced and dramatically expanded into an Interstellar Space Wide Web (SWW). The current state-of-the-art low-orbits communications satellites constellations will be dramatically expanded to higher orbits and to orbits supporting work on other remote human colonies. This will be necessary in order to furnish in a human-friendly way the necessary software and information that will be needed in support of Interstellar Space Wide Information Technologies. Many of the problems encountered in conceiving of, modeling, designing and deploying such a facility will be different from those problems encountered in today’s Web. Future research and development work will be to identify some of these problems and to conceptually model a few of their solutions. In this work we describe research into the development of scalable tools and techniques that reduce the effort associated with component integration, both with respect to network environments and with respect to other components within the application. Our approach is also targeted at increasing the reusability of software components and software architectures. Our research is to investigate current problems in leveraging adapters as a means to configure of large-scale Next Generation distributed systems software from reusable architectures and components. Our approach to solving this problem is through the development of a novel configuration model and network-aware runtime environment called SWWACXML, for Space Wide Web Adapter Configuration eXtensible Markup Language. SWWACXML provides support for cross-layer architectural configuration at both the application level and the level of individual network connections. The language associated with this environment captures component interaction properties and network level quality-of-service (QoS) constraints. Adapters will be generated automatically from SWWACXML specifications. These adapters are part of the SWWACXML runtime system. The runtime system includes facilities for automatic configuration and runtime reconfiguration, as well as efficient management of network connections and QoS options. This facilitates reuse because components are not tied to interactions or environments. Another aspect of this work will focus on development and experimentation with a novel Web-based interaction paradigm that allows client adapters to tailor themselves to servers at runtime. One of the strengths of our approach is that clients do not have to be tied to specific servers at implementation time. Rather, a client’s adapter loads an SWWACXML configuration page from the server. The SWWACXML configuration page defines the appropriate interaction, including management of heterogeneous network QoS options. We believe our approach is amenable to facilitate a style of dynamic reconfiguration, where clients can at runtime change server, communication or interaction protocol. Future researchers and developers will design and implement the SWWACXML system in a distributed test-bed. They will develop performance analysis techniques to judge the success and efficiency of our approach.  相似文献   

5.
A packaging system that allows diverse software components to be easily interconnected within heterogeneous programming environments is described. Interface software and stubs are generated for programmers automatically once the programmers express their application's geometry in a few simple rules and module interconnection language attributes. By generating custom interface code for each application, based on analysis and extraction of interfacing requirements, the system is able to produce executables whose run-time performance is comparable to manually integrated applications. The system is implemented within the Unix environment  相似文献   

6.
Adaptable software systems and architectures give the programmer the ability to create applications that might customize themselves to runtime-emerging requirements. Computational reflection is a programming language technique that is commonly used to achieve the development of this kind of systems. Most runtime reflective systems use Meta-Object Protocols (MOPs). However, MOPs restrict the amount of features an application can customize, and the way they can express its own adaptation. Furthermore, this kind of systems uses a fixed programming language: they develop an interpreter, not a whole language-independent platform.What we present in this paper a non-restrictive reflective platform, called nitrO, that achieves a real computational-environment jump, making every application and language feature adaptable at runtime—without any previously defined restriction. Moreover, the platform has been built using a generic interpreter, in which the reflection mechanism is independent of the language selected by the programmer. Different applications may dynamically adapt each other, regardless of the programming language they use.  相似文献   

7.
一种支持多种访存技术的CBEA片上多核MPI并行编程模型   总被引:1,自引:0,他引:1  
现有的CBEA(Cell Broadband Engine Architecture)编程模型多侧重于支持类似于流处理的"批量访存"(Bulk Data Transfer)应用,传统非规则访存应用性能较低.文中基于Cell架构提出了一种同时支持"批量访存"与非规则访存应用的MPI并行编程模型,将通信分解在PPE(PowerPC Processing Element)上,拓宽模型的适用范围;在统一访存接口下,通过运行时访存剖分信息指导选择和优化访存以提高计算效率.实验结果表明,文中提出的编程模型支持多种访存模式并具有很好的并行加速比,可获得较同类相关技术30%~50%左右的性能提升.  相似文献   

8.
Large-scale compute clusters of heterogeneous nodes equipped with multi-core CPUs and GPUs are getting increasingly popular in the scientific community. However, such systems require a combination of different programming paradigms making application development very challenging.In this article we introduce libWater, a library-based extension of the OpenCL programming model that simplifies the development of heterogeneous distributed applications. libWater consists of a simple interface, which is a transparent abstraction of the underlying distributed architecture, offering advanced features such as inter-context and inter-node device synchronization. It provides a runtime system which tracks dependency information enforced by event synchronization to dynamically build a DAG of commands, on which we automatically apply two optimizations: collective communication pattern detection and device-host-device copy removal.We assess libWater’s performance in three compute clusters available from the Vienna Scientific Cluster, the Barcelona Supercomputing Center and the University of Innsbruck, demonstrating improved performance and scaling with different test applications and configurations.  相似文献   

9.
This paper describes a Java-based framework for the development of component-based software systems supporting the specification of the logic of component interactions as a first-class aspect. Java is used as the reference development language.On the one side, the framework makes it possible to specify the logic of interaction at the component-level, in terms of input and output interfaces, the events generated and observed by a component, and related information about the management of the control flow. On the other side, it is possible to specify the logic of interaction at the inter-component level, providing a modelling and linguistic support for designing and (dynamically) programming the glue among the components, enabling general forms of observation, control and construction of the interaction space.As a result, the framework supports the coordination of components at different levels: from interoperability among heterogeneous and unknown components, to the support for dynamic introduction, removal and update of components, to general coordination patterns, such as workflow. The framework adopts first-order logic as the reference computational model for describing and defining the logic of interaction: the modalities adopted by components to interact, the coordination laws gluing the components and the interaction events occurring in the system are expressed as facts and rules. They compose the (evolving) logic theories describing and defining the interaction at the system level, and can be observed and controlled at runtime to allow dynamic re-configurability.  相似文献   

10.
This paper presents a platform that supports the execution of scientific applications covering different programming models (such as Master/Slave, Parallel/MPI, MapReduce and Workflows) on Cloud infrastructures. The platform includes (i) a high-level declarative language to express the requirements of the applications featuring software customization at runtime, (ii) an approach based on virtual containers to encapsulate the logic of the different programming models, (iii) an infrastructure manager to interact with different IaaS backends, (iv) a configuration software to dynamically configure the provisioned resources and (v) a catalog and repository of virtual machine images. By using this platform, an application developer can adapt, deploy and execute parallel applications agnostic to the Cloud backend.  相似文献   

11.
在许多应用软件运行时都带有命令行参数,这些命令行参数在C语言编写的程序中也可以实现,灵活地运用命令行参数进行处理可以有效地提高程序的运行效率,收到事半功倍的效果。详细分析了C语言编程技巧在C语言学习中的应用。  相似文献   

12.
Advances in wireless sensing and actuation technology allow embedding significant amounts of application logic inside wireless sensor networks. Such active WSN applications are more autonomous, but are significantly more complex to implement. Event-based middleware lends itself to implementing these applications. It offers developers fine-grained control over how an individual node interacts with the other nodes of the network. However, this control comes at the cost of event handlers which lack composability and violate software engineering principles such as separation of concerns. In this paper, we present CrimeSPOT as a domain-specific language for programming WSN applications on top of event-driven middleware. Its node-centric features enable programming a node’s interactions through declarative rules rather than event handlers. Its network-centric features support reusing code within and among WSN applications. Unique to CrimeSPOT is its support for associating application-specific semantics with events that carry sensor readings. These preclude transposing existing approaches that address the shortcomings of event-based middleware to the domain of wireless sensor networks. We provide a comprehensive overview of the language and the implementation of its accompanying runtime. The latter comprises several extensions to the Rete forward chaining algorithm. We evaluate the expressiveness of the language and the overhead of its runtime using small, but representative active WSN applications.  相似文献   

13.
基于XML的具有性能约束构件的组装技术   总被引:2,自引:1,他引:1  
采用在软总线TAO(The ACE ORB)上利用XML文档中所包含的语义化的抽象数据类型对构件对象进行操作,从而实现语义化的性能约束构件组装。建构的XML模式描述了构件组装相关的构件接口、交互及配置规约,并通过接口显式地表达构件对环境的依赖,使得能在一个分布式的网络环境里,将多个处于不同节点、提供紧密相关服务的构件在运行时动态地组装成功能系统。在给出的示例中,实现了将三个分布在不同节点的性能约束构件通过它们接口的交互及配置,实现在运行时开放的松散式组装。最后给出了下一步研究工作的重点及方向。  相似文献   

14.
15.
16.
17.
《Parallel Computing》1999,25(13-14):1827-1852
Technological directions for innovative HPC software environments are discussed in this paper. We focus on industrial user requirements of heterogeneous multidisciplinary applications, performance portability, rapid prototyping and software reuse, integration and interoperability of standard tools. The various issues are demonstrated with reference to the PQE2000project and its programming environment Skeleton-based Integrated Environment (SkIE). SkIEincludes a coordination language, SkIECL, allowing the designers to express, in a primitive and structured way, efficient combinations of data parallelism and task parallelism. The goal is achieving fast development and good efficiency for applications in different areas. Modules developed with standard languages and tools are encapsulated into SkIECLstructures to form the global application. Performance models associated to the coordination language allow powerful optimizations to be introduced both at run time and at compile time without the direct intervention of the programmer. The paper also discusses the features of the SkIEenvironment related to debugging, performance analysis tools, visualization and graphical user interface. A discussion of the results achieved in some applications developed using the environment concludes the paper.  相似文献   

18.
Technological directions for innovative HPC software environments are discussed in this paper. We focus on industrial user requirements of heterogeneous multidisciplinary applications, performance portability, rapid prototyping and software reuse, integration and interoperability of standard tools. The various issues are demonstrated with reference to the PQE2000project and its programming environment Skeleton-based Integrated Environment ( ). includes a coordination language, , allowing the designers to express, in a primitive and structured way, efficient combinations of data parallelism and task parallelism. The goal is achieving fast development and good efficiency for applications in different areas. Modules developed with standard languages and tools are encapsulated into structures to form the global application. Performance models associated to the coordination language allow powerful optimizations to be introduced both at run time and at compile time without the direct intervention of the programmer. The paper also discusses the features of the environment related to debugging, performance analysis tools, visualization and graphical user interface. A discussion of the results achieved in some applications developed using the environment concludes the paper.  相似文献   

19.
主从式单边异构体系结构的异构多核处理器广泛应用于面向专门应用领域的计算加速,如异构多核嵌入式处理器、DSP、SoC等;高性能的该类处理器也可用于一些大规模科学和工程计算问题的处理。主从式单边异构处理器对编程模型和编译技术提出了很多挑战性问题,如编程模型的选择、编程语言的设计、编译器架构设计以及运行库的设计等。本文分析了这一类处理器结构特点和执行模型,认为功能卸载模型是最适用于这一体系结构的编程模型;并分析了面向功能卸载模型的编程语言设计关键问题,提出了编译系统的架构,讨论了相应的运行库设计问题。  相似文献   

20.
Seamless access to resources and services provided by distributed, autonomous, and heterogeneous systems is central to many advanced applications. Building an integrated system to provide such uniform access and cooperation among underlying heterogeneous systems is both an increasing necessity and a formidable challenge. An important component of such a complex integrated system is a unified language that serves both as a data definition and as a data manipulation tool. Special requirements are posed in the instance of an integrated system which includes database systems among its components. In this paper, we introduce the necessary constructs that an object-oriented programming language should provide for being adopted as the language of the integrated system in such a setting. We adopt a modular, object-based approach to integration. Each component system that joins the integration provides a set of basic classes and pre-defined basic methods. We show how the class hierarchy of the system can be used to provide a uniform way of mapping database resources to basic classes and associative queries to basic methods. A view mechanism is introduced that supports the integration of the basic classes and provides a means of expressing relationships among them and resolving any potential conflicts. The view mechanism is implemented by extending the standard class constructors of an object-oriented language to support the definition of virtual classes. The language provides workflow constructs for defining the structure of programs and for attaining synchronization among concurrently executing programs. Furthermore, atomicity and concurrency control information is included in the form of consistency assertions as part of the interface of each basic method.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号