Ej 4 Duda sobre Cobegin Begin

Ej 4 Duda sobre Cobegin Begin

de Renzo Minelli Mutti -
Número de respuestas: 5

Hola, mi duda surge en si estoy pensando de forma correcta la utilización de begin y el cobegin, ya que ahora cuando necesito los procesos s1 y s2 para el s3, luego el s4 y s5 para el s6, se me ocurre que la mejor forma de implementar algo como eso sería:

Begin 

   Cobegin

       Begin

          Cobegin

               s1;

               s2;

          Coend

          s3;

       End

       Begin

          Cobegin

               s4;

               s5;

          Coend

          s6;

       End

    Coend

End

Ya que de esta forma ejecuto ambas cosas en paralelos y en ambos manteniendo que para ejecutar los procesos s3 y s6 tengo los anteriores listos. Lo único que veo raro es que hay muchos Cobegin y Begin con lo que me hacen pensar que tal vez lo estoy pensando mal, 

Gracias.


    

En respuesta a Renzo Minelli Mutti

Re: Ej 4 Duda sobre Cobegin Begin

de Federico Rivero -

Estimado,

Consulta. Te estás refiriendo al ejercicio 4? El de las matrices? Qué harían s1... s6 en ese contexto?

Saludos,

           Federico

En respuesta a Federico Rivero

Re: Ej 4 Duda sobre Cobegin Begin

de Renzo Minelli Mutti -

Si, digamos que las matrices son a 3x3 y b 3x2, s1 por ejemplo sería multiplicar la coordenada a11*b11, luego s2 sería a12*b21 y faltaría un tercer proceso padre que sería a13*b31 para luego el hijo sería la suma de estos tres resultados. Capaz lo veo muy fino y no es operación a operación

En respuesta a Renzo Minelli Mutti

Re: Ej 4 Duda sobre Cobegin Begin

de Jorge Merlino -

La idea es usar 6 procesos en total. Ahí ya estás usando 4 para calcular solo un elemento del resultado.

Pensá que la matriz resultado es de 3x2 y fijate como podés usar los 6 procesos.

En respuesta a Jorge Merlino

Re: Ej 4 Duda sobre Cobegin Begin

de Rodrigo Alain De La Vega Rodriguez -
Jorge, buenas noches. Yo estoy pensando en los mismo que hizo Renzo. Digamos que M1 es la matriz 3x3 que tiene elementos a_ij y la matriz M2 es 3x2 que tiene elementos b_qp. Luego la matriz resultado es M = M1xM2 y tiene elementos c_kw.
Yo para hallar c_11 por ejemplo use mas de 6 procesos y luego si quiero hallar el resto de los c_kw tengo el mismo nro de procesos por cada uno por lo que me generaría muchísimo mas de 6 procesos en Total.
Ahora tratando de seguir tu sugerencia, como la matriz resultado es 3x2 entonces tendrá 6 elementos. Suponiendo que cada uno tiene un proceso asociado que calculara su valor entonces lo único que parece correcto es hacer algo del estilo:
cobegin
    S0 (calcular c11)
    S1 (calcular c12)
    S2 (calcular c21)
    S3 (calcular c22)
    S4 (calcular c31)
    S5 (calcular c32)
coend

Esto es correcto? En caso contrario te pido que me expliques un poco mas porque no entiendo que tengo que hacer entonces.

Gracias! Saludos,
En respuesta a Rodrigo Alain De La Vega Rodriguez

Re: Ej 4 Duda sobre Cobegin Begin

de Federico Rivero -
Estimado,

Sí, el ejercicio apunta a eso. A notar que si bien esos 6 procesos toman elementos en común de las matrices origen, son únicamente lecturas y por tanto se pueden paralelizar. Es decir, no hay resultados intermedios producidos por un proceso y que luego deban ser usados por otro.

Saludos,
Federico