This file contains a list of errors that have been reported since the pre-release of the BLACS. The form of the problem statement will be Problem X: - ============================================================= Problem 1: IBM - CMMD MPL ============== emergency buff allocating twice required storage Solution 1 ========== Dumn error on my part, simply took out extra multiply. Problem 2: IBM - MPL ==================== Nonsensical call to mpc_task_set, Solution 2 ========== Removed call to mpc_task_set. Problem 3: IBM - CMMD MPL NX PVM ================================ blacs_exit not resetting all values. Solution 3 ========== Note that calling BLACS after blacs_exit is illegal anyway; won't work on PVM at all. However, I did not release all of my malloced space, and this has been fixed. Problem 4: IBM - CMMD, MPL, NX, PVM =================================== BLACS_SET sets degree of tree one less than it's supposed to (enabling the user to try a 0 degree tree, for instance). Solution 4 ========== To create a one-degree tree, the underlying algorithm accepts nbranches=2 (it counts its own node as a branch). I forgot to increment the user's setting to account for this. I have now done so. Problem 5: IBM - MPL ==================== Missing ContxtNum.c routine, being called by Srecv2d00.c and Srecv2dID.c Solution 5 ========== I screwed up the makefile that extracts the code. Its fixed now. Problem 6: IBM - CMMD, MPL, NX, PVM =================================== BLACS_SET sets number of branches for tree topology, which is not same as we get by a call to BLACS_GET. Solution 5 ========== I failed to update BLACS_GET when fixing problem 4. It is now fixed. Problem 7: IBM - Documentation problem ====================================== Also, blacs_set, checks val > 0, then it sets otherwise it gives error message, but document gives the range of 0 < VAL(1) < Np. Explanation =========== The document gives the logical range, 1 .. Np-1. It is an error for Nbranches (Nb) to be less than 1 (this would be a 0 degree tree). Setting Nb >= Np, is not illegal, but simply doesn't do anything new. Nb >= (Np - 1) all produce fully-connected broadcasts. I will look into making the documentation more explicit.