Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 16:43
    nightlark synchronize #1749
  • 16:43

    nightlark on helics3-code-cov

    Default to Coverage tests unles… (compare)

  • Mar 07 21:38
    nightlark opened #1749
  • Mar 07 21:37

    nightlark on helics3-code-cov

    Add code coverage build for HEL… (compare)

  • Mar 06 22:36
    kdheepak opened #1748
  • Mar 05 21:13
    kdheepak labeled #1747
  • Mar 05 21:13
    kdheepak opened #1747
  • Mar 02 22:00
    trevorhardy commented #1746
  • Mar 02 21:58
    trevorhardy commented #1746
  • Mar 02 20:34
    github-actions[bot] synchronize #1737
  • Mar 02 20:34

    github-actions[bot] on update-message_on_init

    Merge ebc2a329713d18dd784f2165c… Automated formatting of repo fi… (compare)

  • Mar 02 20:32
    phlptp synchronize #1717
  • Mar 02 20:32

    phlptp on message_on_init

    Work out details in FilterFeder… (compare)

  • Mar 02 19:40
    kdheepak commented #1746
  • Mar 02 17:47
    trevorhardy edited #1746
  • Mar 02 17:42
    trevorhardy labeled #1746
  • Mar 02 17:42
    trevorhardy opened #1746
  • Feb 25 19:57

    nightlark on develop

    Pin Linux release build Docker … Merge pull request #1742 from G… (compare)

  • Feb 25 19:57
    nightlark closed #1742
  • Feb 25 19:55

    nightlark on pin-precommit-hooks-jumanjihouse-latest

    (compare)

manoj1195
@manoj1195
Hi. Is there any data size limit when transferring data through helics messages? I'm using zmq core.
Philip Top
@phlptp
Not on ZMQ. The TCP, UDP, and interprocess cores do, but there are plans to resolve those limits at some point (not sure on timeline)
manoj1195
@manoj1195
So, I'm transferring about 32 MB of data from one process to another. But only 16MB of data is received on the other end. Can this be a bug if there is no data size limit?
Philip Top
@phlptp
not sure never tried sending that much
FredericSabot
@FredericSabot

@phlptp When I adapted the code for octave, I had to do the following modification in s_simu_fedmessage_ns3_hvdc.m lines 497 and 507

initstring = '2 --name=mainbroker';
[...]
broker = helics.helicsCreateBroker('zmq', '', initstring);

Was replaced by

broker = helics.helicsCreateBroker('zmq', '', ''--federates=2 --name=mainbroker');

This seemed reasonable, but maybe that's what causes the issue.

Philip Top
@phlptp
I think that initstring needs updating. The 2 as a positional argument hasn't worked since HELICS 2.0 was introduced.
what version of octave are you using and what OS?
FredericSabot
@FredericSabot
I am using Octave 5.2.0 on Ubuntu 20.04.2
Dheepak Krishnamurthy
@kdheepak
@phlptp I'm getting the following warning at the last time step of a co-simulation.
[2021-03-05 09:33:01.900] [console] [warning] JuliaFederate (131073) (0)::Time mismatch detected granted time >requested time 9223372036.854776 vs 864000.0
Any suggestions on how to avoid this? Is this an issue in HELICS or in usage?
Philip Top
@phlptp
I think I fixed that in master or one of the branches I am working on. It is a spurious warning
Dheepak Krishnamurthy
@kdheepak
The current time granted by HELICS is also 9.223372036854774e9
I'm using this in Julia, so I haven't been able to test on master.
Philip Top
@phlptp
that implies the co-simulation has completed
Dheepak Krishnamurthy
@kdheepak
Why wouldn't it return the requested time in this case?
Users will have to write additional code in their timing loop to handle this case.
Philip Top
@phlptp
I will take a look
If you make a request after the co-sim has terminated you would get that condition
Dheepak Krishnamurthy
@kdheepak
Would you like me to file a feature request for this?
Philip Top
@phlptp
A test case that fails would be even better
Dheepak Krishnamurthy
@kdheepak
I have one in Julia right now, but it's too complicated to share on github. I'll make a simplified version and post an issue.
Dheepak Krishnamurthy
@kdheepak
I'm having connectivity issues.
Philip Top
@phlptp
Had someone at LLNL ask about Jupyter notebooks and HELICS, Should I point them to the PES demo we did or is there anything else that might be better or supplemental?
Mark Eberlein
@eberleim
@phlptp I'm trying to run a query on a federation in helics-cli where the observer federate has stopped at a timestep, but keep getting [2021-03-05 12:01:50.300] [console] [warning] commWarning||22124-NKOoN-Z16Li-jV1bp-HtTkS (1)::unknown route and no broker, dropping message query:From 1879048192 and it seems like the rest of the federation has run to completion, which I think is the cause. is there a flag that forces lockstep, or another way to query a specific federate at a specific time interval if it has left?
Philip Top
@phlptp
That would seem to indicate the rest of the co-simulation has terminated
Mark Eberlein
@eberleim
I believe that is the case, yes. I do not want that to happen, but do not know how to stop it. the other federates do not strictly subscribe to the __observer__ so it has no way to stop them from proceeding.
Philip Top
@phlptp
In which case the remaining federate is likely disconnected, though you should have received some notification of that though the timestamp or other exception
you may be able to use the global time block to halt it at a specific time
Do you have access to the broker programmatically?
Mark Eberlein
@eberleim
yes. the broker is running within the observer process.
Philip Top
@phlptp
helicsBrokerSetTimeBarrier(helics_broker broker, helics_time barrierTime, helics_error* err) is the C function to use
and clearTimeBarrier when you want to continue
Mark Eberlein
@eberleim
in the pythonic interface, can that be set with set_global()?
Philip Top
@phlptp
no
is that function not in the pythonic interface?
If not that would be a question for @kdheepak
Mark Eberlein
@eberleim
the old h.helicsBrokerSetTimeBarrier does exist, but there does not seem to be a setTimeBarrier within the broker class. for now, I'll set it using the old style.
Mark Eberlein
@eberleim
@phlptp follow up question. That was causing new issues I didn't want to face, so I'm trying to simply add __observer__ as a dependency manually to each federate in the federation using h.helicsGetFederateByName and h.helicsFederateAddDependency but keep getting Caught exception: [-4] Test_Federate_sub_trans is not an active federate identifier
Philip Top
@phlptp
which federate are you calling that from?
if you are trying to get a handle to federates not created in the local process that won't work
Mark Eberlein
@eberleim
okay, that won't work then. I'll go back to the time barrier and adjust order of operations. first attempt resulted in a process that never ingested messages from the web server because it waited until a time grant before attempting to pull from the web api queue.
Dheepak Krishnamurthy
@kdheepak
@phlptp when there's duplicate federate names, the error that is reported is duplicate broker found.
I'm experiencing this in Python and Julia
Philip Top
@phlptp
ok, that will hopefully be an easy fix
Dheepak Krishnamurthy
@kdheepak
Should I open an issue for this?
Philip Top
@phlptp
yeah, would be good to track it
Dheepak Krishnamurthy
@kdheepak
Mark Eberlein
@eberleim
@phlptp I got it working with global time barrier, the only issue I'm having now is when I release the barrier with helicsBrokerClearTimeBarrier all the federates crash with [2021-03-05 13:20:15.617] [console] [warning] Test_Federate_sub_trans (131073) (0)::Time mismatch detected granted time >requested time 9223372036.854776 vs 900
and then File "/home/eber205/develop/pyhelics/helics/capi.py", line 6442, in helicsPublicationPublishDouble raise HelicsException("[" + str(err.error_code) + "] " + ffi.string(err.message).decode()) helics.capi.HelicsException: [-10] publications not allowed outside of execution and initialization state
Philip Top
@phlptp
Hmmm might be a bug in the time barrier, it is a pretty new feature