-
Notifications
You must be signed in to change notification settings - Fork 46
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
about GVT_force_update #158
Comments
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. |
But conservative mode is really inefficient. |
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 ***@***.***> 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 Thanks for your reply. |
@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. |
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 ***@***.***> 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
<#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
----------------------------------------------------------------------------------------------
|
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 ***@***.***>
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
> <#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: ***@***.***
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
----------------------------------------------------------------------------------------------
|
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 |
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);
The text was updated successfully, but these errors were encountered: