Moore's Law will continue to increase the number of transistors on die for a couple of decades, as silicon technology moves from 65nm today to 45nm, 32 nm and 22nm in the future. Since power and thermal constraint...
详细信息
ISBN:
(纸本)1595936025
Moore's Law will continue to increase the number of transistors on die for a couple of decades, as silicon technology moves from 65nm today to 45nm, 32 nm and 22nm in the future. Since power and thermal constraints increase with frequency, multi-core or many-core microprocessors will be the way of the future. In the near future, hardware platforms will have sixteen or more cores on die to achieve more than one Tera Instructions Per second (TIPs) computation power. These cores will communicate each other through an on-die interconnect fabric with more than one TB/s on-die bandwidth and less than 30 cycles latency. Off-die D-cache will employ 3D stacked memory technology to tremendously increase off-die cache/memory bandwidth and reduce the latency. Fast copper flex cables will link CPU-DRAM on socket and optical silicon photonics will provide up to one Tb/s I/O bandwidth between boxes. The hardware system with TIPs of compute power operating on terabytes of data make this a ?tera-scale? platform. What are the software implications with the hardware changes from uniprocessor to tera-scale platform with many cores as "the way of the future?" It will be a great challenge for programming environments to help programmers develop concurrent code for most client software. A good concurrent programming environment should extend existing programming languages that typical programmers are familiar with, and bring benefits for concurrent programming. There are many research topics. Examples topics include flexible parallel programming models based on needs from applications, better synchronization mechanisms such as Transactional Memory to replace simple ?Thread + Lock? structure, nested data parallel language primitives with new protocols, fine-grained synchronization mechanisms with hardware support, maybe fine-grained message passing, advanced compiler optimizations for the threaded code, and software tools in the concurrent programming environment. A more interesting proble
Orléans Skeleton Library (OSL) is a library of parallel algorithmic skeletons in C++ on top of MPI. It provides a structured approach towards parallel programming. Skeletons in OSL are based over the bulk synchro...
详细信息
In this paper we present the Orchid system, a new portable and scalable platform for parallel programming, suitable for any type of distributed memory architecture. It includes C libraries that facilitate dynamic proc...
详细信息
In this paper we present the Orchid system, a new portable and scalable platform for parallel programming, suitable for any type of distributed memory architecture. It includes C libraries that facilitate dynamic process allocation, asynchronous process communication, and global process synchronization. It also integrates a set of flexible mechanisms for the implementation of a wide variety of Distributed Shared Memory (DSM) paradigms. As an example, two different DSM paradigms are proposed. Moreover, a new polyparametric model is suggested, which can be used in the performance evaluation of any DSM paradigm. Orchid has been successfully used for the development of a large scale application, i.e. an environment for parallel logic programming, based on attribute grammars.
Sloop is a parallel language and environment that employs an object-oriented model for explicit parallel programming of MIMD multiprocessors. The Sloop runtime system transforms a network of processors into a virtual ...
详细信息
The CAPSE environment for Computer Aided parallel Software Engineering is intended to assist the developer in the crucial task of parallel programming. The methodology of CAPSE is based on direct manipulative graphica...
详细信息
Block based programming is a cornerstone of computer science education in elementary and middle schools across the country. By providing a visual representation of coding, users without prior knowledge can more easily...
详细信息
A number of interesting models have been proposed and used to support coordination languages and systems. In this introductory paper, we first present a number of important concepts that form a context for classificat...
详细信息
A number of interesting models have been proposed and used to support coordination languages and systems. In this introductory paper, we first present a number of important concepts that form a context for classification and comparison of various coordination models and languages, and their applications. Next, we review three models and their associated languages, representing three different approaches to coordination. We illustrate the application of each model and language by using it to solve the classical dining philosophers problem. This paper ends with an overview of the rest of the papers that appear in this special issue. (C) 1998 Elsevier Science B.V. All rights reserved.
In this paper, we argue that interacting processes (IP) with multiparty interactions are an ideal model for parallel programming. The IP model with multiparty interactions was originally proposed by N. Francez and I. ...
详细信息
The increase demand for processing power has grown over the years, this demand lend to the parallel approach which means linking a bunch of computers together to jointly increase both the speed and efficiency. The par...
详细信息
This paper presents some parallel programming techniques in the intensional functional language ULUcid. Programs in uLucid have a kind of implicit parallelism, context parallelism, when the processes that evaluate ind...
详细信息
暂无评论