Dear NEST Community,
I hope this email finds you well. I am encountering some challenges
while attempting to compile the NEST simulator on an openSUSE machine. I
am using the provided CMake command, which has worked successfully on my
Ubuntu machine with the required libraries and environment loaded.
However, on the openSUSE machine, the compilation process fails with an
error related to the <mach-o/dyld.h> header, which seems specific to macOS.
The CMake command I am using is as follows:
```
conda activate python_for_nest
module load gsl/2.6 openmpi/cxx-4.1.1
cmake -Dwith-python=ON \
-Dwith-gsl=ON \
-Dwith-openmp=ON \
-DMPI_CXX_COMPILER=$(which mpic++) \
-DMPI_C_COMPILER=$(which mpicc) \
-Dwith-mpi=ON \
-DCMAKE_INSTALL_PREFIX:PATH=${PREFIX} ${SRC}
```
The error messages I encounter during the compilation are as follows,
all mach-related:
```
Building C object CMakeFiles/cmTC_4dc4e.dir/HAVE_MACH_O_DYLD_H.c.o
/usr/bin/cc -o CMakeFiles/cmTC_4dc4e.dir/HAVE_MACH_O_DYLD_H.c.o -c
/home/espinoza/opt/nest/master/nest-simulator-build/CMakeFiles/CheckIncludeFiles/HAVE_MACH_O_DYLD_H.c
/home/espinoza/opt/nest/master/nest-simulator-build/CMakeFiles/CheckIncludeFiles/HAVE_MACH_O_DYLD_H.c:2:10:
fatal error: mach-o/dyld.h: No such file or directory
2 | #include <mach-o/dyld.h>
| ^~~~~~~~~~~~~~~
compilation terminated.
gmake[1]: *** [CMakeFiles/cmTC_4dc4e.dir/build.make:85:
CMakeFiles/cmTC_4dc4e.dir/HAVE_MACH_O_DYLD_H.c.o] Fehler 1
gmake[1]: Verzeichnis
„/home/espinoza/opt/nest/master/nest-simulator-build/CMakeFiles/CMakeTmp“
wird verlassen
gmake: *** [Makefile:140: cmTC_4dc4e/fast] Fehler 2
```
From my understanding, `<mach-o/dyld.h>` is primarily used for macOS,
and its absence on openSUSE is causing the compilation error.
I kindly request any hint or advice for resolving this issue. Is there
any way I can modify the CMake command or the environment to ensure
successful compilation on the openSUSE machine? Additionally, if there
are any specific libraries or configurations that need to be adjusted
for openSUSE, I would greatly appreciate your guidance.
To further investigate the issue, I will attach the `CMakeError.log` and
`CMakeOutput.log` files to this email.
Thank you very much for your time and support. Any insights or
suggestions you can provide will be invaluable in resolving this problem.
Best regards,
Jesús Espinoza
--
Jesús Espinoza
Bergische Universität Wuppertal
Fakultät für Mathematik und Naturwissenschaften Wissenschaftliches
Rechnen und Hochleistungsrechnen Gaußstraße 20
42119 Wuppertal
Germany
E-Mail: espinozavalverd{at}uni-wuppertal.de
Hello everyone,
I am writing to the NEST mailing list as I have encountered an issue in
my simulation script, and I would greatly appreciate your insights.
The problem I am facing is that the membrane potential time course for a
simulation with a fixed indegree seems to be dependent on the number of
virtual processes (`total_num_virtual_procs`). Interestingly, this
behavior does not occur for simulations with all-to-all connectivity.
The simulation involves a network with the following architecture: 5
`spike_generator` nodes connected to 5 `parrot_neuron` nodes with
(all-to-all), which are further connected to 5 `iaf_psc_delta` neurons
(all-to-all). The connections between the `iaf_psc_delta` neurons have
an `fixed_indegree` of 2. A voltmeter is used to monitor the membrane
potentials of these 5 neurons, and the simulation runs for 100 ms.
The issue arises when I vary the number of virtual processes
(`total_num_virtual_procs`). I have tested the values 1, 2, and 4, and I
have noticed that the plot of the membrane potentials at the end of the
simulation differs for each `total_num_virtual_procs` value.
Additionally, when I print the table of connections, I observe that the
weights between the `iaf_psc_delta` neurons are also influenced by the
number of virtual processes.
I have attached the simulation script and three images showing the plot
for each `total_num_virtual_procs` value. The experiments were conducted
on my personal Ubuntu machine.
The version of NEST that I am using is the latest at the time of writing
this message, with commit `b9514cce789fb0b2c0dfbd9d0894d3986f743021`,
authored by Abigail Morrison <morrison(a)fz-juelich.de> on Tue Jul 18
23:46:22 2023 +0200.
I would be grateful for any suggestions or explanations regarding this
issue, as it hinders the reproducibility of my results.
Thank you in advance for your valuable help and support.
Best regards,
Jesus Espinoza.
--
Jesús Espinoza
Bergische Universität Wuppertal
Fakultät für Mathematik und Naturwissenschaften Wissenschaftliches
Rechnen und Hochleistungsrechnen Gaußstraße 20
42119 Wuppertal
Germany
E-Mail: espinozavalverd{at}uni-wuppertal.de
Hello,
when running code generator(NESTCodeGeneratorUtils.generate_code_for), I
encounter an error:
-- The CXX compiler identification is unknown
CMake Error at CMakeLists.txt:95 (project):
The CMAKE_CXX_COMPILER:
/home/conda/feedstock_root/build_artifacts/nest-simulator_1633676998878/_build_env/bin/x86_64-conda-linux-gnu-c++
is not a full path to an existing compiler tool.
Tell CMake where to find the compiler by setting either the environment
variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path
to the compiler, or to the compiler name if it is in the PATH.
I have tried to set CXX variable to one of the compilers I have on the
system, but it did not work. I don't know how to set
CMAKE_CXX_COMPILER in this context. Maybe someone could give me an
advice on that?
Best regards,
--
Stefan
Dear NEST Users & Developers!
I would like to invite you to our next fortnightly Open NEST Developer Video Conference, today
Monday July 17, 11.30-12.30 CEST (UTC+2).
Also as usual, in the Project team round, a contact person of each team will give a short statement summarizing ongoing work in the team and cross-cutting points that need discussion among the teams. The remainder of the meeting we would go into a more in-depth discussion of topics that came up on the mailing list or that are suggested by the teams.
Feel free to join the meeting also if it's just to bring your own quick questions for direct discussion in the in-depth section.
Agenda
* Welcome
* Review of NEST User Mailing List
* Project team round
* In-depth discussion
The agenda for this meeting is also available online, see
https://github.com/nest/nest-simulator/wiki/2023-07-17-Open-NEST-Developer-…
Looking forward to seeing you!
Cheers,
Dennis Terhorst
------------------
Log-in information
------------------
We use a virtual conference room provided by DFN (Deutsches Forschungsnetz).
You can use the web client to connect. We however encourage everyone to
use a headset for better audio quality or even a proper video
conferencing system (see below) or software when available.
Web client
* Visit https://conf.dfn.de/webapp/conference/97938800
* Enter your name and allow your browser to use camera and microphone
* The conference does not need a PIN to join, just click join and you're in.
In case you see a dfnconf logo and the phrase "Auf den
Meetingveranstalter warten", just be patient, the meeting host needs to
join first (a voice will tell you).
VC system/software
How to log in with a video conferencing system, depends on you VC system
or software.
- Using the H.323 protocol (eg Polycom): vc.dfn.net##97938800 or
194.95.240.2##97938800
- Using the SIP protocol:97938800@vc.dfn.de
- By telephone: +49-30-200-97938800
For those who do not have a video conference system or suitable
software, Polycom provides a pretty good free app for iOS and Android,
so you can join from your tablet (Polycom RealPresence Mobile, available
from AppStore/PlayStore). Note that firewalls may interfere with
videoconferencing in various and sometimes confusing ways.
For more technical information on logging in from various VC systems,
please see http://vcc.zih.tu-dresden.de/index.php?linkid=1.1.3.4
Hello everyone,
just a small question about NESML.
I would like to cast a variable from float to integer in the onReceive
block of a custom synapse model. Is there an easy way to do that? Can't
find anything in documentation about that.
Thank you!
Chiara
Dear NEST Users & Developers!
I would like to invite you to our next fortnightly Open NEST Developer Video Conference, today
Monday July 3, 11.30-12.30 CEST (UTC+2).
Also as usual, in the Project team round, a contact person of each team will give a short statement summarizing ongoing work in the team and cross-cutting points that need discussion among the teams. The remainder of the meeting we would go into a more in-depth discussion of topics that came up on the mailing list or that are suggested by the teams.
Special topic today will be a discussion on dependency management.
Feel free to join the meeting also if it's just to bring your own quick questions for direct discussion in the in-depth section.
Agenda
* Welcome
* Review of NEST User Mailing List
* Project team round
* In-depth discussion
The agenda for this meeting is also available online, see
https://github.com/nest/nest-simulator/wiki/2023-07-03-Open-NEST-Developer-…
Looking forward to seeing you!
Cheers,
Dennis Terhorst
------------------
Log-in information
------------------
We use a virtual conference room provided by DFN (Deutsches Forschungsnetz).
You can use the web client to connect. We however encourage everyone to
use a headset for better audio quality or even a proper video
conferencing system (see below) or software when available.
Web client
* Visit https://conf.dfn.de/webapp/conference/97938800
* Enter your name and allow your browser to use camera and microphone
* The conference does not need a PIN to join, just click join and you're in.
In case you see a dfnconf logo and the phrase "Auf den
Meetingveranstalter warten", just be patient, the meeting host needs to
join first (a voice will tell you).
VC system/software
How to log in with a video conferencing system, depends on you VC system
or software.
- Using the H.323 protocol (eg Polycom): vc.dfn.net##97938800 or
194.95.240.2##97938800
- Using the SIP protocol:97938800@vc.dfn.de
- By telephone: +49-30-200-97938800
For those who do not have a video conference system or suitable
software, Polycom provides a pretty good free app for iOS and Android,
so you can join from your tablet (Polycom RealPresence Mobile, available
from AppStore/PlayStore). Note that firewalls may interfere with
videoconferencing in various and sometimes confusing ways.
For more technical information on logging in from various VC systems,
please see http://vcc.zih.tu-dresden.de/index.php?linkid=1.1.3.4
Hello Anno and Willem,
thank you for your replies. Anno's description of the problem is exactly
what I was trying to express. It's too bad that generating connectivity
like this can not be achieved as easily as I had hoped. Either way, that
answers my question.
The reference to the blue brain project is very interesting. Their work
seems to be relevant to several of my problems. Thank you both :)
Kind regards,
Jona
I want to initialize a network with some random connectivity, following
some standard connectivity rules, like is achieved by standard use of the
nest.Connect function.Then I want to make several runs of this network,
with the same connectivity. I learned however that this is not a
straightforward thing to do repeated runs of the same network in NEST.
Although I saw different solutions online, it is not clear that there is a
'standard' solution for how to achieve this goal of just initializing the
network with the same connectivity several times, which seems fairly
simple. This link
<https://nest-simulator.readthedocs.io/en/stable/auto_examples/store_restore…>
here, for example, shows how to store and restore a network, but it seems
like overshoot for my purpose (the described problem is a network with
plasticity). I also thought of creating a network, extract the
connectivity, and then impose this connectivity in new networks, following
what is explained here
<https://nest-simulator.readthedocs.io/en/v3.4/synapses/connection_managemen…>
in the 'Connecting sparse matrices with array indexing' section, but it's a
bit tedious to implement (I started implementing it) and error prone.
The alternative I'm thinking of now is to just re create the network on
each pass of my loop with standard NEST functions, but giving the same
random seed to NEST before making the connectivity each time. After the
connectivity is done, I'd pass a new random seed, sampled from numpy's
random number generator, and so each simulation would be a different repeat.
I was wondering whether this very simple approach I propose would work, or
whether I'm missing something.
Thanks
Hello Anno,
thank you for your reply. Not sure what using compartments entails, but I'm
guessing I only need distance dependent connection probabilities. The
probability should be 1 if a dendrite is close enough to a given neuron and
0 otherwise.
Another point that may be relevant: it should be possible to have multiple
connections between a pair of neurons. Each connection should be able to
learn with a variation of STDP. Is this supported by default?
Kind regards,
Jona