Data Tracing in GPH

Ma Changming machangming@yahoo.com
Sun, 16 Jun 2002 11:25:31 -0700 (PDT)


Hi there,

Does anyone know how to trace the GPH program to see
the data processed at specific processors? 

I'm using gum-4.06, PVM3, RedHat Linux6.2. When I
execute the following QuickSort program, I want to
make sure what happens with different CPUs, i.e., how
the data are partitioned between processors? Is there
any debugging tools to trace the data? 

Thanks in advance.
Changming Ma

PS: QuickSort

module Main(main) where

import System(getArgs)
import Parallel


forceList :: [a] -> ()
forceList [] = ()
forceList (x:xs) = x `seq` forceList xs
 
quicksortF::[Int]->[Int]
quicksortF []      = []
quicksortF [x]     = [x]

quicksortF (x:xs)  = 
 (forceList losort) `par`
 (forceList hisort) `par`
 losort ++ (x:hisort)
  where
   losort = quicksortF [y|y <- xs, y < x] 
   hisort = quicksortF [y|y <- xs, y >= x]
 

args_to_IntList :: [String] -> [Int]
args_to_IntList a = if length a < 1
		      then error "Parallel Quick Sort: no enough
args \n"
		      else map read a

main = 	getArgs >>= \ a ->
	let
		l = args_to_IntList a
	in	
		putStr ("get " ++ (show (quicksortF l))++"\n")

__________________________________________________
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com