Problems in running Pavlovian Conditioning code. #599
-
I’m In-hoi Jeong and I’m MS-Ph.D. student of department of physics in Korea University. “e_e_pop = model.add_synapse_population("EE", "SPARSE_INDIVIDUALG", e_delay, Unfortunately, there is an “RuntimeError: synapseUpdate.cc: 335: cuda error 700: an illegal memory access was encountered”. “CHECK_CUDA_ERRORS(cudaMemcpyToSymbolAsync(d_mergedPresynapticUpdateGroup0, &group, sizeof(MergedPresynapticUpdateGroup0), idx * sizeof(MergedPresynapticUpdateGroup0))” It seems like that the cudaMemcpyToSymbolAsync function try to copy data from memory to gpu but failed because of error code 700. I guess error code 700 means there is a problem with variable type. Thank you very much for your time. |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 8 replies
-
Hi, I think you might have broken it by passing
(no "None") |
Beta Was this translation helpful? Give feedback.
-
Ah ... sorry ... would have been too easy, @neworderofjamie will have a deeper look. |
Beta Was this translation helpful? Give feedback.
So I think your issue is that when you save your EI connectivity at https://github.com/JeongInHoi/data-for-question-genn/blob/main/izhikevich_pavlovian_PB_consolidation0616.py#L240 you add
no_exc
to the postsynaptic indices but, when you load it at https://github.com/JeongInHoi/data-for-question-genn/blob/main/common_PB_consolidation0616.py#L305-L308 you don't subtract this off again, meaning that the connectivity points to non-existent neurons, causing the error you found.Also, your simulations are downloading the connectivity and synaptic weights and writing them to disk extremely frequently. This is very inefficient, especially for the connectivity as it does not change after the mode…