• bc.p
  • bin.p:
  • bsearch.p: search and replace items on a binary tree. first constructs the tree then replace items
  • integral.p: This program will approximate definite integrals from 0 to 1 on two functions, in parallel. y=x**2. y=sqrt(x).
  • larry_sort.p: This sorting routine should take time: O( (n/p) log (n/p) + (n/p) log (p) log (p) ) time. It works as follows: .br 1. Divide input into p groups and each group is sorted by a different processor: O( n/p log n/p ) time .br 2. Use a size 2*p sorting network: There are p two by two comparators (that are actually merging blocks) Each comparator gets two sorted lists, each of size n/(2p), and merges them into one list and then splits the list into upper and lower parts. O( (n/p)(log p * log p ) ) .br The sorting network is the indirect binary n-cube implementation of either Balanced or Bitonic sort. See the paper by Rudolph and others about the balanced sort. The implementation is done so that the only half the items are moved between the PEs, the others can be local. That is, index i, merges blocks 2i and some other one, each iteration. (Should be good for caching schemes)
  • mat.p: Matrix Multiplication .
  • min.p: Contains five differents algorithms for finding the minimum between n numbers.
  • monte_carlo.p: The Monte_Carlo program is a parallel simulation of molecular motion. given a set of n molecules (positive and negative ions) and a function to compute the electrical force between each molecule pair - the pogram shows graphicaly (on a visual100 terminal) the movements of these molecules. A possible movement is eather when the new potential energy is smaller or elese there is a certain probability to accept the new position if the total energy is higher then before. The parallel algorithm implemented here is described in the papper by N. Ostlund, P. Hibbard and R. Whiteside : "Application of a Tightly Coupled Multiprocessor " , Parallel Computations edited by G. Rodrigue, 1982 Academic Press.
  • prefix.p: refix sum of numbers by ascendent order.
  • ptree.p: demonstrate: contexts switching of tasks spawned to produce a recurcive tree of tasks. The leavs run in parallel.
  • qsort.p: Sort n numbers in ascending order. Use Quick-Sort Algorithm.
  • semantic.p: demonstarate some nested parallel constructs, and scopeing rules
  • spido.p:
  • bc.p parallel calculator, including some matrix operations and eigenvalues (old program must be revized first)
  • det.p: detrminat, effcient version
  • epgry.p: Connected component, Shiloach and Vishkin's algorithm
  • esti.p: nested while-loops for testing fairness
  • myintegral.p
  • mysample.p diffrent forms of nesting
  • partest.p: testing pbreak and other
  • sim.p: testing various features of ParC
  • smult.p: recursive matrix multiplication
  • tc.p: diffrent forms of parallel transitive closure