Geometry.Net - the online learning center
Home  - Basic_C - Cilk Programming
e99.com Bookstore
  
Images 
Newsgroups
Page 4     61-80 of 80    Back | 1  | 2  | 3  | 4 
A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z  

61. Bradley C. Kuszmaul
chess programs (StarTech and *Socrates.) I participated at MIT in the cilk developmentproject, which provides an algorithmic multithreaded programming system.
http://bradley.lcs.mit.edu/~bradley/
Bradley C. Kuszmaul
I am a Research Scientist at in the Supercomputing Technologies Group at the MIT Laboratory for Computer Science. Before that I was Akamai Technologies . I am also affiliated with the the Computer Architecture and Engineering Group at the Yale University Department of Computer Science and the Yale University Department of Electrical Engineering (Note: Many of the following links are not yet working, as I have not transfered them all form Yale yet.) My research applies algorithm design to solve systems problems in high-performance computing. I was one of the principal architects of the Connection Machine CM-5, and am the co-author of two world-class computer chess programs (StarTech and *Socrates .) I participated at MIT in the Cilk development project, which provides an algorithmic multithreaded programming system. As an assistant professor at Yale I worked on the Ultrascalar Project , in which we improved the theoretical bounds for how fast a superscalar processor's clock can run, as a function of the window size or the issue width. We also had an 8-issue out-of-order processor fabricated in a 0.18 micron copper/low-K VLSI process. Recently we have been working on developing the mechanisms for a speculative dataflow processor.
Teaching:

62. ICFP Functional Programming Contest -- The Winners
We have no hesitation in recommending cilk as the programming language of choicefor discriminating hackers, especially if your application needs support for
http://www.ai.mit.edu/extra/icfp-contest/winners.html
The winners
First Prize
First prize went to the MIT Cilk Pousse team, whose entry crushed all opponents in its path, not losing a single game in the finals. The Cilk Pousse team has the following members:
Reid Barton Chris Joerg Dan Adkins Martin Rinard Harald Prokop Don Dailey Matteo Frigo Charles Leiserson The judges felt the Cilk team made such a strong showing for several reasons:
  • Expertise: The Cilk project has a lot of experience in game tournaments, having competed strongly in chess tournaments before.
  • Parallelism: Cilk is a language designed for parallelism, and was able to exploit the tournament machine's four processors quite efficiently. The Cilk entry was the only entry that employed a really sophisticated parallel search algorithm. What the Cilk Pousse team delivered was a brutal search engine, that pumped out immense numbers of moves per second, similar to the strategies that produce championship chess programs.
  • Organisation: At eight people, the Cilk Pousse team was the largest single team to enter, being comprised of two professors, one research engineer, one sysadmin, and four students (some graduate, some undergraduate, and even one local high-school student).
  • ...and of course, general excellence and superior hacking.

63. I Am Pleased To Announce The Availability Of Cilk-5.3.2. Cilk Is A
I am pleased to announce the availability of cilk5.3.2. cilk is a language for multithreadedparallel programming based on ANSI C. cilk is designed for general
http://cvs.sourceforge.net/viewcvs.py/cilk/cilk/ANNOUNCE?rev=1.3

64. I Am Pleased To Announce The Availability Of Cilk-5.3.1. Cilk Is A
I am pleased to announce the availability of cilk5.3.1. cilk is a language for multithreadedparallel programming based on ANSI C. cilk is designed for general
http://cvs.sourceforge.net/viewcvs.py/cilk/cilk/ANNOUNCE?rev=1.2

65. From Mharder@lcs.mit.edu Sun Oct 21 025138 2001 Date Sun, 21
paper describes a tool, called the Nondeterminator, for dynamically detecting determinacyraces in programs written in the cilk parallel programming language.
http://pag.lcs.mit.edu/6.893/critiques/20011022
From mharder@lcs.mit.edu Sun Oct 21 02:51:38 2001 Date: Sun, 21 Oct 2001 02:51:37 -0400 (EDT) From: Michael Harder To: Michael Ernst

66. Cilk Papers
Notice that if you elide the three cilk keywords (shown in red, you obtainaC program, called the serial elision or C elision of the cilk program.
http://supertech.lcs.mit.edu/cilk/home/intro.html
The Cilk Project Download Introduction Online Manual ... Papers
Introduction
Cilk is an algorithmic multithreaded language. The philosophy behind Cilk is that a programmer should concentrate on structuring the program to expose parallelism and exploit locality, leaving Cilk's runtime system with the responsibility of scheduling the computation to run efficiently on a given platform. Thus, the Cilk runtime system takes care of details like load balancing, paging, and communication protocols. Unlike other multithreaded languages, however, Cilk is algorithmic in that the runtime system guarantees efficient and predictable performance. To give you an idea of how simple it is to write parallel programs in Cilk, here is a Cilk implementation of the familiar recursive Fibonacci program in which the recursive calls are executed in parallel: cilk spawn fib (n-1); y = spawn fib (n-2); sync Notice that if you elide the three Cilk keywords (shown in red , you obtain a C program, called the serial elision or C elision of the Cilk program. Cilk is a

67. Citations Detecting Data Races In Cilk Programs That Use Locks
Stark. Detecting data races in cilk programs that use locks. In Stark.Detecting data races in cilk programs that use locks. In
http://citeseer.ist.psu.edu/context/326752/0

68. Keith Randall
The cilk compiler and runtime system cooperate to automatically schedulea cilk program efficiently on a parallel machine. cilk s
http://www.cs.ucsb.edu/research/colloquia/abstracts/randall98.shtml
UNIVERSITY OF CALIFORNIA SANTA BARBARA COMPUTER SCIENCE PROGRAMS ... FAQ
The Cilk Language
Keith Randall
MIT
April 21, 1998: (Tuesday, 2:00 pm, Eng. I, lst Floor Conference Room)
Multiprocessor shared-memory machines (SMP's) are rapidly becoming commodity items in the computer industry. Despite the prevalence of such machines, exploiting their computing power remains difficult because programming environments are cumbersome or inefficient. A language called Cilk is proposed to overcome these difficulties. Cilk is a language that is convenient to program and provides good performance on these machines. Cilk is a simple extension to C which provides constructs for easily expressing parallelism in a computation. The Cilk compiler and runtime system cooperate to automatically schedule a Cilk program efficiently on a parallel machine. Cilk's scheduler obtains good speedup on applications with sufficient parallelism and imposes little overhead relative to the equivalent serial program. I will describe our implementation of Cilk on SMP's, and outline the principles and mechanisms used to achieve the above results.

69. Tasks As Objects
cilk !Blumofe95! is a Cbased multithreaded parallel programmingsystem. A cilk programs is composed of threads, which the run
http://charm.cs.uiuc.edu/papers/RobertThesis.www/node14.html
Next: Data as Objects Up: Related Work Previous: Process Scheduling and Migration Contents
Tasks as Objects
Several distributed multi-threaded systems allow objects or threads representing tasks to migrate to different address spaces of a distributed-memory machine. Although not all of these systems are based on traditional object-oriented languages such as C++, the tasks in these systems are related to objects in that they have private state ( e.g. a thread stack) and code. UPVM [#!Konuru:1997:MUL!#] presents a lightweight process model with a PVM-like message-passing library, which supports thread migration independent of an object-oriented framework. PM2 [#!PM2-96!#] is another migratable-thread system, which treats threads as remote procedure calls, that return some data on completion. These systems simplify the migration of threads by reserving thread stack space in the virtual memory space of every processor, so that pointers to stack items remain valid after migration. An early object-based parallel programming system is Sloop [#!Lucco87!#]. Sloop distributed objects are collections of component objects, managed by system-defined container types called domains . Applications can use a variety of alignment calls to advise the run-time system on object placement, but the run-time system has the freedom to redistribute objects. Object interactions are monitored so that the run-time system can relocate objects to improve locality. Although a simple load balancing system is mentioned, no detailed description is provided.

70. FAQTs - Knowledge Base - Faqts : Computers : Programming : Languages : Cilk
My Recent Searches All of FAQTs, FAQTs repaired updated! Thanksfor your patience
http://www.faqts.com/knowledge_base/index.phtml/fid/1408
Home My Faqts Contributors About ... Languages : Cilk My Recent Searches All of FAQTs faqts Knowledge Base Cilk Folder
Thanks for your patience... Folders Add Folder Alert Manage Folder Manage Links
    There are no folders in this category
Questions Share Your Knowledge Ask a Question
    There are no questions in this folder.
    Its subfolders may contain questions.

Unanswered Questions
    There are no unanswered questions in this folder.
    Its subfolders may contain unanswered questions.

Synop Pty Ltd

71. OpenMP
cilk manual Portable HP programs M. Frigo Cache Oblivious Algorithms H. Prokop Thesenotes contain two lectures that teach multithreaded algorithms using a cilk
http://nereida.deioc.ull.es/html/openmpindex.html
Shared Memory and OpenMP
Institutions
OpenMP Consortium

cOMPunity
The OpenMP Community
UK OpenMP web site

OpenMP Simple, Portable, Scalable SMP Programming
Specifications
OpenMP C API summary

The OpenMP C Specification (postscript format, local, beowulf)

OpenMP Specifications Draft C/C++ 2.0
(November 2001)
The OpenMP Fortran Specification (postscript format)

The OpenMP FORTRAN Specification (html format, local)
Odin OpenMP
Odin OpenMP
How to use Odin OpenMP in the Linux ULPGC GAC multiprocessor How to use Odin OpenMP in the Digital alpha Server at CCTI How to use Odin OpenMP in the linux9-pr machine at San Luis Omni OpenMP Omni: Local pages at nereida A local copy of Omni-1.3 is available click! StackThreads/MP ps local copy of the StackThreads/MP man Sato, Satoh, Kusano and Tanaka Design of an OpenMP compiler for an SMP Cluster Tanaka, Taura, Sato, and Yonezawa. Performance Evaluation of OpenMP Applications with Nested Parallelism LCR 2000. Omni: RWCP OpenMP Japanese Compiler Project. Local Omni/ST Nested Irregular Parallelism Omni/ST: StackThreads/MP Nested Irregular Parallelism Conferences First European Workshop on OpenMP -EWOP'99 cOMPunity list of events.

72. DBLP: Charles E. Leiserson
Theory Comput. Syst. 31(2) 135167 (1998). 1997. 41, Charles E. LeisersonProgramming Irregular Parallel Applications in cilk. IRREGULAR 1997 61-71.
http://www.informatik.uni-trier.de/~ley/db/indices/a-tree/l/Leiserson:Charles_E=
Charles E. Leiserson
List of publications from the DBLP Bibliography Server FAQ Coauthor Index - Ask others: ACM DL ACM Guide CiteSeer CSB ... EE Charles E. Leiserson: Cache-Oblivious Algorithms. CIAC 2003 Thomas H. Cormen , Charles E. Leiserson, Ronald L. Rivest Clifford Stein : Introduction to Algorithms, Second Edition The MIT Press and McGraw-Hill Book Company 2001 EE Ching Law , Charles E. Leiserson: A New Competitive Analysis of Randomized Caching. ISAAC 2000 EE Matteo Frigo , Charles E. Leiserson, Harald Prokop Sridhar Ramachandran : Cache-Oblivious Algorithms. FOCS 1999 EE Charles E. Leiserson: Design and Analysis of Algorithms for Shared-Memory Multiprocessors (Abstract). WADS 1999 EE Robert D. Blumofe , Charles E. Leiserson: Scheduling Multithreaded Computations by Work Stealing. J. ACM 46 EE Mingdong Feng , Charles E. Leiserson: Efficient Detection of Determinacy Races in Cilk Programs. Theory Comput. Syst. 32 Matteo Frigo , Charles E. Leiserson, Keith H. Randall : The Implementation of the Cilk-5 Multithreaded Language. PLDI 1998 EE Guang-Ien Cheng Mingdong Feng , Charles E. Leiserson

73. DBLP: Mingdong Feng
1999. 3, EE, Mingdong Feng, Charles E. Leiserson Efficient Detection of DeterminacyRaces in cilk Programs. Theory Comput. Syst. 32(3) 301326 (1999). 1998.
http://www.informatik.uni-trier.de/~ley/db/indices/a-tree/f/Feng:Mingdong.html
Mingdong Feng
List of publications from the DBLP Bibliography Server FAQ Coauthor Index - Ask others: ACM DL ACM Guide CiteSeer CSB ... EE Mingdong Feng, Charles E. Leiserson : Efficient Detection of Determinacy Races in Cilk Programs. Theory Comput. Syst. 32 EE Guang-Ien Cheng , Mingdong Feng, Charles E. Leiserson Keith H. Randall Andrew F. Stark : Detecting Data Rase in Cilk Programs That use Locks. SPAA 1998 EE Mingdong Feng, Charles E. Leiserson : Efficient Detection of Determinacy Races in Cilk Programs. SPAA 1997
Coauthor Index
Guang-Ien Cheng Charles E. Leiserson Keith H. Randall Andrew F. Stark DBLP: [ Home Author Title Conferences ... Michael Ley (ley@uni-trier.de) Mon Jun 7 17:01:35 2004

74. Beowulf
certain pieces of code. 8 cilk. cilk a package that contains the cilkprogramming language which is a C extension. Simple commands like
http://www.symbio.jst.go.jp/~tino/Html/beowulf.html
Low cost Supercomputing
1 Beowulf
Beowulf was the legendary sixth-century hero from a distant realm who freed the Danes of Heorot by destroying the oppressive monster Grendel. As a metaphor, ``Beowulf'' has been applied to a new strategy in high performance computing that exploits mass-market technologies to overcome the oppressive costs in time and money of super-computing [
2 Ingredients for Beowulf
2.1 Hardware
Beowulf consists of a set of N Using a combination of switches, much larger configurations can be achieved on the order of a thousand nodes by connecting several routers in a tree structure. The total latency increase of such a big system is of less than a factor three.
2.2 Software
The most popular operating system on Beowulfs is Linux. A specific package based on Redhat called Extreme Linux is often used. A parallel software package is needed to use a Beowulf effectively. Examples are PVM (parallel virtual machine), MPI (message passing for interprocessor communication). Sterling et. al. [ ] use MPI. Since many groups already use a Beowulf new software appears, an example is CILK.

75. Analysis And Optimization Of Divide And Conquer Programs
Presents a symbolic analysis that characterizes the regions of memoryaccessed by procedures in multithreaded cilk programs. In
http://www.cag.lcs.mit.edu/~rinard/paper/analysisAndOptimizationOfDivideAndConqu
Analysis and Optimization of Divide and Conquer Programs
  • Design-Driven Compilation
    Radu Rugina and Martin C. Rinard
    Proceedings of the International Conference on Compiler Construction
    Genova, Italy April 2001
    The full version of this paper is available.

    Presents an approach in which the programmer provides additional information to guide the analysis of the program and applies this approach to divide and conquer programs. The programmer provides points-to and symbolic accessed region information at procedure boundaries. The analysis verifies that the information is correct and uses the information to automatically parallelize the program. This approach offers a range of benefits, including guaranteed fidelity to the programmer's expectations of the code, early and automatic detection of bugs, and support for local analysis, separate compilation, and libraries. It can also simplify the compiler and improve its efficiency.
  • Recursion Unrolling for Divide and Conquer Programs
    Radu Rugina and Martin Rinard
    Languages and Compilers for Parallel Computing, Thirteenth International Workshop

76. Testing
1406 GuangIen Cheng, Mingdong Feng, Charles E. Leiserson, Keith H. Randall, andAndrew F. Stark Detecting Data Races in cilk Programs that Uses Locks In the
http://user.it.uu.se/~hessel/testing/
Graduate Reading Course on Software Testing
Contact
For questions, please contact Anders Hessel Paul Pettersson , or Bengt Jonsson
hessel
paupet bengt
Schedule
(Subject to change). Thursday Introduction and Basic concepts (to the meeting) Wednesday Test case generation (to the meeting) Thursday Data Flow Analysis (to the meeting) Thursday Object-Oriented Testing (to the meeting) Monday Joint venture with VnV at Scientific Computing (to the meeting) Thursday Test Oracles (to the meeting) Monday Seminar by Yves Ledru info here Thursday Regression Testing (to the meeting) Thursday FME02 papers (to the meeting) Thursday Timing (to the meeting) Thursday Testing timed automata (to the meeting) Wednesday Distributed systems / Race Conditions (to the meeting) Thursday Model generation (to the meeting) Friday Testing of configurable systems, Mats Grindal (ENEA) (to the meeting) Thursday Software testing in a small company environment, Carl Ericksson (to the meeting)
Meetings
Articles should have been read before the meeting, the articles are listed in decreasing importance.
Meetings will be held weekly, at 10.15 -12.00, preferable in room 1406.

77. FDA125
MPIForum; cilk; Sergei Gorlatch s excellent tutorial on Parallel programmingwith skeletons, 1999. (temporary access only); Bacci, Gorlatch
http://www.ida.liu.se/~chrke/courses/APP/

Advanced Parallel Programming: Models, Languages, Algorithms (5p)
Recommended for
Graduate (CUGS, ECSEL, ...) students interested in the areas of parallel computer architecture, parallel programming, compiler construction, or algorithms and complexity.
The course is hosted by CUGS as an Advanced Course.
Interested undergraduate students are also welcome.
Registration / List of participants (internal access only)
Organization
Lectures (ca. 32h), programming exercises, optional theoretical exercises for self-assessment.
The course will be held as block course with two intensive weeks in Linköping. The course was last given
This is a new course. It complements the existing graduate course FDA101 on Parallel Programming (4p), which is aliased to the undergraduate course TDDB78. Goals
The course emphasizes fundamental aspects of parallel programming such as parallel architectures and programming models, performance models, parallel complexity classes, parallel algorithmic paradigms, parallelization strategies, and the design and implementation of parallel programming languages. Practical exercises help to apply the theoretical concepts of the course to solve concrete problems in different parallel programming models. Prerequisites
Data structures and algorithms (e.g. TDDB57) are absolutely required; knowledge in complexity theory and compiler construction is useful. Processprogramming (e.g. TDDB63/68/72) and Parallel Programming (e.g. TDDB78 or TANA77) are useful but not required. Most of the contents of FDA101, i.e. TDDB78, will be summarized during this course. Programming in C is necessary for the practical exercises.

78. References:
Stark. Detecting data races in cilk programs that use locks. In Proceedingsof the Tenth Annual ACM Symposium on Parallel Algorithms.
http://dsl.cs.technion.ac.il/projects/multirace/references.htm
References: [1] S. V. Adve and M. D. Hill. Weak ordering—a new definition. In Proceedings of the 17th Annual International Symposium on Computer Architecture , pages 2–14, May 1990. [2] S. V. Adve and M. D. Hill. A unified formalization of four shared-memory models. Technical report, University of Wisconsin , Sept. 1992. [3] S. V. Adve , M. D. Hill, B. P. Miller, and R. H. B. Netzer Detecting data races on weak memory systems. In Proceedings of the 18th Annual International Symposium on Computer Architecture (ISCA’91) , pages 234–243, May 1991. [4] D. Bailey, J. Barton, T. Lasinski , and H. Simon. The NAS parallel benchmark. Technical report, NASA Ames , Aug. 1991. [5] V. Balasundaram and K. Kennedy. Compile-time detection of race conditions in a parallel program. In Proceedings of the 3rd International Conference on Supercomputing , pages 175–185, June 1989. [6] T. Brecht and H. Sandhu The Region Trap Library: Handling traps on application-defined regions of memory. In USENIX Annual Technical Conference, Monterey CA , June 1999. [7] G. Cheng, M.

79. Introduction
cilk is a multithreaded language developed at MIT. It is built on top of C. Ithas been used to write the *Socrates chess program, which placed 2nd in the
http://http.cs.berkeley.edu/~dgay/cs267/assignment1.html
Introduction
My interest in parallel programming stems from my interest in programming languages. For this assignment I have thus chosen to look at both a parallel programming language and an application developed with it. My comments will address not only the application, but also the language. Cilk is a multi-threaded language developed at MIT. It is built on top of C. It has been used to write the *Socrates chess program, which placed 2nd in the 1995 ICCA 8th World Computer Chess Championship . Its latest incarnation, Cilkchess, won the Dutch Open Computer Chess Championship in November 1996.
Description
The Cilk language [2] essentially provides low-overhead threads, and one synchronization mechanism: waiting for all threads spawned in this procedure to terminate. Version 4.0 of Cilk is targeted at SMPs (earlier versions also ran on distributed memory machines). The *Socrates [1] program plays chess, which should need no further explanation ;-) It employs a parallel search called "Jamboree Search", based on the usual alpha-beta search technique used in chess. The basic idea is to quickly test all moves possible from a given position in parallel, and then evaluate those which were not eliminated by this quick test more fully, but sequentially (but probably in parallel with similar full searches from other positions). This yields average levels of parallelism above 1000.
Assessment
The strengths of Cilk are:
- The chess search problem seems easy to express: threads are spawned to explore each move. Other search problems are probably also a good match for Cilk. It is however worth noting that Cilk was modified to add mechanisms inspired by *Socrates, and is thus obviously a good match for it....

80. 6.893 Readings
Anderson. SOSP 97. Efficient Detection of Determinacy Races in CilkPrograms by Mingdong Feng and Charles E. Leiserson. SPAA 97.
http://pag.lcs.mit.edu/6.893/readings.html
6.893 Readings
Memory errors
Sep. 10:
Concept analysis
Sep 12: 6.893 critiques
Program analysis for software engineering
Sep 19:
Dynamic invariant detection
Sep 19:
  • (skim pages 12-18; read the rest more carefully)

A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z  

Page 4     61-80 of 80    Back | 1  | 2  | 3  | 4 

free hit counter