Nysal --

I was poking through /tmp/jnysal-openib-wireup branch this morning (because I suddenly have a need for btl_openib_if_include and btl_openib_if_exclude) and found two minor problems:

1. The logic for if_exclude was not correct. I committed a fix for it. https://svn.open-mpi.org/trac/ompi/changeset/14748

2. I'm a bit confused on a) how the new MCA params mca_num_hcas and map_num_procs_per_hca are supposed to be used and b) what their default values should be.

2a. I don't quite understand the logic of is_hca_allowed(); I could not get it to work properly. Specifically, I have 2 machines each with 2 HCAs (mthca0 has 1 port, mthca1 has 2 ports). If I ran 2 procs (regardless of byslot or bynode), is_hca_allowed() would always return false for the 2nd proc. So I put a temporary override in is_hca_allowed() to simply always return true. Can you explain how the logic is supposed to work in that function?

2b. The default values of max_num_hcas and map_num_procs_per_hca are both 1. Based on my (potentially flawed) understanding of how these MCA params are meant to be used, this is different than the current default behavior. The current default is that all procs use all ACTIVE ports on all HCAs. I *think* your new default param values will set each proc to use the ACTIVE ports on exactly one HCA, regardless how many there are in the host. Did you mean to do that? Also: both values must currently be >=1; should we allow -1 for both of these values, meaning that they can be "infinite" (i.e., based on the number of HCAs in the host)?

--
Jeff Squyres
Cisco Systems

Reply via email to