Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is it possible to optionally run multiple chains in parallel? #8

Closed
goedman opened this issue Aug 3, 2014 · 5 comments
Closed

Is it possible to optionally run multiple chains in parallel? #8

goedman opened this issue Aug 3, 2014 · 5 comments
Assignees

Comments

@goedman
Copy link
Collaborator

goedman commented Aug 3, 2014

No description provided.

@goedman goedman self-assigned this Aug 3, 2014
@goedman
Copy link
Collaborator Author

goedman commented Aug 3, 2014

My preference would be to start looking into parallel execution a bit later on, for release 0.0.1 the basics have to work more or less.

@cwliu007
Copy link

Hi goedman,

Why Jags.jl runs five threads in default? Can I just run one thread? How to control? Thanks.

@goedman
Copy link
Collaborator Author

goedman commented Aug 27, 2014

Yes, that will be possible. I'm working on that.

You must be running the master branch, which is in an in between state.

Regards,
Rob

Sent from my iPhone

On Aug 26, 2014, at 8:09 PM, genwei007 notifications@github.com wrote:

Hi goedman,

Why Jags.jl runs five threads in default? Can I just run one thread? How to control? Thanks.


Reply to this email directly or view it on GitHub.

@goedman
Copy link
Collaborator Author

goedman commented Aug 28, 2014

Well, I've looked at this issue a bit closer now and implemented part of it. My preliminary conclusion is that running multiple chains in parallel is not a good match with Jags' structure. I will explain this in more detail below.

What is right now in the Jags.jl branch "master" (I will likely move it to a separate branch in about 2 weeks), runs ncommands copies of Jags in parallel. Each copy can run multiple nchains. If nchains is set to 1, and dic or pop are requested, nchains for each command copy is increased and currently set to 3.

I'm struggling with the fact that Jags also has a built-in strategy to use different RNGs for up to 4 chains within each Jags run. One possible approach is that I enforce different RNGs and appropriate seeds in the parallel copies through generating separate .jags files. For the next few weeks I want to think a bit more about this and maybe run some performance tests before proceeding.

For now I suggest to use the Jags v0.0.3, not the "master" branch.

@goedman
Copy link
Collaborator Author

goedman commented Sep 28, 2014

Implemented in Jags-j0.3-v0.0.4

@goedman goedman closed this as completed Sep 28, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants