Parallel Platform Packages (PPPs)
A Parallel Platform Package (PPP) is used with a particular teaching module and an appropriate corresponding platform resource. Learn more>>
The available PPPs that we provide information about are found in the collection below.
Most Parallel Platform Package libraries/languages require certain platform resources, such as a cluster or a multicore machine. Information about which platform resource is needed for a particular PPP can be found on the PPP page, or you can learn more about each type of resource.
The PPP Libraries, Languages, and Interfaces Collection
Physical Resourceshowing only Remote Multicore Show all Physical Resource
Results 1 - 6 of 6 matches
The standard Java package java.util.concurrent contains utility classes which are useful in implementing concurrent programming in Java. This package includes a few small standardized extensible frameworks, as well as some classes that provide useful functionality and are otherwise tedious or difficult to implement.
Open MPI is an open source MPI-2 implementation that is developed and maintained by a consortium of academic, research, and industry partners. Originally representing the merger of several MPI implementations, Open MPI is able to combine the expertise, technologies, and resources from all across the High Performance Computing community in order to "build the best MPI library available."
MPICH2 is a freely available, high-performance implementation of the MPI (Message Passing Interface), both MPI-1 and MPI-2. It is also an alternative free MPI implementation to OpenMPI. MPICH2 provides an API for message passing for parallel computing in C and C++, as well as an MPI implementation that efficiently supports different computation and communication platforms. It has been tested on several platforms, including Linux (on IA32 and x86-64), Mac OS/X (PowerPC and Intel), Solaris (32- and 64-bit), and Windows.
Taken from OpenMP's mission statement: "The OpenMP Application Program Interface (API) supports multi-platform shared-memory parallel programming in C/C++ and Fortran on all architectures, including Unix platforms and Windows NT platforms. Jointly defined by a group of major computer hardware and software vendors, OpenMP is a portable, scalable model that gives shared-memory parallel programmers a simple and flexible interface for developing parallel applications for platforms ranging from the desktop to the supercomputer."
Intel® Threading Building Blocks
Threading Building Blocks (TBB), created by Intel®, offers an approach to implementing parallelism in a C++ program. TBB is a library that helps programmers take advantage of multi-core processor performance without having to be an expert on threading. The library represents a higher-level, task-based parallelism that abstracts platform details and threading mechanisms for scalability and performance.
Bootable Cluster CD
The Bootable Cluster CD (BCCD) is a software platform designed to allow parallel programming and distributed computing instruction to concentrate on the education and not the computing infrastructure necessary for it. It is an open source Knoppix-based live CD that provides the tools necessary to teach parallel and distributed computing (e.g., GNU compiler suite, multiple MPI bindings, OpenMP, CUDA, Java) that can be run on either a single system or on a network of computers that are automatically configured using custom networking tools to form an ad hoc temporary cluster.