作者:
Li, BoruiDong, WeiZhejiang Univ
Alibaba Zhejiang Univ Joint Inst Frontier Technol Coll Comp Sci Hangzhou 310027 Peoples R China
IoT application development usually involves separate programming at the device side and server side. While separate programming style is sufficient for many simple applications, it is not suitable for many complex ap...
详细信息
IoT application development usually involves separate programming at the device side and server side. While separate programming style is sufficient for many simple applications, it is not suitable for many complex applications that involve complex interactions and intensive data processing. We propose EdgeProg, an edge-centric programming approach to simplify IoT application programming, motivated by the increasing popularity of edge computing. With EdgeProg, users could write application logic in a centralized manner with an augmented If-This-Then-That (IFTTT) syntax and virtual sensor mechanism. The program can be processed at the edge server, which can automatically generate the actual application code and intelligently partition the code into device code and server code, for achieving the optimal latency. EdgeProg employs dynamic linking and loading to deploy the device code on a variety of IoT devices, which do not run any application-specific codes at the start. Results show that EdgeProg achieves an average reduction of 20.96%, 27.8% and 79.41% in terms of execution latency, energy consumption, and lines of code compared with state-of-the-art approaches.
A new programming method called Cell Control language (CCL) for factory-automation systems has been developed. In CCL programming, an action sequence of each functional unit in each operation mode is first described a...
详细信息
A new programming method called Cell Control language (CCL) for factory-automation systems has been developed. In CCL programming, an action sequence of each functional unit in each operation mode is first described as a net module. This net module is a subclass of Petri nets, and this subclass is equivalent to a state-transition diagram (a conventional design method). Several net modules are merged and translated into an internal code program, which is executed in a cell controller. To improve the ability of the controller to respond to state changes, we developed two new methods based on CCL. One is that for efficiently describing a CCL program, which needs a quick response to state changes, and the other is that for executing the program in a short cycle. The execution method was applied to an actual cell controller, which confirmed that it can improve the ability to respond to state changes without reducing the total control performance. (C) 2003 Wiley Periodicals, Inc.
Currently available programming and database systems are insufficient for engineering applications. The authors contend that a logical progression from a formal conceptual model of the engineering domain to a computat...
详细信息
Currently available programming and database systems are insufficient for engineering applications. The authors contend that a logical progression from a formal conceptual model of the engineering domain to a computational model will lead to new programming paradigms capable of directly supporting engineering applications in a rigorous, concise manner. A formal domain model devised by the authors, the Hybrid Model (HM) of design information, is briefly introduced. It is an extension of axiomatic set theory and is discussed in detail elsewhere. HM forms the basis of Designer, a prototype-based object-oriented programming language supporting a signature-based canonical message-passing mechanism and multiple inheritance. Designer is implemented using the Scheme programming language. Because Designer satisfies a formal conceptual model, and because it is based on a formally specified language, its robustness and logical validity are superior to those of other languages not founded on formal principles. Designer combines concepts of functional and object-oriented programming to provide the formal rigor and flexibility to capture the complex and strongly interrelated information that designers use. Examples demonstrate how Designer represents design information. The results of the authors' research indicate that Designer can capture design information (including aspects of functional requirements and design intent) effectively and efficiently.
This article discusses the possibilities of using FPGAs in order to construct fast PLCs that execute serial-cyclic program control loop. The PLCs bistable function blocks of the IEC 61131-3 standard with particular em...
详细信息
This article discusses the possibilities of using FPGAs in order to construct fast PLCs that execute serial-cyclic program control loop. The PLCs bistable function blocks of the IEC 61131-3 standard with particular emphasis on the possible FPGA implementations are presented. The FPGA hardware support is implemented in such a way that it does not interfere with the normal, serial-cyclic program execution. It enables a significant reduction in the timing of the result execution after loading new input data in the memory cells. Moreover, such an implementation of bistable function blocks allows for seamless use in any programming language. Both the IL text language and the graphical languages (LD and FBD) can freely use the advantages of such a solution. (C) 2018 Elsevier B.V. All rights reserved.
In the Membrane Computing area, P systems are unconventional devices of computation inspired by the structure and processes taking place in living cells. Main successful P system applications lie in computability and ...
详细信息
In the Membrane Computing area, P systems are unconventional devices of computation inspired by the structure and processes taking place in living cells. Main successful P system applications lie in computability and computational complexity theories, as well as in biological modelling. Given that models become too complex to deal with, simulators for P systems are essential tools and their efficiency is critical. In order to handle the diverse situations that may arise during the computation, these simulators have to take into account that worst-case scenarios can happen, even though they rarely occur. As a result, there is a significant loss of performance. In this paper, the concept of adaptative simulation for P systems is introduced to palliate this problem. This is achieved by passing high-level information provided directly by P system model designers to the simulator, helping it to better adapt to the target model. For this purpose, an existing simulator for an ecosystem modelling framework, named Population Dynamics P systems, is extended to include the information of modules, that are usually employed to define ecosystem models. Moreover, the standard description language for P systems, P-Lingua, has been re-engineered in its version 5. It now includes a new syntactical item, called feature, to express this kind of high-level semantic information. Experiments show that this simple adaptative simulator supporting modules as features doubles the performance when running on GPUs and on multicore processors. (C) 2020 Elsevier B.V. All rights reserved.
As open-ended distributed systems and mobile computing systems have spread widely, the need for software which can adapt itself to the dynamic change of runtime environments increases. We call the ability of the softw...
详细信息
As open-ended distributed systems and mobile computing systems have spread widely, the need for software which can adapt itself to the dynamic change of runtime environments increases. We call the ability of the software dynamic adaptability. We designed and implemented a language LEAD that provides an architecture for dynamic adaptability. The basic idea is to introduce the mechanism which changes procedure invocation dynamically according to the stales of runtime environments. Using LEAD, we can easily realize 1) the highly extensible dynamically adaptable applications, and 2) the introduction of the dynamic adaptability into existing applications.
Many-core hardware is targeted specifically at obtaining high performance, but reaching high performance is often challenging because hardware-specific details have to be taken into account. Although there are many pr...
详细信息
Many-core hardware is targeted specifically at obtaining high performance, but reaching high performance is often challenging because hardware-specific details have to be taken into account. Although there are many programming systems that try to alleviate many-core programming, some providing a high-level language, others providing a low-level language for control, none of these systems have a clear and systematic methodology as a foundation. In this article, we propose stepwise-refinement for performance: a novel, clear, and structured methodology for obtaining high performance on many-cores. We present a system that supports this methodology, offers multiple levels of abstraction to provide programmers a trade-off between high-level and low-level programming, and provides programmers detailed performance feedback. We evaluate our methodology with several widely varying compute kernels on two different many-core architectures: a Graphical Processing Unit (GPU) and the Xeon Phi. We show that our methodology gives insight in the performance, and that in almost all cases, we gain a substantial performance improvement using our methodology. Copyright (c) 2015 John Wiley & Sons, Ltd.
Pegasus, a heterogeneous multidatabase management system that responds to the need for effective access and management of shared data across in a wide range of applications, is described. Pegasus provides facilities f...
详细信息
Pegasus, a heterogeneous multidatabase management system that responds to the need for effective access and management of shared data across in a wide range of applications, is described. Pegasus provides facilities for multidatabase applications to access and manipulate multipole autonomous heterogeneous distributed object-oriented relational, and other information systems through a uniform interface. It is a complete data management system that integrates various native and local databases. Pegasus takes advantage of object-oriented data modeling and programming capabilities. It uses both type and function abstractions to deal with mapping and integration problems. Function implementation can be defined in an underlying database language or a programming language. Data abstraction and encapsulation facilities in the Pegasus object model provide an extensible framework for dealing with various kinds of heterogeneities in the traditional database systems and nontraditional data sources
Expressing a cooperative control system requires combining tools from control theory and distributed computation. After reviewing several possible formalisms appropriate for the job, the authors settle on the computat...
详细信息
Expressing a cooperative control system requires combining tools from control theory and distributed computation. After reviewing several possible formalisms appropriate for the job, the authors settle on the computation and control language and illustrate its main features and advantages using a cooperative tracking task. We demonstrate some of the concepts involved in using a multirobot task. We also discuss CCL's ability to be a programming language as well as a modeling tool, which lets us directly simulate or execute CCL models.
Many novel computer architectures like array and multiprocessors which achieve high performance through the use of concurrency exploit variations of the von Neumann model of computation. The effective utilization of t...
详细信息
Many novel computer architectures like array and multiprocessors which achieve high performance through the use of concurrency exploit variations of the von Neumann model of computation. The effective utilization of the machines makes special demands on programmers and their programming languages, such as the structuring of data into vectors or the partitioning of programs into concurrent processes. In comparison, the data flow model of computation demands only that the principle of structured programming be followed. A data flow program, often represented as a data flow graph, is a program that expresses a computation by indicating the data dependencies among operators. A data flow computer is a machine designed to take advantage of concurrency in data flow graphs by executing data independent operations in parallel. In this paper, we discuss the design of a high level language (DFL: D ata F low L anguage) suitable for data flow computers. Some sample procedures in DFL are presented. The implementation aspects have not been discussed in detail since there are no new problems encountered. The language DFL embodies the concepts of functional programming, but in appearance closely resembles Pascal. The language is a better vehicle than the data flow graph for expressing a parallel algorithm. The compiler has been implemented on a DEC 1090 system in Pascal.
暂无评论