Giter Club home page Giter Club logo

Comments (9)

rjbgoudie avatar rjbgoudie commented on June 1, 2024

Sorry to hear you’re having problems. Could you clarify exactly what you mean by "the sampling was not distributed over the three cores” and "the cores are not activated”? What showed to you that this was the case? Since the BUGSWorker.exe show up in the Task Manager, it sounds like MultiBUGS did manage to distribute the computation across cores, so I am unsure what you mean. It may well be that there is no speed-up, even if it did manage to distribute the model — the speed up depends on, in particular, the exact model and the exact computer.

from multibugs.

emmanuellesaffre avatar emmanuellesaffre commented on June 1, 2024

from multibugs.

emmanuellesaffre avatar emmanuellesaffre commented on June 1, 2024

from multibugs.

rjbgoudie avatar rjbgoudie commented on June 1, 2024

Yes, but I’m still puzzled I’m afraid. I have some more questions/comments that might help to isolate the problem.

Just to confirm, you are using MultiBUGS 1.0? Also, do you get results from all 3 chains if you look at the output?

Note that if you run 3 chains, with “num cores”=3, it won’t parallelise WITHIN each chain, regardless of whether it is possible: each chain will use 1 of the 3 cores. Hence why Info>”Show Distribution” is probably showing “Number of processor: 1”. What does Info > Distribution Info say?

The problem could be either (1) MultiBUGS is not setup quite correctly on your computer; (2) your specific model(s) do not parallelise efficiently in MultiBUGS; or (3) a bug in MultiBUGS; or (4) something else..!

To standardise on a model I know about, could you try the Methadone example from Examples > Examples Vol IV > Methadone, and compare run times for "1 chain, with no distribution" (don’t click distribute at all) vs "1 chain, with 2 cores"? I suggest only trying to run a few iterations, since it will be very slow with only 1 or 2 cores. e.g. on my current computer 50 iterations takes ~20s (no distribute) vs ~10s with 2 cores.

Sorry again that you are having problems - hopefully we can figure it out.

from multibugs.

emmanuellesaffre avatar emmanuellesaffre commented on June 1, 2024

from multibugs.

emmanuellesaffre avatar emmanuellesaffre commented on June 1, 2024

from multibugs.

rjbgoudie avatar rjbgoudie commented on June 1, 2024

Glad we’re making a little progress. Across-chain parallelisation should work for any model, so I’m not sure why it isn’t working for you.

I guess you attached the fiels to the email, but it seems that email attachments don’t get passed through via GitHub. Can you please attach the files directly to the issue on GitHub? (Or email direct to me if you don’t want it in the public domain)

from multibugs.

emmanuellesaffre avatar emmanuellesaffre commented on June 1, 2024

from multibugs.

rjbgoudie avatar rjbgoudie commented on June 1, 2024

Resolved offline but for future reference: each MCMC step of the model is quite fast so if refresh=100, then the communication time dominates everything else.

For 100,000 iterations, with 3 chains, with refresh=100 we get:
3 cores in MultiBUGS: 62 seconds
1 core in MultiBUGS: 62 seconds

With refresh=100000:
3 cores in MultiBUGS: 1 second
1 core in MultiBUGS: 4 seconds

The setting of refresh makes a big difference because at each refresh all the cores must communicate their results to the master process, so that any trace plots etc can be updated. When each MCMC step is quite fast, as here, this communication overhead dominates.

from multibugs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.