[libfabric-users] [chuck at ece.cmu.edu: utility provider breaks fi_wait()]
Xiong, Jianxin
jianxin.xiong at intel.com
Mon Sep 28 15:24:01 PDT 2020
FI_THREAD_SAFE is not guaranteed in the psm provider. In the past a lot of effort have been put into the psm2 provider to make it thread safe, but similar work was not done to the psm provider.
-Jianxin
> -----Original Message-----
> From: Hefty, Sean <sean.hefty at intel.com>
> Sent: Monday, September 28, 2020 1:44 PM
> To: Chuck Cranor <chuck at ece.cmu.edu>; Xiong, Jianxin <jianxin.xiong at intel.com>
> Cc: libfabric-users at lists.openfabrics.org; Pritchard Jr., Howard <howardp at lanl.gov>; Jerome Soumagne <jsoumagne at hdfgroup.org>
> Subject: RE: [chuck at ece.cmu.edu: utility provider breaks fi_wait()]
>
>
> > PSM rejects setting the domain threading attribute to "FI_THREAD_SAFE"
> > even though the documentation in man/fi_domain.3.md says
> >
> > "All providers are required to support FI_THREAD_SAFE"
> >
> > is this an oversight in the PSM code? I added FI_THREAD_SAFE
> > to psmx_init.c and it seems to work. Is the following patch ok,
> > or are there more threading issues I should be aware of?
> >
> >
> > diff --git a/prov/psm/src/psmx_init.c b/prov/psm/src/psmx_init.c index
> > c0a93f44a..6b1263cef 100644
> > --- a/prov/psm/src/psmx_init.c
> > +++ b/prov/psm/src/psmx_init.c
> > @@ -453,6 +453,7 @@ static int psmx_getinfo(uint32_t version, const
> > char *node, const char *service,
> > case FI_THREAD_ENDPOINT:
> > case FI_THREAD_COMPLETION:
> > case FI_THREAD_DOMAIN:
> > + case FI_THREAD_SAFE:
> > threading = hints->domain_attr->threading;
> > break;
> > default:
>
> Copying the psm maintainer. I don't know the answer.
>
> - Sean
More information about the Libfabric-users
mailing list