The async thread is used to handle asynchronous error/notification events, like port up/down, hca errors etc.
So most of the time the thread sleeps, and in healthy network you not supposed to see any events.
On Dec 23, 2010, at 12:49 AM, Eugene Loh wrote:
> I'm starting to look at the openib BTL for the first time and am
> puzzled. In btl_openib_async.c, it looks like an asynchronous thread is
> started. During MPI_Init(), the main thread sends the async thread a
> file descriptor for each IB interface to be polled. In MPI_Finalize(),
> the main thread asks the async thread to shut down. Between MPI_Init()
> and MPI_Finalize(), I would think that the async thread would poll on
> the IB fd's and handle events that come up. If I stick print statements
> into the async thread, however, I don't see any events come up on the IB
> fd's. So, the async thread is useless. Yes? It starts up and shuts
> down, but never sees any events on the IB devices?
> devel mailing list