共查询到20条相似文献,搜索用时 15 毫秒
1.
Mathias Bourgoin Emmanuel Chailloux Jean-Luc Lamotte 《International journal of parallel programming》2014,42(4):583-600
General purpose (GP)GPU programming demands to couple highly parallel computing units with classic CPUs to obtain a high performance. Heterogenous systems lead to complex designs combining multiple paradigms and programming languages to manage each hardware architecture. In this paper, we present tools to harness GPGPU programming through the high-level OCaml programming language. We describe the SPOC library that allows to handle GPGPU subprograms (kernels) and data transfers between devices. We then present how SPOC expresses GPGPU kernel: through interoperability with common low-level extensions (from Cuda and OpenCL frameworks) but also via an embedded DSL for OCaml. Using simple benchmarks as well as a real world HPC software, we show that SPOC can offer a high performance while efficiently easing development. To allow better abstractions over tasks and data, we introduce some parallel skeletons built upon SPOC as well as composition constructs over those skeletons. 相似文献
2.
成红胜 《数字社区&智能家居》2007,(4):283-283,290
《C语言程序设计》与《数据结构》课程是计算机专业基础课,也是计算机专业的核心课程。根据应用型本科院校的教学目的和要求,分析了这两门课程整合的可能性,对整合的方法和思路以及整合中的实践教学和考试方式等进行探讨。 相似文献
3.
《C程序设计》与《数据结构》课程整合化初探 总被引:1,自引:0,他引:1
成红胜 《数字社区&智能家居》2007,2(7):283
《C语言程序设计》与《数据结构》课程是计算机专业基础课,也是计算机专业的核心课程。根据应用型本科院校的教学目的和要求,分析了这两门课程整合的可能性,对整合的方法和思路以及整合中的实践教学和考试方式等进行探讨。 相似文献
4.
5.
6.
Laurent Baduel Françoise Baude Denis Caromel 《International journal of parallel programming》2007,35(6):573-614
This article presents an object-oriented mechanism to achieve group communication in large scale grids. Group communication
is a crucial feature for high-performance and grid computing. While previous work on collective communications imposed the
use of dedicated interfaces, we propose a scheme where one can initiate group communications using the standard public methods
of the class by instantiating objects through a special object factory. The object factory utilizes casting and introspection
to construct a “parallel processing enhanced” implementation of the object which matches the original class’ interface. This
mechanism is then extended in an evolution of the classical SPMD programming paradigm into the domain of clusters and grids
named “Object-Oriented SPMD”. OOSPMD provides interprocess (inter-object) communications via transparent remote method invocations
rather than custom interfaces. Such typed group communication constitutes a basis for improvement of component models allowing
advanced composition of parallel building blocks. The typed group pattern leads to an interesting, uniform, and complete model
for programming applications intended to be run on clusters and grids. 相似文献
7.
8.
《IEEE transactions on pattern analysis and machine intelligence》1987,(9):1038-1046
Concurrent systems are typically large and complex, requiring long, development time and much labor. They are, therefore, prime candidates for simplification and automation of the design and programming process. Their major application areas include real time systems, operating systems and cooperative computation. New applications are emerging with the trends towards wide usage of personal computers connected in a network and towards use of parallel processing in supercomputer architectures. 相似文献
9.
10.
This paper presents some considerations that affect the realization of a high-level microprogramming language translation system. A major problem discussed is concurrency recognition and microcode optimization for horizontal machines. Several design objectives are also presented that the authors believe defme the nature of a high-level language system for implementing microprograms. 相似文献
11.
In this paper we present our experience in developing an optimizing compiler for general purpose computation on graphics processing units (GPGPU) based on the Cetus compiler framework. The input to our compiler is a naïve GPU kernel procedure, which is functionally correct but without any consideration for performance optimization. Our compiler applies a set of optimization techniques to the naive kernel and generates the optimized GPU kernel. Our compiler supports optimizations for GPU kernels using either global memory or texture memory. The implementation of our compiler is facilitated with a source-to-source compiler infrastructure, Cetus. The code transformation in the Cetus compiler framework is called a pass. We classify all the passes used in our work into two categories: functional passes and optimization passes. The functional passes translate input kernels into desired intermediate representation, which clearly represents memory access patterns and thread configurations. A series of optimization passes improve the performance of the kernels by adapting them to the target GPGPU architecture. Our experiments show that the optimized code achieves very high performance, either superior or very close to highly fine-tuned libraries. 相似文献
12.
分析了本科学历教育阶段,程序设计类计算机基础教育课程当前面临的形势以及应确定教育理论。在此基础上,从教学内容、教学组织形式、考核方法、题库建设等4个方面给出了思考。 相似文献
13.
编程语言类型系统的类型安全性可以保证程序运行时满足基本安全属性,包括控制流安全, 内存安全等.类型化编程语言都需要一个类型检查器来检查程序的良类型性,因此编程语言的具体实现是否能保证类型安全性,还依赖类型检查器的可靠性.本文给出一种类型化汇编语言,然后给出相应的类型检查器,并证明了此类型检查器的可靠性,从而保证经过类型检查的汇编程序的安全性.文本的所有工作,包括类型化汇编语言、类型检查器以及相关定理证明,均已在证明辅助工具Coq中实现.本文方法也可用于证明类型化高级语言的类型检查器的可靠性. 相似文献
14.
简要介绍了Erlang编程语言一些主要特征。该语言的最初目的是进行大型电信交换设备的软件开发,是一种适用于大规模并行处理环境的高可靠性编程语言。随着多核处理器技术的日渐普及,以及互联网、云计算等技术的发展,该语言的应用范围也有逐渐扩大之势。 相似文献
15.
16.
Ian Mackie 《Electronic Notes in Theoretical Computer Science》2005,127(5):133
Interaction nets were introduced almost 15 years ago. Since then they have been put forward as both a graphical programming paradigm and as an intermediate language into which we can compile other languages. Whichever way we use interaction nets, a problem remains in that the language is very primitive. Drawing an analogy with functional programming, we have the λ-calculus but we are missing the functional programming language: syntactic sugar, language constructs, data-structures, etc. The purpose of this paper is to make a first step towards defining such a programming language for interaction nets. 相似文献
17.
高层体系结构HLA是分布式仿真的一种技术框架和集成标准,它提供了一种数据过滤机制来判断每个仿真应用可以产生、发送和接收什么样的信息。这种数据过滤机制可以有效的提高整个仿真系统的可扩展性,它的具体实现就是声明管理和数据分发管理。该文在对HLA中的数据过滤机制深入研究的基础上,详细分析了该机制的基本原理,并通过其典型算法的介绍.阐述了该机制的具体实现方法。 相似文献
18.
高层体系结构HLA是分布式仿真的一种技术框架和集成标准,它提供了一种数据过滤机制来判断每个仿真应用可以产生、发送和接收什么样的信息。这种数据过滤机制可以有效的提高整个仿真系统的可扩展性,它的具体实现就是声明管理和数据分发管理。该文在对HLA中的数据过滤机制深入研究的基础上,详细分析了该机制的基本原理,并通过其典型算法的介绍,阐述了该机制的具体实现方法。 相似文献
19.
由于当前硬件的开发逐日增加,为了充分发挥这些硬件的功能,通过介绍数据流编程语言的应用方式,一同介绍了数据流语言所充分利用的类似流程图的用法.利用智能编译器进行检测程序过程,陈述了与硬件地址相结合的编程方法.这种方法极大地简化了开发人员编写多线程程序的难处,同时能够充分发挥多棱CPU的效率. 相似文献