{% include 'install_packages' %}
+{% include 'install_cuda' %}
+
h2(#singularity). Set up Singularity
Follow the "Singularity installation instructions":https://sylabs.io/guides/3.7/user-guide/quick_start.html. Make sure @singularity@ and @mksquashfs@ are working:
<notextile>
<pre><code>$ <span class="userinput">singularity version</span>
-3.7.4
+3.9.9
$ <span class="userinput">mksquashfs -version</span>
-mksquashfs version 4.3-git (2014/06/09)
+mksquashfs version 4.4 (2019/08/29)
[...]
</code></pre>
</notextile>
</notextile>
{% include 'singularity_mksquashfs_configuration' %}
+
+h2(#singularity_loop_device_errors). Singularity loop device errors
+
+With singularity v3.9.1 and earlier, containers may fail intermittently at startup with an error message similar to the following in the container log's @stderr.txt@ (line breaks added):
+
+<notextile>
+<pre><code>FATAL: container creation failed:
+ mount /proc/self/fd/3->/usr/local/var/singularity/mnt/session/rootfs error:
+ while mounting image /proc/self/fd/3:
+ failed to find loop device:
+ could not attach image file to loop device:
+ failed to set loop flags on loop device:
+ resource temporarily unavailable
+</code></pre>
+</notextile>
+
+This problem is addressed in singularity v3.9.2. For details, please see "Arvados issue #18489":https://dev.arvados.org/issues/18489 and "singularity PR #458":https://github.com/sylabs/singularity/pull/458.