Skip to content
Snippets Groups Projects
Commit 52b251d6 authored by Tsun-Ho Pang's avatar Tsun-Ho Pang Committed by Colm Talbot
Browse files

FEATURE: Adding outdir support for ultranest's mpi functionality

parent 411efa0a
No related branches found
No related tags found
No related merge requests found
......@@ -91,3 +91,4 @@ Isaac Legred
Marc Penuliar
Andrew Fowlie
Martin White
Peter T. H. Pang
......@@ -902,7 +902,19 @@ class _TemporaryFileSamplerMixin:
def __init__(self, temporary_directory, **kwargs):
super(_TemporaryFileSamplerMixin, self).__init__(**kwargs)
self.use_temporary_directory = temporary_directory
try:
from mpi4py import MPI
using_mpi = MPI.COMM_WORLD.Get_size() > 1
except ImportError:
using_mpi = False
if using_mpi and temporary_directory:
logger.info(
"Temporary directory incompatible with MPI, "
"will run in original directory"
)
self.use_temporary_directory = temporary_directory and not using_mpi
self._outputfiles_basename = None
self._temporary_outputfiles_basename = None
......
......@@ -5,7 +5,6 @@ import time
import numpy as np
from ..utils import logger
from .base_sampler import NestedSampler, _TemporaryFileSamplerMixin, signal_wrapper
......@@ -77,12 +76,6 @@ class Pymultinest(_TemporaryFileSamplerMixin, NestedSampler):
temporary_directory=True,
**kwargs
):
try:
from mpi4py import MPI
using_mpi = MPI.COMM_WORLD.Get_size() > 1
except ImportError:
using_mpi = False
super(Pymultinest, self).__init__(
likelihood=likelihood,
priors=priors,
......@@ -96,13 +89,6 @@ class Pymultinest(_TemporaryFileSamplerMixin, NestedSampler):
**kwargs
)
self._apply_multinest_boundaries()
self.exit_code = exit_code
if using_mpi and temporary_directory:
logger.info(
"Temporary directory incompatible with MPI, "
"will run in original directory"
)
self.use_temporary_directory = temporary_directory and not using_mpi
def _translate_kwargs(self, kwargs):
kwargs = super()._translate_kwargs(kwargs)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment