<html>
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Hi devs <br>
    <br>
    First a quick thank you to the Debian package maintainers, i could
    not use BOINC without the install and run scripts.  <br>
    <br>
    Apologies for the longish email.  I could not find a forum to post
    in.<br>
    <br>
    We have been discussing a couple of startup issues relating to GPU
    recognition over at <br>
    <br>
    <a class="moz-txt-link-freetext"
      href="http://boinc.berkeley.edu/dev/forum_thread.php?id=10641">http://boinc.berkeley.edu/dev/forum_thread.php?id=10641</a><br>
    <br>
    There are a couple of problems running OpenCL boinc tasks on startup
    on AMD GPUs <br>
    <br>
    I have struggled to get the boinc-client to start in init.d (ubuntu
    14.04) <br>
    starts boinc (easy) and then (the difficult part) starting OpenCL
    tasks <br>
    <br>
    The awkward issue seems the xhost to be set correctly.<br>
    <br>
    There is discussion of this issue, here in the past - <br>
        <a class="moz-txt-link-freetext"
      href="https://bugs.launchpad.net/ubuntu/+source/boinc/+bug/1407452">https://bugs.launchpad.net/ubuntu/+source/boinc/+bug/1407452</a><br>
    <br>
    <br>
    <br>
    In the boinc-client startup script around line 109 we see<br>
    <br>
        if [ -n "$DISPLAY" -a -x /usr/bin/xhost ]; then<br>
           # grant the boinc client to perform GPU computing<br>
           xhost local:boinc || echo -n "xhost error ignored, GPU
    computing may not be possible"<br>
    <br>
    <br>
    <br>
    a) xhost parameter is wrong - it probably should be<br>
    <br>
    <b>xhost +SI:localuser:$BOINC_USER</b><br>
    <br>
    or less preferred <br>
    <br>
    <b>xhost +local:</b><br>
    <br>
    <br>
    <br>
    b) In order for init.d startup, xhost will certainly need DISPLAY to
    be set otherwise xhost will not be run - an error will occur.   <br>
    <br>
    Some examples.... in this case i have ssh'd to muon<br>
    <br>
    agentb@muon:~$ export | grep DISPLAY<br>
    agentb@muon:~$ xhost                                  #no DISPLAY in
    environment - xhost errors<br>
    xhost:  unable to open display ""<br>
    <br>
    agentb@muon:~$ export DISPLAY=":0"          #add DISPLAY<br>
    agentb@muon:~$ xhost<br>
    access control enabled, only authorized clients can connect<br>
    SI:localuser:agentb<br>
    SI:localuser:gdm<br>
    SI:localuser:root<br>
    <br>
    agentb@muon:~$ xhost local:boinc                # line 109 <br>
    non-network local connections being added to access control list<br>
    agentb@muon:~$ xhost                                  # note no
    boinc added but LOCAL added.<br>
    access control enabled, only authorized clients can connect<br>
    LOCAL:<br>
    SI:localuser:agentb<br>
    SI:localuser:gdm<br>
    SI:localuser:root<br>
    <br>
    agentb@muon:~$ xhost -local:                     #remove LOCAL<br>
    non-network local connections being removed from access control list<br>
    <br>
    agentb@muon:~$ xhost <br>
    access control enabled, only authorized clients can connect<br>
    SI:localuser:agentb<br>
    SI:localuser:gdm<br>
    SI:localuser:root<br>
    <br>
    agentb@muon:~$ xhost +SI:localuser:boinc<br>
    localuser:boinc being added to access control list<br>
    <br>
    agentb@muon:~$ xhost                              #shows boinc
    added.<br>
    access control enabled, only authorized clients can connect<br>
    SI:localuser:boinc<br>
    SI:localuser:agentb<br>
    SI:localuser:gdm<br>
    SI:localuser:root<br>
    <br>
    <br>
    <br>
    c) Minor -  I'm not entirely sure that "echo -n" should be used - 
    better a  "log_warning_msg" ?<br>
    <br>
    <br>
    <br>
    Sadly I have not quite solved the problem.  <br>
    <br>
    I have tried changed the above lines my /etc/init.d/boinc-client
    startup to<br>
    <br>
    if [ -n "$DISPLAY" ];  then <br>
        export DISPLAY=":0"<br>
     fi<br>
     if [ -x /usr/bin/xhost ]; then<br>
        # grant the boinc client to perform GPU computing<br>
        xhost +SI:localuser:boinc || log_warning_msg  "xhost error
    ignored, GPU computing may not be possible"<br>
     fi<br>
    <br>
    but even so xhost seems to be unwilling to add boinc.<br>
    <br>
    I have also tried adding SI:localuser:boinc to /etc/X0.hosts - i
    don't think "localuser" is supported in X0.hosts<br>
    <br>
    <br>
    However, I have a Ubuntu lightdm workaround, where i modify the <b>/etc/lightdm/lightdm.conf</b>
    file to add<br>
    <br>
    <b>[SeatDefaults]<br>
      display-setup-script=/usr/bin/xhost +SI:localuser:boinc</b><br>
    <br>
    This does work, but it's a hack.<br>
    <br>
    Hope this helps, or if you can give me some ideas to test i'll be
    happy to do so.<br>
    <br>
    <br>
    <pre class="moz-signature" cols="72">-- 
BR 
Mike</pre>
  </body>
</html>