#!/usr/bin/perl -w my ( $nprocs, $m, $blksize, $dim, $diff, $lhs, $rhs ); do { print "Enter the number of processes (a perfect square): "; $nprocs = <>; chomp($nprocs); $m = sqrt($nprocs); } while (($m * $m) != $nprocs); print "Enter the size of the blocks: "; $blksize = <>; chomp($blksize); $dim = $m * $blksize; print "You are going to multiply $dim by $dim matrices!\n" ; `rm -f ~/I ~/R ~/IR ~/RI`; `./mkRandomMatrix ~/R $dim`; print `ls -lh ~/R`; `./mkIdentityMatrix ~/I $dim`; `./mkZeroMatrix ~/IR $dim`; print `ls -lh ~/IR`; `./mkZeroMatrix ~/RI $dim`; print `ls -lh ~/RI`; $lhs = `./mm.0.4 ~/I ~/R ~/IR $m $blksize`; $rhs = `./mm.0.4 ~/R ~/I ~/RI $m $blksize`; $diff = `diff ~/IR ~/RI`; if($diff){ print "~/IR and ~/RI differ\n"; } else { print "~/IR and ~/RI agree\n"; } print $lhs;