Skip to content
Free planNo credit card requiredStart writing

Search 250 million research papers

Read the abstract, see who wrote it and who cites it, and get the citation in APA, MLA, Chicago or Harvard.

About 64 papers for “Skeleton (computer programming)”

CodeSkelGen - A Program Skeleton Generator

Ricardo Queirós · DROPS (Schloss Dagstuhl – Leibniz Center for Informatics) · 2013

Existent computer programming training environments help users to learn programming by solving problems from scratch. Nevertheless, initiating the resolution of a program can be frustrating and demotivating if the student does not know where and how to start. Skeleton programming facilitates a top-down design approach, where a partially functional system with complete high-level structures is available, so the student needs only to progressively complete or update the code to meet the requirements of the problem. This paper presents CodeSkelGen - a program skeleton generator. CodeSkelGen generates skeleton or buggy Java programs from a complete annotated program solution provided by the teacher. The annotations are formally described within an annotation type and processed by an annotation processor. This processor is responsible for a set of actions ranging from the creation of dummy methods to the exchange of operator types included in the source code. The generator tool will be included in a learning environment that aims to assist teachers in the creation of programming exercises and to help students in their resolution.

Cited by 0Open access

Skeleton - easy simulation system

T. Yamamiya · 2004

Skeleton is a visual scripting environment as an extension of Squeak etoy with Connectors system to make mathematical and physical simulation for non professional computer user. Squeak etoy system is a unique attempt to provide effective way of programming for children in learning environment. Skeleton makes logical relationships among graphical objects in the etoy system with spreadsheets-style interface, and users can describe object's behavior in declarative representation. Concreteness is one of the key words of end user scripting. Direct manipulation with objects on the screen is helpful to understand what is happened in your computer. Skeleton's spreadsheets style interface realizes this concreteness to show any input and output data same time. Sometime user scripting system like etoy has a problem of modularity. This aspect is important as a basis of reusing, thus Skeleton has some features for reusing. Tree structured naming system like ECMAScipt is used to access to Skeleton object by name. And modularity is realized by sheet-card mechanism that is possible to reuse a behavior of objects in another context in Skeleton.

Cited by 0

Efficient Execution of SkePU Skeleton Programs on the Low-Power Multicore Processor Myriad2

Sebastian Thorarensen, Rosandra Cuello, Christoph Keßler et al. · 2016

SkePU is a state-of-the-art skeleton programming library for high-level portable programming and efficient execution on heterogeneous parallel computer systems, with a publically available implementation for general-purpose multicore CPU and multi-GPU systems. This paper presents the design, implementation and evaluation of a new back-end of the SkePU skeleton programming library for the new low-power multicore processor Myriad2 by Movidius Ltd. This enables seamless code portability of SkePU applications across both HPC and embedded (Myriad2) parallel computing systems, with decent performance, on these architecturally very diverse types of execution platforms.

Cited by 2

Parallel algorithms for the skeleton representation and reconstruction of three-dimensional objects

Heydorn, S., Forschungszentrum Juelich G.m.b.H. (KFA) (Germany). Zentralinstitut fuer Angewandte Mathematik, Technische Hochschule Aachen (Germany) · OpenGrey (Institut de l'Information Scientifique et Technique) · 1993

The aim of the present work was the development of parallel algorithms for the skeleton representation and reconstruction of three-dimensional objects as well as the implementation of the algorithms on different multi-processor systems with corresponding run-time analyses. To this the mathematical fundamentals from the fields topology, geometry and set theory have been established. The algorithms have been implemented with the programming language FORTRAN on the computer CRAY Y-MP8/832 and on the massive parallel system Intel iPSC/860

Cited by 0Open access

SkePU-DNN: Algorithmic Skeleton Programming for Deep Learning on Heterogeneous Systems

Sehrish Qummar, August Ernstsson, Christoph Keßler et al. · 2025

Machine learning is rapidly becoming a common class of application workload for high-performance computer systems. In particular, deep neural networks (DNNs) are a popular approach for machine learning that comes with large computational demands and relies on systems with high computational throughput. Such neural networks are therefore usually implemented in domain-specific programming models and frameworks, where individual components have been hand-tuned for one or several target hardware architectures. In this work, we investigate to which extent the algorithmic skeleton model as implemented in the SkePU framework can accommodate deep neural networks, in particular, convolutional neural networks (CNNs). SkePU is an open-source framework for C++-based, single-source high-level programming of heterogeneous parallel systems. It provides general-purpose algorithmic skeletons such as map, reduce, and stencil, which are customizable by problem-specific code, have multiple backends for multithreaded CPU, GPU and multi-GPU execution, and operate on multidimensional array data-container objects. We extend SkePU with new functionality aimed at improving the interface for computational and data-access patterns seen in CNNs and DNNs, and demonstrate the design and implementation with examples and evaluation. Our experimental evaluation of SkePU-DNN with multiple machines, backends, models and benchmark data sets shows consistent performance behavior and that model accuracy is on-par with that of established domain-specific DNN frameworks.

Cited by 1

Hybrid CPU–GPU execution support in the skeleton programming framework SkePU

Tomas Öhberg, August Ernstsson, Christoph Keßler · The Journal of Supercomputing · 2019

In this paper, we present a hybrid execution backend for the skeleton programming framework SkePU. The backend is capable of automatically dividing the workload and simultaneously executing the computation on a multi-core CPU and any number of accelerators, such as GPUs. We show how to efficiently partition the workload of skeletons such as Map, MapReduce, and Scan to allow hybrid execution on heterogeneous computer systems. We also show a unified way of predicting how the workload should be partitioned based on performance modeling. With experiments on typical skeleton instances, we show the speedup for all skeletons when using the new hybrid backend. We also evaluate the performance on some real-world applications. Finally, we show that the new implementation gives higher and more reliable performance compared to an old hybrid execution implementation based on dynamic scheduling.

Cited by 14Open access

SKELETONS, BSP AND PERFORMANCE PORTABILITY

Andrea Zavanella⋆ · Parallel Processing Letters · 2001

The Skeletal approach to parallel programming conjugates a high-level compositional style and efficiency. A second advantage of Skeletal programming is portability since implementation decisions are usually taken at compile time. The paper claims that an intermediate model embedding the main performance features of the target architecture facilitates performance portability across parallel architectures. This is motivated by describing the Skel-BSP framework which implements a skeleton system on top of a BSP computer. A prototype compiler based on a set of BSP templates is presented together with a set of performance models for each skeleton which allow a local optimization. The paper also introduces a global optimization strategy using a set of transformation rules. This local+global approach seems a viable solution to writing parallel software in machine-independent way (Writing Once and Compiling Everywhere).

Cited by 5

A Graphical User Interface for Composing Parallel Computation in the STAPL Skeleton Library

Malkey, Abby M · OakTrust (Texas A&M University Libraries) · 2018

Parallel programming is a quickly growing field in computer science. It involves splitting the computation among multiple processors to decrease the run time of programs. The computations assigned to a processor can depend on the results of another computation. This dependence in- troduces a partial ordering between tasks that requires coordination of the execution of the tasks assigned to each processor. OpenMP and MPI are current heavily utilized approaches and require the use of low level primitives to express very simple scientific applications. Newer environments, such as STAPL, Charm++, and Chapel, among others, raise the level of abstraction, but the challenge of specifying the flow of data between computations remains. However, graphical user interfaces (GUIs) can simplify this task. The purpose of this project is to create a GUI that al- lows a user to specify a parallel application written in STAPL by composing high-level components and by defining the flow of data between them. The idea is that the user creates the layout of the code using shapes and lines, which produce the composition on an underlying layer, eliminating the need to write complex composition specifications directly in the code.

Cited by 0Open access

A 3D Skeleton Points-Based Hierarchical Body Modeling Approach for Intelligent Online Clothing Fitting Systems

Huaping Zhu, Tao Zhang, Fen Wang · IEEE Access · 2024

The online clothing fitting (OCF) has been a prevalent Internet application. It utilizes multimedia processing algorithms to generate clothing fitting effect images for consumers in virtual way. Existing related works mainly neglected the diverse skeleton structure characteristics of different users, which limits generalization of OCF systems. To handle such challenge, this paper proposes a novel 3D skeleton points-based hierarchical body modeling approach for intelligent OCF systems. Specifically, it focuses on two types of posture features, integrates circumferencial features of body, and distinguishes the trunks and the limbs. Then, a global-local singular value decomposition algorithm is designed to hierarchically control the deformation of 3D skeleton format cooperatively, in order to optimize the fitting results. Finally, we conduct some experimental evaluation through computer programming to verify efficiency of the proposal. The results show that relative tracking error of the new method is reduced by about 10%, and the real-time tracking accuracy between the clothing fitting results and the human body is obviously improved.

Cited by 1Open access

Concepts and Architecture of Vista - a. . .

Stefan Schiffer, Joachim Hans Fröhlich · 1994

This paper describes Vista, a visual multiparadigm programming environment. We introduce the notion of processors and networks and discuss their application in the construction of event-driven and data-transformation systems. Further, we give an overview of Vista's objectoriented architecture. 1 Introduction Within the past few years visual programming (VP) has been increasingly attracting attention, mainly because of its promise to make programming easier, thus allowing laity to encroach on the domain of computer experts to solve problems with the computer. The market has already discovered the fascination of VP, and various new programming environments have been declared to be "visual". A closer look at some of those products (e.g., Visual C++, VisualWorks) shows that they typically consist of browsers for manipulating text, combined with a GUI editor and a rudimentary application skeleton generator. Although some might call such environments visual, that is not what we mean by VP....

Cited by 0

Aesthetic restoration in maxillo-mandibular malformations: the role of genioplasty

Claudio Ungari · Annali di stomatologia · 2015

The experience shows that genioplasty has been successfully introduced in orthognathic surgical therapeutic procedures, for dental-skeleton abnormalities and mandibular asymmetries treatment. In recent years, the evolution of computer systems has allowed an accurate assessment and programming, by means of the three-dimensional display, which are of great help in the course of diagnosis and evaluation of the displacements to be carried out, in order to obtain optimal aesthetic results.

Cited by 5Open access

The Performance of Parallel Algorithmic Skeletons

Deldarie, H., Davy, J., Dew, P et al. · OpenGrey (Institut de l'Information Scientifique et Technique) · 1995

Several authors have proposed the use of algorithmic skeletons as a highlevel, machine-independent means of developing parallel programs. This paper addresses the question of modelling the performance of such skeletons. The execution time for a skeleton is presented as a generic higher order complexity function. Instantiation of the skeletion with a specific set of functional parameters enables the time complexity of the particular application to be derived. The approach is illustrated by examples based on existing special purpose languages for image processing, and is extended to analyse the scalability of skeleton-based applications, using isoefficiency functions. 1. Introduction Parallel programming is widely regarded as a complex, machine-dependent and timeconsuming task. This perceived difficulty has hindered the more widespread use of parallel computer systems. Several high-level parallel programming approaches have arisen to meet this challenge, such as [1, 2]. These abstract f...

Cited by 0

Auto-tuning Hybrid CPU-GPU Execution of Algorithmic Skeletons in SkePU

Tomas Öhberg · KTH Publication Database DiVA (KTH Royal Institute of Technology) · 2018

The trend in computer architectures has for several years been heterogeneous systems consisting of a regular CPU and at least one additional, specialized processing unit, such as a GPU.The different characteristics of the processing units and the requirement of multiple tools and programming languages makes programming of such systems a challenging task. Although there exist tools for programming each processing unit, utilizing the full potential of a heterogeneous computer still requires specialized implementations involving multiple frameworks and hand-tuning of parameters.To fully exploit the performance of heterogeneous systems for a single computation, hybrid execution is needed, i.e. execution where the workload is distributed between multiple, heterogeneous processing units, working simultaneously on the computation. This thesis presents the implementation of a new hybrid execution backend in the algorithmic skeleton framework SkePU. The skeleton framework already gives programmers a user-friendly interface to algorithmic templates, executable on different hardware using OpenMP, CUDA and OpenCL. With this extension it is now also possible to divide the computational work of the skeletons between multiple processing units, such as between a CPU and a GPU. The results show an improvement in execution time with the hybrid execution implementation for all skeletons in SkePU. It is also shown that the new implementation results in a lower and more predictable execution time compared to a dynamic scheduling approach based on an earlier implementation of hybrid execution in SkePU.

Cited by 5Open access

The System for Business Automation (SBA)

Moshé M. Zloof, S. Peter de Jong · ACM SIGPLAN Notices · 1976

The System for Business Automation (SBA) is a system within which application experts—non-programmers—can describe and execute their applications on a computer. This paper describes the programming language part of the system. This language is a superset of Zloof's Query-by-Example. In Query-by-Example the user retains the perception of manual table manipulation by programming within two-dimensional skeleton tables displayed on the screen. In SBA the user programs within skeletons of more general business entities such as tables, forms, charts, etc. Within these displays the user programs his application as a series of Query-by-Example operations. This system can also run in a part manual, part automated manner, thus permitting fast initial use of the computer together with gradual automation of the business.

Cited by 1Open access

A Back-End for the SkePU Skeleton Programming Library targeting the Low-Power Multicore Vision Processor Myriad 2

Sebastian Thorarensen · KTH Publication Database DiVA (KTH Royal Institute of Technology) · 2016

The SkePU skeleton programming library utilises algorithmic skeletons to offer a high-level approach for creating parallel applications. By using different back-ends, SkePU applications can run on multicore systems, GPGPU systems, and computer clusters. Myriad 2 is a low-power multicore vision processor for embedded systems, capable of running parallel applications energy-efficiently. Myriad 2 is heterogeneous, containing two different processor architectures and memories with different characteristics. In this thesis, we implement a back-end for SkePU, that allows SkePU applications to run on Myriad 2. We describe how the back-end is designed and evaluate the performance of SkePU applications running on Myriad 2. By conducting a series of benchmarks, we show that our back-end achieves enough performance to make SkePU a useful tool for creating applications for Myriad 2. We also show that SkePU applications can run more energy-efficiently on Myriad 2, compared to a GPGPU system.

Cited by 3Open access

Parallelizing the LM OSEM Image Reconstruction on Multi-Core Clusters

Philipp Ciechanowicz, Philipp Kegel, Maraike Schellmann et al. · Advances in parallel computing · 2010

In this paper we present four different parallel implementations of the popular LM OSEM medical image reconstruction algorithm. While two of them use libraries such as MPI, OpenMP, or Threading Building Blocks (TBB) directly, the other two implementations use algorithmic skeletons of the Münster Skeleton Library Muesli to hide the parallelism. We compare the implementations w.r.t. runtime, efficiency, and programming style and show the resulting benchmarks which have been conducted on a multi-processor, multi-core cluster computer.

Cited by 2

A new paradigm for programming competitions

James F. Bowring · 2008

The annual ACM International Collegiate Programming Contest produces a competitive paradigm that is at odds with the pedagogical goals of modern computer science and software engineering degree programs. This paradigm stresses the fast completion of a programming task and evaluates the results solely with black-box testing specified by the judges. In contrast, the pedagogical goals of contemporary college degree programs in computing emphasize the quality of processes inherent in software development and implementation. In 2007, the College of Charleston student chapter of the ACM hosted its annual high school programming competition by turning the conventional programming paradigm on its head to focus on quality-of-process rather than time-to-complete. The judging criteria included both technical and artistic merit. The implementation of the competition emphasized success by giving students working skeleton solution programs. This paper presents the motivation for the new paradigm, the details of its implementation for the 2007 competition, and the details of the new techniques for judging technical and artistic merit.

Cited by 21

F.: A New Paradigm for Programming Competitions

James F. Bowring · 2008

The annual ACM International Collegiate Programming Con-test produces a competitive paradigm that is at odds with the pedagogical goals of modern computer science and soft-ware engineering degree programs. This paradigm stresses the fast completion of a programming task and evaluates the results solely with black-box testing specified by the judges. In contrast, the pedagogical goals of contemporary college degree programs in computing emphasize the quality of pro-cesses inherent in software development and implementa-tion. In 2007, the College of Charleston student chapter of the ACM hosted its annual high school programming com-petition by turning the conventional programming paradigm on its head to focus on quality-of-process rather than time-to-complete. The judging criteria included both technical and artistic merit. The implementation of the competition emphasized success by giving students working skeleton so-lution programs. This paper presents the motivation for the new paradigm, the details of its implementation for the 2007 competition, and the details of the new techniques for judging technical and artistic merit.

Cited by 0

An Ideal Model for an Extended Lambda-Calculus with Refinement

Levy, J., Agusti, J., Esteva, F et al. · OpenGrey (Institut de l'Information Scientifique et Technique) · 1991

In Computer Science, Lambda Calculus has been mainly used as the skeleton of functional programming languages. It has also been used as a higher order parameterization mechanism in some specification languages. In this paper we view -calculus as both the applicative structure of a programming formalism and a low-level specification formalism. Considered as a programming formalism, its operational semantics is the usual one, mainly based on fi-reduction. Considered as a specification formalism -calculus admits a precise notion of refinement between -expressions. This refinement relation will stand for the correctness of a step in the incremental development of a program from a specification. The main goal of this paper is to show that -calculus, extended with some set operators, can be interpreted as a specification formalism in a domain whose elements are a particular class of posets (partial ordered sets), the closed ideals. The main reason of such interpretation is that it allows to...

Cited by 1