Skip to content

Instantly share code, notes, and snippets.

@elisno

elisno/gdb Secret

Last active February 21, 2019 17:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save elisno/0c6d316d1867b7f3f540eb8789bd837c to your computer and use it in GitHub Desktop.
Save elisno/0c6d316d1867b7f3f540eb8789bd837c to your computer and use it in GitHub Desktop.
Need to interrupt program when calling `main(N=32^2,i=4)`
gdb --args ~/Software/julia-1.1.0/bin/julia ~/CustomGESV.jl/gpugesv.jl
GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-80.el7
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /users/home/els11/Software/julia-1.1.0/bin/julia...done.
(gdb) r
Starting program: /users/home/els11/Software/julia-1.1.0/bin/julia /users/home/els11/CustomGESV.jl/gpugesv.jl
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib64/libthread_db.so.1".
[New Thread 0x2aaab5b0e700 (LWP 16733)]
[New Thread 0x2aaac6de0700 (LWP 16734)]
[New Thread 0x2aaac6fe1700 (LWP 16735)]
[New Thread 0x2aaac91e2700 (LWP 16736)]
[New Thread 0x2aaacb3e3700 (LWP 16737)]
[New Thread 0x2aaacd5e4700 (LWP 16738)]
[New Thread 0x2aaacf7e5700 (LWP 16739)]
[New Thread 0x2aaad19e6700 (LWP 16740)]
[New Thread 0x2aaade9fb700 (LWP 16747)]
[New Thread 0x2aaaef2d9700 (LWP 16763)]
1.124136 seconds (365.61 k CPU allocations: 18.026 MiB, 1.23% gc time) (12 GPU allocations: 656 bytes, 35.12% gc time of which 38.04% spent allocating)
──────────────────────────────────────────────────────────────────────────
Time Allocations
────────────────────── ───────────────────────
Tot / % measured: 3.11s / 8.14% 70.1MiB / 11.6%
Section ncalls time %tot avg alloc %tot avg
──────────────────────────────────────────────────────────────────────────
pooled alloc 12 150ms 59.4% 12.5ms 1.85MiB 22.8% 158KiB
1 try alloc 8 150ms 59.4% 18.8ms 1.85MiB 22.8% 237KiB
background task 2 114ms 45.0% 56.9ms 6.27MiB 77.2% 3.13MiB
scan 2 6.23μs 0.00% 3.12μs - 0.01% -
reclaim 2 4.97μs 0.00% 2.49μs - 0.00% -
──────────────────────────────────────────────────────────────────────────
^C
Program received signal SIGINT, Interrupt.
[Switching to Thread 0x2aaab5b0e700 (LWP 16733)]
0x00002aaaab857741 in pthread_kill () from /usr/lib64/libpthread.so.0
Missing separate debuginfos, use: debuginfo-install glibc-2.17-106.el7_2.8.x86_64
(gdb) bt
#0 0x00002aaaab857741 in pthread_kill () from /usr/lib64/libpthread.so.0
#1 0x00002aaaaad7336d in jl_ignore_sigint () at /buildworker/worker/package_linux64/build/src/signal-handling.c:78
#2 signal_listener (arg=<optimized out>) at /buildworker/worker/package_linux64/build/src/signals-unix.c:625
#3 0x00002aaaab852dc5 in start_thread () from /usr/lib64/libpthread.so.0
#4 0x00002aaaabb5dced in clone () from /usr/lib64/libc.so.6
using CuArrays, CUDAdrv, LinearAlgebra, Test
function gpugesv!(A,b)
A, ipiv = CuArrays.CUSOLVER.getrf!(A)
CuArrays.CUSOLVER.getrs!('N',A,ipiv,b)
return A, b
end
function main(;N=32^2, i=25)
CuArrays.pool_timings!()
CuArrays.@time for _ in 1:i
A = rand(N, N)
b = rand(N)
A_d = CuArray(A)
b_d = CuArray(b)
LAPACK.gesv!(A,b)
CuArrays.@sync A_d, b_d = gpugesv!(A_d, b_d)
@test Array(A_d) ≈ A && Array(b_d) ≈ b
end
CuArrays.pool_timings()
end
main(N=4,i=2)
main(N=32^2,i=4)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment