ROSS icon indicating copy to clipboard operation
ROSS copied to clipboard

about GVT_force_update

Open Artlantic opened this issue 6 years ago • 8 comments

Hi, currently I'm using ROSS to drive my simulation. My problem is a little incompatible with ROSS for some events cannot do roll_back. So I add "tw_gvt_force_update" before these events, but it doesn't work. I'm wondering how can I make some LPs wait until gvt_sync ? Thanks.

My codes are like this: tw_gvt_force_update(); tw_event *e; (the event to be avoided to roll back) tw_event init; tw_event_send(e);

Artlantic avatar Aug 16 '19 03:08 Artlantic

If you cannot rollback events there are a few options: run ROSS in conservative mode (synch=2) or do memcpy() state-saving but remember to undo your rng calls as well.

laprej avatar Aug 19 '19 13:08 laprej

But conservative mode is really inefficient. Some event's result in my simulation may lead to two different direction, causing too large number of events to be roll back. So I think state-saving is not reasonable for me. What's the effect of "tw_gvt_force_update"? Or is there any suggestion? I just want to make the LP blocked until its sequence is right. Thanks.

Artlantic avatar Aug 20 '19 01:08 Artlantic

Hi The problem is any forced Gvt needs to done at an MPI rank level and not LP level and all MPI ranks must participate since MPI collective operations are used to implement the Gvt

It sounds like what you want is a mixed mode scheduler where most LPs are optimistic and a few are conservative and never rollback

Currently ROSS does not support that feature but it could be implemented

Before going further, does that mixed mode approach sound right for your model ??

Thanks Chris

Sent from my iPhone

On Aug 19, 2019, at 9:37 PM, Artlantic [email protected] wrote:

But conservative mode is really inefficient. Some event's result in my simulation may lead to two different direction, causing too large number of events to be roll back. So I think state-saving is not reasonable for me. What's the effect of "tw_gvt_force_update"? Or is there any suggestion? I just want to make the LP blocked until its sequence is right. Thanks.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.

carothersc-zz avatar Aug 20 '19 02:08 carothersc-zz

@carothersc Thanks for your reply. Most events of each LP can roll back, but a few point-events may guide the trace of the simulation.(My events comes from a program, its procedure may vary depending on the result of some events) Could you please give me some suggestion?

Artlantic avatar Aug 20 '19 02:08 Artlantic

@carothersc In some degree, you are right. The "source event generator LPs" (the program) cannot roll back. But they need the results from other LPs to continue.

Artlantic avatar Aug 20 '19 03:08 Artlantic

Is there any sort of doc you can point us to that describes the model you're trying to build ?? That would be helpful in steering suggestions...

Thanks, Chris

On Mon, Aug 19, 2019 at 10:55 PM Artlantic [email protected] wrote:

@carothersc https://github.com/carothersc Thanks for your reply. Most events of each LP can roll back, but a few point-events may guide the trace of the simulation.(My events comes from a program, its procedure may vary depending on the result of some events) Could you please give me some suggestion?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/ROSS-org/ROSS/issues/158?email_source=notifications&email_token=AAHVJE5VM4CQBSWCRYS3UWDQFNMKVA5CNFSM4IMDU6S2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4U4QLQ#issuecomment-522831918, or mute the thread https://github.com/notifications/unsubscribe-auth/AAHVJEYDVZRQ2DXT7QQYFJLQFNMKVANCNFSM4IMDU6SQ .

--

Christopher D. Carothers

Director, Center for Computational Innovations Professor, Department of Computer Science Rensselaer Polytechnic Institute 110 8th Street Troy, New York 12180-3590

e-mail: [email protected] web page: www.cs.rpi.edu/~chrisc http://www.cs.rpi.edu/%7Echrisc phone: (518) 276-2930 fax: (518) 276-4033

carothersc-zz avatar Aug 20 '19 03:08 carothersc-zz

Caitlin - would RISA's data collection services at GVT to help here except that we want them to not collect data but instead push an event into future which is this next source action created by the program ?

Thanks, Chris

On Mon, Aug 19, 2019 at 11:08 PM Christopher D. Carothers < [email protected]> wrote:

Is there any sort of doc you can point us to that describes the model you're trying to build ?? That would be helpful in steering suggestions...

Thanks, Chris

On Mon, Aug 19, 2019 at 10:55 PM Artlantic [email protected] wrote:

@carothersc https://github.com/carothersc Thanks for your reply. Most events of each LP can roll back, but a few point-events may guide the trace of the simulation.(My events comes from a program, its procedure may vary depending on the result of some events) Could you please give me some suggestion?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/ROSS-org/ROSS/issues/158?email_source=notifications&email_token=AAHVJE5VM4CQBSWCRYS3UWDQFNMKVA5CNFSM4IMDU6S2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4U4QLQ#issuecomment-522831918, or mute the thread https://github.com/notifications/unsubscribe-auth/AAHVJEYDVZRQ2DXT7QQYFJLQFNMKVANCNFSM4IMDU6SQ .

--


Christopher D. Carothers

Director, Center for Computational Innovations Professor, Department of Computer Science Rensselaer Polytechnic Institute 110 8th Street Troy, New York 12180-3590

e-mail: [email protected] web page: www.cs.rpi.edu/~chrisc http://www.cs.rpi.edu/%7Echrisc phone: (518) 276-2930 fax: (518) 276-4033


--

Christopher D. Carothers

Director, Center for Computational Innovations Professor, Department of Computer Science Rensselaer Polytechnic Institute 110 8th Street Troy, New York 12180-3590

e-mail: [email protected] web page: www.cs.rpi.edu/~chrisc http://www.cs.rpi.edu/%7Echrisc phone: (518) 276-2930 fax: (518) 276-4033

carothersc-zz avatar Aug 20 '19 03:08 carothersc-zz

Would placing the critical functionality in the tw_event_commit function work? It does support sending events, and is only called once the event will not be rolled back

markplagge avatar Aug 20 '19 03:08 markplagge