I just installed Fenics (and flufl.lock) on our blade server (Ubuntu 14.04.1server, /home shared via nfs) and did some testing with "demo_poisson.py". Running the code on 2 blades with 4 slots works fine, but running the same model on 4 blades with 2 slots always ends up with a locking error (complete listing see below). The same problem occurs, when I am trying to run my own models.
Any idea how to fix this problem?
mpirun -n 8 -H b1,b2,b3,b4 python demo_poisson.py
results in
Process 0: Number of global vertices: 1089
Process 0: Number of global cells: 2048
Traceback (most recent call last):
File "demo_poisson.py", line 54, in
f = Expression("10exp(-(pow(x[0] - 0.5, 2) + pow(x[1] - 0.5, 2)) / 0.02)")
File "/usr/lib/python2.7/dist-packages/dolfin/functions/expression.py", line 582, in new
[generic_function_members])
File "/usr/lib/python2.7/dist-packages/dolfin/compilemodules/expressions.py", line 217, in compile_expressions
additional_declarations))
File "/usr/lib/python2.7/dist-packages/dolfin/compilemodules/expressions.py", line 142, in compile_expression_code
code, additional_declarations=additional_declarations)
File "/usr/lib/python2.7/dist-packages/dolfin/compilemodules/jit.py", line 71, in mpi_jit
output = local_jit(args,**kwargs)
File "/usr/lib/python2.7/dist-packages/dolfin/compilemodules/compilemodule.py", line 401, in compile_extension_module
compiled_module = instant.import_module(module_name)
File "/usr/lib/python2.7/dist-packages/instant/cache.py", line 156, in import_module
return check_disk_cache(modulename, cache_dir, moduleids)
File "/usr/lib/python2.7/dist-packages/instant/cache.py", line 126, in check_disk_cache
release_lock(lock)
File "/usr/lib/python2.7/dist-packages/instant/locking.py", line 62, in release_lock
lock.unlock()
File "/usr/lib/python2.7/dist-packages/flufl/lock/_lockfile.py", line 293, in unlock
raise NotLockedError('Already unlocked')
flufl.lock._lockfile.NotLockedError: Already unlocked