Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Sebastian Schmitt
    @schmitts
    at least I tried :)
    Nora Abi Akar
    @noraabiakar
    What's the issue?
    Robin De Schepper
    @Helveg
    Probably trying to pybind profiler_initialize when ARB_WITH_PROFILING=OFF
    eliasmateo95
    @eliasmateo95
    Hi everyone, I'm working with Mario on the ArborIO project. I'm trying to make a synapse between two cells where one cell inhibits the other one at every spike. I've been trying to use arbor.synapse('expsyn') but I cannot find a way. What I want is a small current input on the postsynaptic cell for each presynaptic spike, can any one point me in the right direction? Thanks!
    Nora Abi Akar
    @noraabiakar
    Hi :)
    Are you using this PR? arbor-sim/arbor#1682
    Nora Abi Akar
    @noraabiakar
    If I understand correctly, expsyn should do what you want if you give the connection a negative weight.
    eliasmateo95
    @eliasmateo95
    Yes I am!
    Nora Abi Akar
    @noraabiakar
    Okay.
    What isn't working? Did you place a synapse and try to form a connection that ends on it?
    Sebastian Schmitt
    @schmitts
    Not sure if you want to use expsyn with a negative weight. I would expect to you expsyn with a positive weight but a inhibitory reversal potential.
    Nora Abi Akar
    @noraabiakar
    Okay, good to know, thanks!
    Robin De Schepper
    @Helveg
    The unit tests might have to build a catalogue under MPI, can I assume that the unit tests always have mpi4py available so that I can Barrier? Otherwise I'd require some way to wait for one of the ranks to finish building the catalogue without mpi4py and it seems a bit overkill for unit tests to start with file locking etc if we can just pip install mpi4py
    The communicator that you use for the context is not readable from Python and the mpi_comm has no interface
    Thorsten Hater
    @thorstenhater
    Can't you formulate that as setup/teardown/scaffolding in Python?
    Robin De Schepper
    @Helveg
    build-catalogue should only run on 1 node, otherwise multiple copies being written at the same time might cause IO errors. The other nodes have to wait and meet up
    Even if they do that during setup/teardown, some nodes are going to have to wait an unknown time for the other node to build the catalogue
    I fixed it by just using `mpi4py' though.
    Thorsten Hater
    @thorstenhater
    We test (even w/ MPI) only one node. So, multiple nodes syncing through a shared FS is not an issue.
    Robin De Schepper
    @Helveg
    GHA runners have 2 actual processes, and with --oversubscribe you use 4 MPI processes in the unit tests. They can execute concurrent writes to the same file, right?
    Thorsten Hater
    @thorstenhater
    Yes, I guess the pattern is one of these:
    1. each proc makes their own w/ a unique name
    2. like 1. but after mv into one location (should be atomic)
    3. Master builds rest in Barrier
    4. Have two scripts, one for build cat, one for do tests. Might be my favourite, as we can use this for unit and unit-mpi
    Robin De Schepper
    @Helveg
    I went for (3):
    def _build_cat(name, path):
        from mpi4py.MPI import COMM_WORLD as comm
        build_err = None
        try:
            if not comm.Get_rank():
                subprocess.run(["build-catalogue", name, str(path)], check=True)
            build_err = comm.bcast(build_err, root=0)
        except Exception as e:
            build_err = comm.bcast(e, root=0)
        if build_err:
            raise RuntimeError("Tests can't build catalogues")
        return Path.cwd() / (name + "-catalogue.so")
    Thorsten Hater
    @thorstenhater
    I always feeling like I give up when I resort to shelling out, but sometimes there's no choice.
    Robin De Schepper
    @Helveg
    I mean, how else to use a shell script? :p
    Thorsten Hater
    @thorstenhater
    Well, build-catalogue is a python script ;)
    Robin De Schepper
    @Helveg
    it's not importable :[ the hyphen
    Thorsten Hater
    @thorstenhater
    This is NOT a temptation to do mischief:
    https://docs.python.org/3/library/importlib.html
    Robin De Schepper
    @Helveg
    😅 I was hoping we'd just leave it at "not importable" and shake on a shell out like gentlemen ;p
    Thorsten Hater
    @thorstenhater
    We can just put a rug over the whole affair and pretend I never said that.
    FranciscoD
    @sanjay_ankur:matrix.org
    [m]
    @thorstenhater: here's the invite to the COMBINE slack, where there's a #neuroml channel: https://join.slack.com/t/combine-workspace/shared_invite/zt-wf7ndwqv-gkYW63umvtBdPBHgWscR3w
    We've also got https://gitter.im/NeuroML/community set up, but we haven't officially moved to it yet
    Ankur Sinha
    @sanjayankur31
    Last link, to the upcoming COMBINE meeting: https://combine-org.github.io/events/ (I think Padraig said he'll send out an e-mail about the NeuroML developer workshop too)
    Brent Huisman
    @brenthuisman
    @sanjayankur31 Thanks for the invite!
    Thorsten Hater
    @thorstenhater
    @sanjayankur31 Thank you very much and see you there.
    Brent Huisman
    @brenthuisman
    Hi @all, I'd like to bring your attention to the slightly improved Issue templates when you file one at https://github.com/arbor-sim/arbor/issues/new/choose
    Issues are not just for bugs, we use them also for Feature Requests. When you do, make sure you add/remove the relevant labels. There are also two priority labels, which you can use to signal your urgency and desire for a timeline on addressing the issue. From now on, I'll be making sure you have a reply in a timely fashion.
    Sebastian Schmitt
    @schmitts
    @brent Thanks!
    Robin De Schepper
    @Helveg
    Can anyone add labels to their own issues? Usually I don't have permission to do that on GitHub repo's
    2 replies
    Padraig Gleeson
    @pgleeson
    Thanks @brenthuisman @thorstenhater, hope to see you there (more details at https://docs.neuroml.org/Events/202109-COMBINE.html). Would one of you (or @halfflat or @bcumming or @noraabiakar) be happy to give a 5 min intro to Arbor, and briefly mention the curretn/future plans for NeuroML support?
    Thorsten Hater
    @thorstenhater
    I will likely join out of interest (despite the unfortunate overlap with the eBrains summit) and can talk about Arbor and its (upcoming) NML support.
    @brenthuisman let's hash out who goes where.
    Nora Abi Akar
    @noraabiakar
    I also have a conflict with 2 events that are happening next week and I likely won't be able to attend. I think @thorstenhater is anyway the person I would go to for planned arbor NML support.
    Robin De Schepper
    @Helveg

    PSA: Once arbor-sim/arbor#1693 is merged all Python unit tests must follow the unittest naming conventions:

    • test_<my_test_file>.py
    • Test<MyTestCase>(unittest.TestCase):
    • With inside you can have multiple test_<my_test_function>

    It's important that test files start with test_, test cases start with Test and test functions with test_

    Thorsten Hater
    @thorstenhater
    Could you add this to the dev guidelines?
    Robin De Schepper
    @Helveg
    where are they?
    doc/internals?
    Thorsten Hater
    @thorstenhater
    Internals yes, or there's the contribution guidelines.
    Robin De Schepper
    @Helveg
    doc/contrib/test.rst seems like the best fit
    1 reply
    I think options.py can also be burned now, right? Or is there still a use case for CLI args in the tests, not covered by theunittest CLI itself?
    Thorsten Hater
    @thorstenhater
    I don't think it's needed anymore
    Brent Huisman
    @brenthuisman
    Hi @all, we have a "Projects" page up on the website. We'll gather interesting side-projects and put them up here. Target audience: PhDs or Postdocs looking for a (side-)project, or Master students looking for a thesis-project.
    Have a look at: https://arbor-sim.org/projects/
    If you have an idea for such a project, do get in touch!