Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: [OMPI devel] MPI_Init_thread problem on ubuntu ARM (open-mpi 1.4.3)
From: Juan Solano (jsm_at_[hidden])
Date: 2012-03-21 07:07:12


I have a problem using Open MPI on my linux system (pandaboard running
Ubuntu precise). A call to MPI_Init_thread with the following parameters

  MPI_Init_thread(0, 0, MPI_THREAD_MULTIPLE, &provided);

it seems that we are stuck on this loop in function

while (c->c_signaled == 0) {

this is the call stack:

#0 opal_condition_wait (c=0x42528, m=0x42500) at
#1 0xb6d23124 in orte_rml_oob_send (peer=0xb6e40ae0, iov=0xbeffefa4,
count=1, tag=1, flags=16)
    at ../../../../../../orte/mca/rml/oob/rml_oob_send.c:153
#2 0xb6d2351a in orte_rml_oob_send_buffer (peer=0xb6e40ae0,
buffer=0xbeffefdc, tag=1, flags=0)
    at ../../../../../../orte/mca/rml/oob/rml_oob_send.c:269
#3 0xb6e2dca6 in orte_routed_base_register_sync (setup=true) at
#4 0xb6d46274 in init_routes (job=3667329025, ndat=0x0) at
#5 0xb6e1a088 in orte_ess_base_app_setup () at
#6 0xb6d2e630 in rte_init (flags=0 '\000') at
#7 0xb6e01404 in orte_init (flags=0 '\000') at
#8 0xb6f552dc in ompi_mpi_init (argc=0, argv=0x0, requested=0,
provided=0xbefff67c) at ../../../ompi/runtime/ompi_mpi_init.c:344
#9 0xb6f7c6f2 in PMPI_Init_thread (argc=0x0, argv=0x0, required=0,
provided=0xbefff67c) at pinit_thread.c:84
#10 0x00008572 in main () at test_lib.c:8

In function opal_condition_wait(), opal_using_threads() returns false,
shouldn't this returns true in this case, as we are calling the
initialization function with MPI_THREAD_MULTIPLE?

The global opal_uses_threads is set by calling opal_set_using_threads()
from MPI_Init_thread(), however this happens further down in this
function and we never reach the point in which this is set.