The widespread applications of the wireless Internet of Things (IoT) is one of the leading factors in the emerging of Big Data. Huge amounts of data need to be transferred and processed. The bandwidth and latency of d...
详细信息
The widespread applications of the wireless Internet of Things (IoT) is one of the leading factors in the emerging of Big Data. Huge amounts of data need to be transferred and processed. The bandwidth and latency of data transfers have posed a new challenge for traditional computing systems. Under Big Data application scenarios, the movement of large scales of data would influence performance, power efficiency, and reliability, which are the three fundamental attributes of a computing system. Thus, changes in the computing paradigm are demanding. Processing-in- Memory (PIM), aiming at placing computation as close as possible to memory, has become of great interest to academia as well as industries. In this work, we propose a programming paradigm for PIM architecture that is suitable for wireless IoT applications. A data-transferring mechanism and middleware architecture are presented. We present our methods and experiences on simulation-platform design, as well as FPGA demo design, for PIM architecture. Typical applications in IoT, such as multimedia and MapReduce programs, are used as demonstration of our method's validity and efficiency. The programs could successfully run on the simulation platform built based on Gem5 and on the FPGA demo. Results show that our method could largely reduce power consumption and execution time for those programs, which is very beneficial in IoT applications.
The Compute Aggregate model used to model Map Reduce does not allow for dynamic node reordering once a job has started, assumes homogenous nodes and a balanced tree layout. We introduce heterogeneous nodes into the tr...
详细信息
ISBN:
(纸本)9789811041549;9789811041532
The Compute Aggregate model used to model Map Reduce does not allow for dynamic node reordering once a job has started, assumes homogenous nodes and a balanced tree layout. We introduce heterogeneous nodes into the tree structure, thereby causing unbalanced trees. Finally, we present a new programming abstraction to allow for dynamic tree balancing.
In this article, we give an overview of the answer set programming paradigm, explain its strengths, and illustrate its main features in terms of examples and an application problem.
In this article, we give an overview of the answer set programming paradigm, explain its strengths, and illustrate its main features in terms of examples and an application problem.
This papers targeted scientists and programmers who need to easily develop and run e-science applications on large scale distributed systems. We present a rich programming paradigm and environment used to develop and ...
详细信息
ISBN:
(纸本)9781479980062
This papers targeted scientists and programmers who need to easily develop and run e-science applications on large scale distributed systems. We present a rich programming paradigm and environment used to develop and deploy high performance applications (HPC) on large scale distributed and heterogeneous platforms. We particularly target iterative e-science applications where (i) convergence conditions and number of jobs are not known in advance, (ii) jobs are created on the fly and (iii) jobs could be persistent. We propose two programming paradigms so as to provide intuitive statements enabling an easy writing of HPC e-science applications. Non-expert developers (scientific researchers) can use them to guarantee fast development and efficient deployment of their applications.
An introductory CS1 course at universities has to meet different requirements. In addition to computational thinking, students have to learn a programming language and its underlying concepts. Furthermore, they should...
详细信息
ISBN:
(纸本)9781450399562
An introductory CS1 course at universities has to meet different requirements. In addition to computational thinking, students have to learn a programming language and its underlying concepts. Furthermore, they should be educated in different paradigms such as procedural, object-oriented, and functional programming. Industrial-strength languages are optimized towards the requirements of professional software developers and tend to offer an overwhelming and complex set of language constructs. Using such a language in a CS1 course, students find themselves mainly struggling with learning the language, being primarily exposed to simple programs for demonstrating its constructs. In contrast, MuLE is an educational language that supports multiple paradigms with a small set of carefully designed constructs. Using MuLE, beginners may develop programming skills more easily, while they still learn underlying concepts systematically that may be transferred to other languages in their further education.
As the demand for computing power continues to rise, it is difficult for a single type of computing device or architecture to satisfy the current situation. Diversity and heterogeneity are becoming more and more popul...
详细信息
As the demand for computing power continues to rise, it is difficult for a single type of computing device or architecture to satisfy the current situation. Diversity and heterogeneity are becoming more and more popular. Seamlessly integrating the realms of high performance computing and quantum computing, and harnessing their collective potential, has emerged as a consensus approach to effectively address the pressing need for increased computing power. In the emerging computing scenario, various different types of computing devices have super-heterogeneous characteristics, and there are significant differences in computational principles, programming models, parallelism, etc. Effectively harnessing these disparate resources and achieving a unified programming paradigm have become urgent imperatives. To address the above problems, this paper introduces QCCP, a taskflow programming model that enables efficient collaborative computing between classical computers and quantum computers. QCCP establishes a unified programming abstraction, shields the super-heterogeneous characteristics of the underlying network and hardware, and supports flexible scheduling for different computational backends. The experimental results indicate that QCCP can support the processing of hybrid classical-quantum applications with diverse program structures. In particular, QCCP reveals its immense potential and superiority in tackling real-world challenges, specifically in the realm of quantum circuit cutting and reconstruction.
This article investigates why aspect-oriented programming, once celebrated as a revolutionary programming paradigm, lost its traction. We examine its early achievements, the technical obstacles it faced, and the core ...
详细信息
This article investigates why aspect-oriented programming, once celebrated as a revolutionary programming paradigm, lost its traction. We examine its early achievements, the technical obstacles it faced, and the core reasons it fell short of mainstream adoption.
Trigger-action programming (TAP) platforms allow users to personalize their digital ecosystems through the definition of trigger-action rules such as "if I'm leaving home, then turn the smart thermostat off.&...
详细信息
Trigger-action programming (TAP) platforms allow users to personalize their digital ecosystems through the definition of trigger-action rules such as "if I'm leaving home, then turn the smart thermostat off." Yet, little is known about whether such a paradigm can be used to support users' wellbeing. To bridge this gap, we scraped 6590 trigger-action programs from iOS shortcuts, and analyzed the dataset to understand what aspects of their wellbeing users are already programming and what opportunities remain untapped. Findings show that users are only capturing a fraction of this opportunity, with a majority of wellbeing-related programs targeting health and physical exercise. To shed light on an underexploited use case, we showcase two interventions for digital self-control developed through iOS shortcuts, highlighting challenges and opportunities to use TAP as a viable option to improve existing digital habits and self-regulate technology use, thus mitigating the negative effects of excessive digital engagement.
From the Cradle of Computer Graphics at the University of Utah to Pixar Animation Studios, my 50+ year professional career has been a parabola of many groundbreaking projects, as well as startup companies-some that ha...
详细信息
From the Cradle of Computer Graphics at the University of Utah to Pixar Animation Studios, my 50+ year professional career has been a parabola of many groundbreaking projects, as well as startup companies-some that have become household names, including Br empty set derbund Software, Gracenote/SONY, and others. It has been an exciting and rewarding journey not only because of the bleeding edge technology and innovative products I worked on, but also due to the privilege of working with, managing, and leading people in these companies. I reflect on part of this journey in this article and my book "Managing The Unmanageable".
Nowadays, most programming languages support multiple programming paradigms, enabling the choices between them for different application scenarios and even using them together, for example, object-oriented programming...
详细信息
ISBN:
(纸本)9786269689026
Nowadays, most programming languages support multiple programming paradigms, enabling the choices between them for different application scenarios and even using them together, for example, object-oriented programming for system modeling, event-driven programming for graphical user interface, and functional programming for wrapping actions. However, learning different programming paradigms is quite difficult, especially when they are given as a whole. Recursion is a typical example since it originated in functional programming but was also included in most structured programming languages. As Dijkstra pointed out, learners who are familiar with structured programming tend to think about the control flow of recursion and get confused by how the recursion can be implemented. To address this issue, we developed a methodology along with system software to help novices think of recursive solutions from the definition rather than the implementation.
暂无评论