示例#1
0
文件: parallel.py 项目: along1x/pymc
    def __init__(self, input, db='ram', chains=2):
        try:
            mec = client.MultiEngineClient()
        except:
            p = subprocess.Popen('ipcluster -n %d'%proc, shell=True)
            p.wait()
            mec = client.MultiEngineClient()

        # Check everything is alright.
        nproc = len(mec.get_ids())
        assert chains <= nproc


        Sampler.__init__(self, input, db=db)

        # Import the individual models in each process
        #mec.pushModule(input)

        proc = range(chains)

        try:
            mec.execute('import %s as input'%input.__name__, proc)
        except:
            mec.execute( 'import site' , proc)
            mec.execute( 'site.addsitedir( ' + `os.getcwd()` + ' )' , proc)
            mec.execute( 'import %s as input; reload(input)'%input.__name__, proc)

        # Instantiate Sampler instances in each process
        mec.execute('from pymc import MCMC', proc)
        #mec.execute('from pymc.database.parallel import Database')
        #for i in range(nproc):
        #    mec.execute(i, 'db = Database(%d)'%i)
        mec.execute("S = MCMC(input, db='txt')", proc)

        self.mec = mec
        self.proc = proc
示例#2
0
文件: parallel.py 项目: jhsa26/pymc
    def __init__(self, input, db='ram', chains=2):
        try:
            mec = client.MultiEngineClient()
        except:
            p = subprocess.Popen('ipcluster -n %d' % proc, shell=True)
            p.wait()
            mec = client.MultiEngineClient()

        # Check everything is alright.
        nproc = len(mec.get_ids())
        assert chains <= nproc

        Sampler.__init__(self, input, db=db)

        # Import the individual models in each process
        #mec.pushModule(input)

        proc = range(chains)

        try:
            mec.execute('import %s as input' % input.__name__, proc)
        except:
            mec.execute('import site', proc)
            mec.execute('site.addsitedir( ' + ` os.getcwd() ` + ' )', proc)
            mec.execute('import %s as input; reload(input)' % input.__name__,
                        proc)

        # Instantiate Sampler instances in each process
        mec.execute('from pymc import MCMC', proc)
        #mec.execute('from pymc.database.parallel import Database')
        #for i in range(nproc):
        #    mec.execute(i, 'db = Database(%d)'%i)
        mec.execute("S = MCMC(input, db='txt')", proc)

        self.mec = mec
        self.proc = proc
示例#3
0
 def check(self):
     from pymc import Sampler
     from pymc.examples import trans_dimensional
     M = Sampler(trans_dimensional)
     M.sample(5000,0,10,verbose=False)
     M.plot()
示例#4
0
 class test_AdaptativeMetropolis(NumpyTestCase):
     S = Sampler(AMmodel, 'ram')
     S.sample(10000)
     print S.A.trace(burn=5000, thin=50)
示例#5
0
 def check(self):
     from pymc import Sampler
     from pymc.examples import trans_dimensional
     M = Sampler(trans_dimensional)
     M.sample(5000, 0, 10, verbose=False)
     M.plot()