ddd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ddd bad performance


From: lyman wang
Subject: Re: ddd bad performance
Date: Mon, 17 May 2004 16:06:39 +0800

Here is the trace.

Most of the time spend on  "list" operation.

=============================

 

GNU DDD 3.3.8 (i686-pc-linux-gnu)
Copyright (C) 1995-1999 Technische Universität Braunschweig, Germany.
Copyright (C) 1999-2001 Universität Passau, Germany.
Copyright (C) 2001 Universität des Saarlandes, Germany.

Compiled with GCC 3.3.3, GNU libc 2.2
Requires X11R6, Xt11R6, Motif 2.2.3 (Motif Version 2.2.2)
Includes XPM 3.4.11, Athena Panner (7000002L), DDD core
$  ddd --trace terminal_t
+  /bin/sh -c 'exec gdb -q -fullname '\''terminal_t'\'''
#  Hello, world!
#  Starting GDB...
#  Enabling core dumps...
#  Enabling core dumps...done.
gdb: grantpt /dev/ttyp3: Exec format error
#  Running GDB (pid 23585, tty /dev/ttyp3)...
#  Current language: C/C++
#  Searching "vsllib/ddd.vsl"...
#  Trying "/home/lmwang/.ddd/vsllib/ddd.vsl"
#  Trying "/usr/local/share/ddd-3.3.8/vsllib/ddd.vsl"
#  Searching "vsllib/ddd.vsl"..."/usr/local/share/ddd-3.3.8/vsllib/ddd.vsl".
<- "(gdb) "
-> "set prompt (gdb) \n"
<- "(gdb) "
-> "set height 0\n"
<- "(gdb) "
-> "set width 0\n"
<- "(gdb) "
-> "set annotate 1\n"
<- "(gdb) "
-> " set verbose off\n"
<- "(gdb) "
-> "info line\n"
<- "No line number information available.\n"
<- "(gdb) "
-> "list\n"
<- "25\t/*======================================================*/\n"
   "26\tint main(int argc, char* argv[])\n"
   "27\t{\n"
   "28\t\n"
   "29\tT_OASIS_HEADER\t\toasis_header;\n"
   "30\t\n"
   "31\t\t/*------------------*/\n"
   "32\t\t/* SIGSEGV redirect */\n"
   "33\t\t/*------------------*/\n"
   "34\t\tsignal(SIGSEGV,end_sigsegv);\n"
<- "(gdb) "
-> "info line\n"
<- "Line 34 of \"/vobs/lead_telecom/telecom_simulation/mlight/src/mlight_main.c\" starts at address 0x7ca466 <main+6> and ends at 0x7ca478 <main+24>.\n"
   "\032\032/vobs/lead_telecom/telecom_simulation/mlight/src/mlight_main.c:34:695:beg:0x7ca466\n"
   "(gdb) "
-> "output 4711\n"
<- "4711(gdb) "
-> "show language\n"
<- "The current source language is \"auto; currently c\".\n"
   "(gdb) "
-> "show version\n"
<- "GNU gdb 6.0\n"
   "Copyright 2003 Free Software Foundation, Inc.\n"
   "GDB is free software, covered by the GNU General Public License, and you are\n"
   "welcome to change it and/or distribute copies of it under certain conditions.\n"
   "Type \"show copying\" to see the conditions.\n"
   "There is absolutely no warranty for GDB.  Type \"show warranty\" for details.\n"
   "This GDB was configured as \"i686-pc-linux-gnu\".\n"
   "(gdb) "
-> "pwd\n"
<- "Working directory /vobs/oasisext_main/mobile_th4p_linux/tst.\n"
   "(gdb) "
-> "info breakpoints\n"
<- "No breakpoints or watchpoints.\n"
   "(gdb) "
-> "show history filename\n"
<- "The filename in which to record the command history is \"/vobs/oasisext_main/mobile_th4p_linux/tst/.gdb_history\".\n"
   "(gdb) "
-> "show history size\n"
<- "The size of the command history is 256.\n"
   "(gdb) "
#  Reading file "/vobs/lead_telecom/telecom_simulation/mlight/src/mlight_main.c"...
#  Reading file "/vobs/lead_telecom/telecom_simulation/mlight/src/mlight_main.c"...done.
#  File "/vobs/lead_telecom/telecom_simulation/mlight/src/mlight_main.c" 155 lines, 5032 characters
#  Setting buttons...
#  Setting buttons...done.
-> "set confirm off\n"
<- "(gdb) "
-> "source /tmp/dddw0O12Y\n"
<- "(gdb) "
-> "info breakpoints\n"
<- "No breakpoints or watchpoints.\n"
   "(gdb) "
-> "info source\n"
<- "Current source file is /vobs/lead_telecom/telecom_simulation/mlight/src/mlight_main.c\n"
   "Compilation directory is /vobs/oasisext_main/mobile_th4p_linux/tst/\n"
   "Located in /vobs/lead_telecom/telecom_simulation/mlight/src/mlight_main.c\n"
   "Contains 155 lines.\n"
   "Source language is c.\n"
   "Compiled with stabs debugging format.\n"
   "Does not include preprocessor macro info.\n"
   "(gdb) "
-> "# reset\n"
<- "(gdb) "
-> "info breakpoints\n"
<- "No breakpoints or watchpoints.\n"
   "(gdb) "
-> "display\n"
<- "(gdb) "
-> "info display\n"
<- "There are no auto-display expressions now.\n"
   "(gdb) "
-> "set environment TERM dumb\n"
<- "(gdb) "
-> "info files\n"
<- "Symbols from \"/vobs/oasisext_main/mobile_th4p_linux/tst/terminal_t\".\n"
   "Local exec file:\n"
   "\t`/vobs/oasisext_main/mobile_th4p_linux/tst/terminal_t\', file type elf32-i386.\n"
   "\tEntry point: 0x133c0\n"
   "\t0x000100f4 - 0x00010107 is .interp\n"
   "\t0x00010108 - 0x00010128 is .note.ABI-tag\n"
   "\t0x00010128 - 0x00010988 is .hash\n"
   "\t0x00010988 - 0x00011a78 is .dynsym\n"
   "\t0x00011a78 - 0x00012968 is .dynstr\n"
   "\t0x00012968 - 0x00012b86 is .gnu.version\n"
   "\t0x00012b88 - 0x00012bc0 is .gnu.version_d\n"
   "\t0x00012bc0 - 0x00012c50 is .gnu.version_r\n"
   "\t0x00012c50 - 0x00012e78 is .rel.dyn\n"
   "\t0x00012e78 - 0x000133a0 is .rel.plt\n"
   "\t0x000133a0 - 0x000133b8 is .init\n"
   "\t0x000133c0 - 0x00b2e254 is .text\n"
   "\t0x00b2e254 - 0x00b2e272 is .fini\n"
   "\t0x00b2e280 - 0x01065e41 is .rodata\n"
   "\t0x01076000 - 0x010b0bfc is .data\n"
   "\t0x010b0bfc - 0x0118de0c is .eh_frame\n"
   "\t0x0118de0c - 0x011910bc is .gcc_except_table\n"
   "\t0x011910bc - 0x011911f4 is .dynamic\n"
   "\t0x011911f4 - 0x011912a8 is .ctors\n"
<- "\t0x011912a8 - 0x01191348 is .dtors\n"
   "\t0x01191348 - 0x01191da8 is .plt\n"
   "\t0x01191da8 - 0x01192138 is .got\n"
   "\t0x01192140 - 0x039217d0 is .bss\n"
   "(gdb) "
-> "info program\n"
<- "The program being debugged is not being run.\n"
   "(gdb) "
-> "help detach\n"
<- "Detach a process or file previously attached.\n"
   "If a process, it is no longer traced, and it continues its execution.  If\n"
   "you were debugging a file, the file is closed and gdb no longer accesses it.\n"
<- "(gdb) "
#  Starting GDB...done.
#  Welcome to DDD 3.3.8 "Cinnamon" (i686-pc-linux-gnu)
-> "help run\n"
<- "Start debugged program.  You may specify arguments to give it.\n"
   "Args may include \"*\", or \"[...]\"; they are expanded using \"sh\".\n"
   "Input and output redirection with \">\", \"<\", or \">>\" are also allowed.\n"
   "\n"
   "With no arguments, uses arguments last specified (with \"run\" or \"set args\").\n"
   "To cancel previous arguments and run with no arguments,\n"
   "use \"set args\" without arguments.\n"
   "(gdb) "
-> "help step\n"
<- "Step program until it reaches a different source line.\n"
   "Argument N means do this N times (or till program stops for another reason).\n"
   "(gdb) "
-> "help stepi\n"
<- "Step one instruction exactly.\n"
   "Argument N means do this N times (or till program stops for another reason).\n"
   "(gdb) "
-> "help next\n"
<- "Step program, proceeding through subroutine calls.\n"
   "Like the \"step\" command as long as subroutine calls do not happen;\n"
   "when they do, the call is treated as one instruction.\n"
   "Argument N means do this N times (or till program stops for another reason).\n"
   "(gdb) "
-> "help nexti\n"
<- "Step one instruction, but proceed through subroutine calls.\n"
   "Argument N means do this N times (or till program stops for another reason).\n"
   "(gdb) "
-> "help until\n"
<- "Execute until the program reaches a source line greater than the current\n"
   "or a specified location (same args as break command) within the current frame.\n"
   "(gdb) "
-> "help finish\n"
<- "Execute until selected stack frame returns.\n"
   "Upon return, the value returned is printed and put in the value history.\n"
   "(gdb) "
-> "help cont\n"
<- "Continue program being debugged, after signal or breakpoint.\n"
   "If proceeding from breakpoint, a number N may be used as an argument,\n"
   "which means to set the ignore count of that breakpoint to N - 1 (so that\n"
   "the breakpoint won\'t break until the Nth time it is reached).\n"
   "(gdb) "
-> "help signal\n"
<- "Continue program giving it signal specified by the argument.\n"
   "An argument of \"0\" means continue program without giving it a signal.\n"
   "(gdb) "
-> "help kill\n"
<- "Kill execution of program being debugged.\n"
   "(gdb) "
-> "help up\n"
<- "Select and print stack frame that called this one.\n"
   "An argument says how many frames up to go.\n"
   "(gdb) "
-> "help down\n"
<- "Select and print stack frame called by this one.\n"
   "An argument says how many frames down to go.\n"
<- "(gdb) "
-> "q\n"
#  Running GDB (pid 23585, tty /dev/ttyp3)...Exit 0.
#  Saving options in "/home/lmwang/.ddd/init"...
#  Saving options in "/home/lmwang/.ddd/init"...done.
#  Saving history in "/home/lmwang/.ddd/history"...
#  Saving history in "/home/lmwang/.ddd/history"...done.
#  Thanks for using DDD 3.3.8!


>From: Andrew Gaylard <address@hidden>
>To: lyman wang <address@hidden>
>Subject: Re: ddd bad performance
>Date: Sun, 16 May 2004 20:46:37 +0200
>
>lyman wang wrote:
>
>>I use redhat 7.3. The application to debug  is accessed through
>>NFS. The size is about 150M.
>>  It takes  gdb(v6.0)  only 75s to load the application.
>>But it's strange, ddd(v3.3.8) need 4m to load it.
>>
>>What's the problem?
>
>Good question.  What does "ddd --trace" produce?
>At some point in the trace, you will (probably) see an operation
>which takes the bulk of the time.
>
>Andrew.
>


Add photos to your e-mail with MSN 8. Get 2 months FREE*.
reply via email to

[Prev in Thread] Current Thread [Next in Thread]