Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Runtime error: SIGSEGV and SIGABRT #1

Open
jinxy17 opened this issue Feb 22, 2021 · 1 comment
Open

Runtime error: SIGSEGV and SIGABRT #1

jinxy17 opened this issue Feb 22, 2021 · 1 comment

Comments

@jinxy17
Copy link

jinxy17 commented Feb 22, 2021

@xqgex Thanks for the code & comments! A great complement to the original paper.
However my server can compile the program but always encounter either SIGSEGV or SIGABRT. Any possible fixes to that?

Best,
X.J.
[email protected]

CPU: 2 * Intel(R) Xeon(R) Gold 6240M CPU @ 2.60GHz
RAM: 6 * 32GB DDR4
OS: Ubuntu 18.04.3 LTS
GDB log:

(gdb) run
The program being debugged has been started already.
Start it from the beginning? (y or n) y
Starting program: /root/xuyangjin/NUMA_Black-Box-master/myprogram
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Analyzing your machine...

Nodes (physical cpu's):        2
Cores per node:                36
Hyperthreading:                ON

Example:
             Node #1                              Node #2
╔═══════╦═══════╦═══════╦═══════╗    ╔═══════╦═══════╦═══════╦═══════╗
║ Core  ║ Core  ║ Core  ║ Core  ┣━━━━┫ Core  ║ Core  ║ Core  ║ Core  ║
╟───────╫───────╫───────╫───────╊━━━━╉───────╫───────╫───────╫───────╢
║ Cache ║ Cache ║ Cache ║ Cache ┣━━━━┫ Cache ║ Cache ║ Cache ║ Cache ║
╟───────╨───────╨───────╨───────╢    ╟───────╨───────╨───────╨───────╢
║             Cache             ║    ║             Cache             ║
╚═════════════┳━┳━┳═════════════╝    ╚═════════════┳━┳━┳═════════════╝
              ┃ ┃ ┃                                ┃ ┃ ┃
┌─────────────┺━┻━┹─────────────┐    ┌─────────────┺━┻━┹─────────────┐
│            Memory             │    │            Memory             │
└───────────────────────────────┘    └───────────────────────────────┘

Press Any Key to Start Simulation

[New Thread 0x7ffff77c4700 (LWP 57725)]
[New Thread 0x7ffff6fc3700 (LWP 57726)]
[New Thread 0x7ffff67c2700 (LWP 57730)]
[New Thread 0x7ffff5fc1700 (LWP 57731)]
[New Thread 0x7ffff57c0700 (LWP 57732)]
[New Thread 0x7ffff4fbf700 (LWP 57733)]
[New Thread 0x7fff9ffff700 (LWP 57734)]
[New Thread 0x7fff9f7fe700 (LWP 57735)]
[New Thread 0x7fff9effd700 (LWP 57736)]
[New Thread 0x7fff9e7fc700 (LWP 57737)]
[New Thread 0x7fff9dffb700 (LWP 57738)]
[New Thread 0x7fff9d7fa700 (LWP 57739)]
[New Thread 0x7fff9cff9700 (LWP 57740)]
[New Thread 0x7fff7bfff700 (LWP 57741)]

Thread 4 "myprogram" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ffff67c2700 (LWP 57730)]
0x0000555555558671 in appendToLog (n=12, batch=0x7fffaa802d58) at NUMAbb.c:737
737                     strcpy(loopEntry->op,batch[i]->slot.op);
(gdb) run
The program being debugged has been started already.
Start it from the beginning? (y or n) y
Starting program: /root/xuyangjin/NUMA_Black-Box-master/myprogram
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Analyzing your machine...

Nodes (physical cpu's):        2
Cores per node:                36
Hyperthreading:                ON

Example:
             Node #1                              Node #2
╔═══════╦═══════╦═══════╦═══════╗    ╔═══════╦═══════╦═══════╦═══════╗
║ Core  ║ Core  ║ Core  ║ Core  ┣━━━━┫ Core  ║ Core  ║ Core  ║ Core  ║
╟───────╫───────╫───────╫───────╊━━━━╉───────╫───────╫───────╫───────╢
║ Cache ║ Cache ║ Cache ║ Cache ┣━━━━┫ Cache ║ Cache ║ Cache ║ Cache ║
╟───────╨───────╨───────╨───────╢    ╟───────╨───────╨───────╨───────╢
║             Cache             ║    ║             Cache             ║
╚═════════════┳━┳━┳═════════════╝    ╚═════════════┳━┳━┳═════════════╝
              ┃ ┃ ┃                                ┃ ┃ ┃
┌─────────────┺━┻━┹─────────────┐    ┌─────────────┺━┻━┹─────────────┐
│            Memory             │    │            Memory             │
└───────────────────────────────┘    └───────────────────────────────┘

Press Any Key to Start Simulation

[New Thread 0x7ffff77c4700 (LWP 57743)]
[New Thread 0x7ffff6fc3700 (LWP 57744)]
[New Thread 0x7ffff67c2700 (LWP 57745)]
[New Thread 0x7ffff5fc1700 (LWP 57746)]
[New Thread 0x7ffff57c0700 (LWP 57747)]
[New Thread 0x7ffff4fbf700 (LWP 57748)]
[New Thread 0x7fff9ffff700 (LWP 57749)]
[New Thread 0x7fff9f7fe700 (LWP 57750)]
[New Thread 0x7fff9effd700 (LWP 57751)]
[New Thread 0x7fff9e7fc700 (LWP 57752)]
[New Thread 0x7fff9dffb700 (LWP 57753)]
[New Thread 0x7fff9d7fa700 (LWP 57754)]
[New Thread 0x7fff9cff9700 (LWP 57755)]
[New Thread 0x7fff7bfff700 (LWP 57756)]
myprogram: ../nptl/pthread_mutex_lock.c:79: __pthread_mutex_cond_lock: Assertion `mutex->__data.__owner == 0' failed.
[New Thread 0x7fff7b7fe700 (LWP 57757)]

Thread 8 "myprogram" received signal SIGABRT, Aborted.
[Switching to Thread 0x7fff9ffff700 (LWP 57749)]
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51      ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
@xqgex
Copy link
Owner

xqgex commented Mar 5, 2021

Hi X.J,
Unfortunately the original paper is missing important parts, I did my best to try to implement it, and posted it publicly in the hope that someone could continue my efforts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants