GeminiGraph
GeminiGraph copied to clipboard
Segmentation fault
Hi! I'm learning to use Gemini and having problems. I downloaded data from #22 and when I run mpirun -n 1 ./sssp scale16_s.bin 65536 39, it returns
=================================================================================== = BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES = PID 13556 RUNNING AT siyuan-Alienware-m15-R6 = EXIT CODE: 139 = CLEANING UP REMAINING PROCESSES = YOU CAN IGNORE THE BELOW CLEANUP MESSAGES
YOUR APPLICATION TERMINATED WITH THE EXIT STRING: Segmentation fault (signal 11) This typically refers to a problem with your application. Please see the FAQ page for debugging suggestions
Then I tried gdb: (gdb) run scale16_s.bin 65536 39 Starting program: /home/user/Documents/GeminiGraph-master/toolkits/sssp scale16_s.bin 65536 39 [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7fabf0f in numa_bitmask_equal () from /lib/x86_64-linux-gnu/libnuma.so.1
(gdb) where
#0 0x00007ffff7fabf0f in numa_bitmask_equal () from /lib/x86_64-linux-gnu/libnuma.so.1
#1 0x00007ffff7facab3 in numa_set_interleave_mask () from /lib/x86_64-linux-gnu/libnuma.so.1
#2 0x0000555555557b9f in Graph
Is there anyone can help me? Thanks a lot!
In my experience, there are two lines code may cause the segmentation fault:
-
nodestring does not end with '\0', it will cause the
numa_parse_nodestringparse error. https://github.com/thu-pacman/GeminiGraph/blob/170e7d36794fdcaca077f23bd0cd76e8ccab9e74/core/graph.hpp#L173 -
dealloc_vertex_arrayfunc not return anything, so it should be void. https://github.com/thu-pacman/GeminiGraph/blob/170e7d36794fdcaca077f23bd0cd76e8ccab9e74/core/graph.hpp#L241
You can modify the code like this way. https://github.com/Sanzo00/GeminiGraph/commit/f2be0a946d0bf66953f0ca1d5472ba45646e1d57 Hope it will help you.