Skip to content

Instantly share code, notes, and snippets.

Created March 12, 2012 20:55
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 anonymous/2024629 to your computer and use it in GitHub Desktop.
Save anonymous/2024629 to your computer and use it in GitHub Desktop.
GDB output for 1.9.3p0, 1.9.3p125
(gdb) run
Starting program: /usr/local/bin/ruby -S rspec -Ilib:ext spec
[Thread debugging using libthread_db enabled]
[New Thread 0xb7b36b70 (LWP 29207)]
NVector
correctly initializes
permits setting and getting contents
NMatrix
correctly sets diagonal values
does not resize until necessary
correctly sets when not resizing
correctly sets when resizing
correctly sets values within rows
correctly gets values within rows
correctly sets values within large rows
correctly gets values within large rows
correctly multiplies two identical yale matrices
correctly multiplies two identical yale matrices where a positive and negative partial sum cancel on the diagonal
correctly transposes
NMatrix
correctly fills dense with individual assignments
correctly fills dense with a single mass assignment
correctly fills dense with a single mass assignment, with dtype specified
correctly exposes cblas_xgemm
correctly exposes cblas_xgemm
list correctly handles missing initialization value
list correctly handles recursive removal
dense correctly handles missing initialization value
dense correctly handles byte*int16 matrix multiplication
dense correctly handles byte*int32 matrix multiplication
dense correctly handles byte*int64 matrix multiplication
dense correctly handles byte*float32 matrix multiplication
dense correctly handles byte*float64 matrix multiplication
dense correctly handles byte*rational64 matrix multiplication
dense correctly handles byte*rational128 matrix multiplication
Program received signal SIGSEGV, Segmentation fault.
0x000067a9 in ?? ()
(gdb) bt
#0 0x000067a9 in ?? ()
#1 0x080fbae0 in st_lookup (table=0xb7f33430, key=42, value=0xbfffddec) at st.c:341
#2 0x0814d0d3 in search_method (id=42, klass=146556312) at vm_method.c:372
#3 rb_method_entry_get_without_cache (id=42, klass=146556312) at vm_method.c:391
#4 rb_method_entry (klass=146556312, id=42) at vm_method.c:424
#5 0x081571a4 in rb_search_method_entry (mid=<optimized out>, recv=3086169136) at vm_eval.c:374
#6 rb_call0 (recv=3086169136, mid=<optimized out>, argc=<optimized out>, argv=0xbfffde80, scope=CALL_FCALL, self=6)
at vm_eval.c:227
#7 0x08157584 in rb_call (scope=CALL_FCALL, argv=0xbfffde80, argc=1, mid=42, recv=3086169136) at vm_eval.c:438
#8 rb_funcall (recv=3086169136, mid=42, n=1) at vm_eval.c:638
#9 0xb7880811 in vgemm (TransA=CblasNoTrans, TransB=CblasNoTrans, M=2, N=4, K=3, alpha=1, A=0x8bc44b8, lda=2, B=0x8bc4528,
ldb=3, beta=3, C=0x8bc4578, ldc=2) at blas.c:130
#10 0xb787ff68 in cblas_vgemm_ (Order=CblasRowMajor, TransA=CblasNoTrans, TransB=CblasNoTrans, p=...)
at ../../../../ext/nmatrix/cblas.c:82
#11 0xb78600c9 in multiply_matrix_dense_casted (casted_storage=..., resulting_shape=0x8bc44f0, vector=false)
at ../../../../ext/nmatrix/nmatrix.c:263
#12 0xb786147f in multiply_matrix (left=0x8bc4468, right=0x8bc4498) at ../../../../ext/nmatrix/nmatrix.c:761
#13 0xb78616df in nm_multiply (left_v=142898060, right_v=142898020) at ../../../../ext/nmatrix/nmatrix.c:806
#14 0x0815b10c in vm_call_cfunc (me=0x83f2920, blockptr=0x0, recv=<optimized out>, num=<optimized out>, reg_cfp=0xb7bb6c40,
th=0x8264b88) at vm_insnhelper.c:404
#15 vm_call_method (th=0x8264b88, cfp=0xb7bb6c40, num=<optimized out>, blockptr=0x0, flag=0, id=42, me=0x83f2920,
recv=142898060) at vm_insnhelper.c:534
#16 0x0815157a in vm_exec_core (th=0x8264b88, initial=<optimized out>) at insns.def:1497
#17 0x08155b49 in vm_exec (th=0x8264b88) at vm.c:1220
#18 0x0815bc79 in vm_yield_with_cref (cref=<optimized out>, argv=0xbfffe3ec, argc=1, th=0x8264b88) at vm.c:647
#19 yield_under (under=<optimized out>, self=142898700, values=6) at vm_eval.c:1217
#20 0x0814ba35 in call_cfunc (func=0x815bde0 <rb_obj_instance_eval>, recv=<optimized out>, len=-1, argc=0, argv=0xb7b37134)
at vm_insnhelper.c:317
#21 0x0815b10c in vm_call_cfunc (me=0x82ae748, blockptr=0x898fd80, recv=<optimized out>, num=<optimized out>,
reg_cfp=0xb7bb6cc4, th=0x8264b88) at vm_insnhelper.c:404
#22 vm_call_method (th=0x8264b88, cfp=0xb7bb6cc4, num=<optimized out>, blockptr=0x898fd80, flag=4, id=2904, me=0x82ae748,
recv=142898700) at vm_insnhelper.c:534
#23 0x0815091b in vm_exec_core (th=0x8264b88, initial=<optimized out>) at insns.def:1015
#24 0x08155b49 in vm_exec (th=0x8264b88) at vm.c:1220
#25 0x0815ba82 in vm_yield (th=<optimized out>, argv=0x0, argc=0) at vm.c:654
#26 rb_yield_0 (argv=0xbfffe730, argc=1) at vm_eval.c:740
#27 rb_yield (val=139155760) at vm_eval.c:750
#28 0x08177942 in rb_ary_collect (ary=139965180) at array.c:2221
#29 0x0815b10c in vm_call_cfunc (me=0x82ca7c8, blockptr=0xb7bb6de0, recv=<optimized out>, num=<optimized out>,
reg_cfp=0xb7bb6dcc, th=0x8264b88) at vm_insnhelper.c:404
#30 vm_call_method (th=0x8264b88, cfp=0xb7bb6dcc, num=<optimized out>, blockptr=0xb7bb6de0, flag=0, id=1568, me=0x82ca7c8,
recv=139965180) at vm_insnhelper.c:534
#31 0x0815091b in vm_exec_core (th=0x8264b88, initial=<optimized out>) at insns.def:1015
#32 0x08155b49 in vm_exec (th=0x8264b88) at vm.c:1220
#33 0x0815ba82 in vm_yield (th=<optimized out>, argv=0x0, argc=0) at vm.c:654
---Type <return> to continue, or q <return> to quit---
#34 rb_yield_0 (argv=0xbfffea10, argc=1) at vm_eval.c:740
#35 rb_yield (val=139100180) at vm_eval.c:750
#36 0x08177942 in rb_ary_collect (ary=145965680) at array.c:2221
#37 0x0815b10c in vm_call_cfunc (me=0x82ca7c8, blockptr=0xb7bb6ebc, recv=<optimized out>, num=<optimized out>,
reg_cfp=0xb7bb6ea8, th=0x8264b88) at vm_insnhelper.c:404
#38 vm_call_method (th=0x8264b88, cfp=0xb7bb6ea8, num=<optimized out>, blockptr=0xb7bb6ebc, flag=0, id=1568, me=0x82ca7c8,
recv=145965680) at vm_insnhelper.c:534
#39 0x0815091b in vm_exec_core (th=0x8264b88, initial=<optimized out>) at insns.def:1015
#40 0x08155b49 in vm_exec (th=0x8264b88) at vm.c:1220
#41 0x081569f5 in rb_vm_invoke_proc (th=0x8264b88, proc=0x8786bc0, self=139780920, argc=0, argv=0x8a559d8, blockptr=0x0)
at vm.c:670
#42 0x0805f428 in rb_proc_call (self=145054180, args=145054160) at proc.c:585
#43 0x08059e78 in rb_call_end_proc (data=145054180) at eval_jump.c:13
#44 0x0805b9b5 in rb_exec_end_proc () at eval_jump.c:126
#45 0x0805ba4a in ruby_finalize_0 () at eval.c:92
#46 0x0805bd98 in ruby_cleanup (ex=0) at eval.c:133
#47 0x0805c191 in ruby_run_node (n=0x83c9454) at eval.c:244
#48 0x080598ca in main (argc=5, argv=0xbffff184) at main.c:38
(gdb) frame 10
#10 0xb787ff68 in cblas_vgemm_ (Order=CblasRowMajor, TransA=CblasNoTrans, TransB=CblasNoTrans, p=...)
at ../../../../ext/nmatrix/cblas.c:82
82 else vgemm(TransB, TransA, p.N, p.M, p.K, p.alpha.v[0], p.B, p.ldb, p.A, p.lda, p.beta.v[0], p.C, p.ldc);
(gdb) frame 9
#9 0xb7880811 in vgemm (TransA=CblasNoTrans, TransB=CblasNoTrans, M=2, N=4, K=3, alpha=1, A=0x8bc44b8, lda=2, B=0x8bc4528,
ldb=3, beta=3, C=0x8bc4578, ldc=2) at blas.c:130
130 for (i = 0; i < M; ++i) C[i+j*ldc] = rb_funcall(C[i+j*ldc], nm_id_mult, 1, beta);
(gdb)
(gdb) run
Starting program: /usr/local/bin/ruby -S rspec -Ilib:ext spec
[Thread debugging using libthread_db enabled]
[New Thread 0xb7b36b70 (LWP 25341)]
NVector
correctly initializes
permits setting and getting contents
NMatrix
correctly sets diagonal values
does not resize until necessary
correctly sets when not resizing
correctly sets when resizing
correctly sets values within rows
correctly gets values within rows
correctly sets values within large rows
correctly gets values within large rows
correctly multiplies two identical yale matrices
correctly multiplies two identical yale matrices where a positive and negative partial sum cancel on the diagonal
correctly transposes
NMatrix
correctly fills dense with individual assignments
correctly fills dense with a single mass assignment
correctly fills dense with a single mass assignment, with dtype specified
correctly exposes cblas_xgemm
correctly exposes cblas_xgemm
list correctly handles missing initialization value
list correctly handles recursive removal
dense correctly handles missing initialization value
dense correctly handles byte*int16 matrix multiplication
dense correctly handles byte*int32 matrix multiplication
dense correctly handles byte*int64 matrix multiplication
dense correctly handles byte*float32 matrix multiplication
dense correctly handles byte*float64 matrix multiplication
dense correctly handles byte*rational64 matrix multiplication
dense correctly handles byte*rational128 matrix multiplication
Program received signal SIGSEGV, Segmentation fault.
0xb7f33480 in main_arena () from /lib/i386-linux-gnu/libc.so.6
(gdb) bt
#0 0xb7f33480 in main_arena () from /lib/i386-linux-gnu/libc.so.6
#1 0x080fc570 in st_lookup (table=0xb7f33490, key=42, value=0xbfffddec) at st.c:341
#2 0x0814e253 in search_method (id=42, klass=3086169232) at vm_method.c:374
#3 rb_method_entry_get_without_cache (id=42, klass=3086169232) at vm_method.c:393
#4 rb_method_entry (klass=3086169232, id=42) at vm_method.c:426
#5 0x081583e4 in rb_search_method_entry (mid=<optimized out>, recv=3086169240) at vm_eval.c:392
#6 rb_call0 (recv=3086169240, mid=<optimized out>, argc=<optimized out>, argv=0xbfffde80, scope=CALL_FCALL, self=6)
at vm_eval.c:228
#7 0x081587c4 in rb_call (scope=CALL_FCALL, argv=0xbfffde80, argc=1, mid=42, recv=3086169240) at vm_eval.c:456
#8 rb_funcall (recv=3086169240, mid=42, n=1) at vm_eval.c:658
#9 0xb7880811 in vgemm (TransA=CblasNoTrans, TransB=CblasNoTrans, M=2, N=4, K=3, alpha=1, A=0x8989990, lda=2, B=0x89da718,
ldb=3, beta=3, C=0x8a6a258, ldc=2) at blas.c:130
#10 0xb787ff68 in cblas_vgemm_ (Order=CblasRowMajor, TransA=CblasNoTrans, TransB=CblasNoTrans, p=...)
at ../../../../ext/nmatrix/cblas.c:82
#11 0xb78600c9 in multiply_matrix_dense_casted (casted_storage=..., resulting_shape=0x8ba63a8, vector=false)
at ../../../../ext/nmatrix/nmatrix.c:263
#12 0xb786147f in multiply_matrix (left=0x8b88358, right=0x8ba6bc0) at ../../../../ext/nmatrix/nmatrix.c:761
#13 0xb78616df in nm_multiply (left_v=138540540, right_v=138540500) at ../../../../ext/nmatrix/nmatrix.c:806
#14 0x0815c404 in vm_call_cfunc (me=0x8b3c4e8, blockptr=0x0, recv=<optimized out>, num=<optimized out>, reg_cfp=0xb7bb6c40,
th=0x8265b88) at vm_insnhelper.c:404
#15 vm_call_method (th=0x8265b88, cfp=0xb7bb6c40, num=<optimized out>, blockptr=0x0, flag=0, id=42, me=0x8b3c4e8,
recv=138540540) at vm_insnhelper.c:534
#16 0x081526fa in vm_exec_core (th=0x8265b88, initial=<optimized out>) at insns.def:1497
#17 0x08156d79 in vm_exec (th=0x8265b88) at vm.c:1220
#18 0x0815cf69 in vm_yield_with_cref (cref=<optimized out>, argv=0xbfffe3ec, argc=1, th=0x8265b88) at vm.c:647
#19 yield_under (under=<optimized out>, self=138541700, values=6) at vm_eval.c:1237
#20 0x0814cbb5 in call_cfunc (func=0x815cfc0 <rb_obj_instance_eval>, recv=<optimized out>, len=-1, argc=0, argv=0xb7b37138)
at vm_insnhelper.c:317
#21 0x0815c404 in vm_call_cfunc (me=0x82af748, blockptr=0x86d4000, recv=<optimized out>, num=<optimized out>,
reg_cfp=0xb7bb6cc4, th=0x8265b88) at vm_insnhelper.c:404
#22 vm_call_method (th=0x8265b88, cfp=0xb7bb6cc4, num=<optimized out>, blockptr=0x86d4000, flag=4, id=2904, me=0x82af748,
recv=138541700) at vm_insnhelper.c:534
#23 0x08151a9b in vm_exec_core (th=0x8265b88, initial=<optimized out>) at insns.def:1015
#24 0x08156d79 in vm_exec (th=0x8265b88) at vm.c:1220
#25 0x0815cd72 in vm_yield (th=<optimized out>, argv=0x0, argc=0) at vm.c:654
#26 rb_yield_0 (argv=0xbfffe730, argc=1) at vm_eval.c:760
#27 rb_yield (val=146677960) at vm_eval.c:770
#28 0x08178d22 in rb_ary_collect (ary=136879860) at array.c:2221
#29 0x0815c404 in vm_call_cfunc (me=0x82cb7c8, blockptr=0xb7bb6de0, recv=<optimized out>, num=<optimized out>,
reg_cfp=0xb7bb6dcc, th=0x8265b88) at vm_insnhelper.c:404
#30 vm_call_method (th=0x8265b88, cfp=0xb7bb6dcc, num=<optimized out>, blockptr=0xb7bb6de0, flag=0, id=1568, me=0x82cb7c8,
recv=136879860) at vm_insnhelper.c:534
#31 0x08151a9b in vm_exec_core (th=0x8265b88, initial=<optimized out>) at insns.def:1015
#32 0x08156d79 in vm_exec (th=0x8265b88) at vm.c:1220
#33 0x0815cd72 in vm_yield (th=<optimized out>, argv=0x0, argc=0) at vm.c:654
---Type <return> to continue, or q <return> to quit---
#34 rb_yield_0 (argv=0xbfffea10, argc=1) at vm_eval.c:760
#35 rb_yield (val=146838080) at vm_eval.c:770
#36 0x08178d22 in rb_ary_collect (ary=143923240) at array.c:2221
#37 0x0815c404 in vm_call_cfunc (me=0x82cb7c8, blockptr=0xb7bb6ebc, recv=<optimized out>, num=<optimized out>,
reg_cfp=0xb7bb6ea8, th=0x8265b88) at vm_insnhelper.c:404
#38 vm_call_method (th=0x8265b88, cfp=0xb7bb6ea8, num=<optimized out>, blockptr=0xb7bb6ebc, flag=0, id=1568, me=0x82cb7c8,
recv=143923240) at vm_insnhelper.c:534
#39 0x08151a9b in vm_exec_core (th=0x8265b88, initial=<optimized out>) at insns.def:1015
#40 0x08156d79 in vm_exec (th=0x8265b88) at vm.c:1220
#41 0x08157c25 in rb_vm_invoke_proc (th=0x8265b88, proc=0x8926b28, self=143042440, argc=0, argv=0x88e84b0, blockptr=0x0)
at vm.c:670
#42 0x0805f488 in rb_proc_call (self=143557820, args=143557800) at proc.c:585
#43 0x08059ed8 in rb_call_end_proc (data=143557820) at eval_jump.c:13
#44 0x0805ba15 in rb_exec_end_proc () at eval_jump.c:126
#45 0x0805baaa in ruby_finalize_0 () at eval.c:92
#46 0x0805bdf8 in ruby_cleanup (ex=0) at eval.c:133
#47 0x0805c1f1 in ruby_run_node (n=0x83ca728) at eval.c:244
#48 0x0805992a in main (argc=5, argv=0xbffff184) at main.c:38
(gdb) frame 9
#9 0xb7880811 in vgemm (TransA=CblasNoTrans, TransB=CblasNoTrans, M=2, N=4, K=3, alpha=1, A=0x8989990, lda=2, B=0x89da718,
ldb=3, beta=3, C=0x8a6a258, ldc=2) at blas.c:130
130 for (i = 0; i < M; ++i) C[i+j*ldc] = rb_funcall(C[i+j*ldc], nm_id_mult, 1, beta);
(gdb)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment