inducer / inducer/pyopencl

invoker lock-file conflict on nfs cluster

Open
#207 7 comments 1 reaction 0 assignees View on GitHub
Dominant language
Python
Stars
1.2k
Forks
247
Avg merge
7h 2m
Merged PRs (30d)
6

Description

When running pyopencl on a cluster with an nfs filesystem, a lock file created in my home dir on one node prevents the other nodes from progressing. I've pasted a stack trace below.

At first I thought I could fix the problem by supplying the "cache_dir" argument when creating the pyopencl context, to point to somewhere in `/tmp` which isn't in the nfs. However, those lock files aren't the problem: The problem is the use of PersistentDict to define the "invoker_cache" in invoker.py using the default lock file location, which is inside my home dir on the nfs, in my case.

As a workaround, I've modified `invoker.py` on my system so the definition
reads
```
invoker_cache = PersistentDict("pyopencl-invoker-cache-v1",
key_builder=NumpyTypesKeyBuilder(),
container_dir='/tmp/cl/invoker')
```

Perhaps in future versions of pyopencl you could make the container_dir
configurable?

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.