Parabricks crashes when primary user group is not allowed to use gpu devices

Hello,

I hope this is the right place to post this issue, if not please redirect me.

after installing the parabricks software I am unable to start the germline pipeline. Executing “pbrun version” and “pbrun germline --help” both work fine, with the expected output.

The administrator of the system I am using decided to permit access to the gpu devices /dev/nvidiaX only for users of a specific group (484). Because we are using other means to authenticate users, my users primary group is fixed at a different number (say 50000). Unfortunately, in the way that pbutils.py is retrieving the uid:gid combination for docker run (getpwnam) it refers to the passwd database of the system.

Therefore parabricks is always invoked with docker run -u USERID:50000, but nvidia devices in the container are still locked to the group 484.

I worked around this issue by modifying the proper line in pbmaster.py, to just always send the correct gid. Can this be fixed properly somehow (f.e. by retrieving this data from the executing shell)? Note that pbrun germline --help retrieves the data from the gpu devices correctly, so it seems to be doing something different than the actual pipeline execution…

Thank you for your interest in Clara Parabricks Software, and sorry to hear you had some hard time running it.
As you mention, our software gets the group ID from the primary group.
A request for enhancement have been initiated.
Thank you