6.3.5 readconfig

mb,nb,nprow,npcol=readconfig(iam,nprocs,file_config,mb0,nb0,nprow0,npcol0)

La rutina readconfig obtiene la configuración de la malla de procesos desde un archivo de configuración que indicaremos mediante file_config o bien la calcula a partir del número de procesos disponbibles. En el caso que la calcule de forma automática, se buscará una matriz de procesos lo más cuadrada posible y que agrupe el mayor número posible de procesos con los que se ha iniciado la ejecución (mpirun -np N mpipython example.py, donde N es el número de procesos). Por ejemplo, si N=4 entonces nprowxnpcol=2x2, o si si N=7 se obtendría nprowxnpcol=3x2.

Por otro lado, con respecto a la malla de procesos se puede indicar cualquiera de los parámetros (nprow o npcol)y se calcularán el resto en función del indicado y buscando utilizar el mayor número de procesos posible. Por ejemplo, si N=9 e indicamos nprow=4, en lugar de obtener una configuración por defecto nprowxnpcol=3x3, obtendríamos nprowxnpcol=4x2. De este modo, podremos seleccionar la configuración de la malla de procesos que deseemos con determinados fines, como pudiera ser el de ajustar la malla de procesos a las formas de las matrices de datos. Siguiendo esta línea, si deseamos multiplicar dos vectores, sería conveniente utilizar una configuración Nx1.

Las características de cada uno de los parámetros de entrada y salida son:

See Sobre este documento... para sugerencias en cambios.