Very slow breakpoint processing

I have a development environment which consists of a WinXP Pro system
running the Momentics IDE and a separate QNX box running QConn. These two
systems are connected with a 100Mb Ethernet connection with nothing else on
the network. The WinXP system has another Ethernet network to access the
general network and Internet. I am debugging a set of programs that has
approx. 20 threads running. Whenever I stop at a breakpoint it takes
approx. 35 seconds for the IDE to reach a point it is willing to respond to
mouse or keyboard. This also happens when single stepping either into or
around function calls. Basically, anytime the IDE need to switch from a
running state to a debug/suspended state it takes 35 seconds. After a half
dozen of these transitions I end up with a much longer delay and a dialog
box that indicates a timeout. Has anyone else experienced this problem and
does anyone have any suggestions on how to fix it? BTW, I also run Samba
and telnetd on the QNX box and there is no problem with network
communications between the two boxes.

Thanx for any insight,
Dave G.

Hi, Dave G,

Is it possible that your PC is too slow or maybe the RAM size is too
small? I am using a selfhosted system, the host is running QNX 6.2.1(I
guess it may use less resources than Windows host to run Momentics.).
But when I am debugging or compiling the codes(even very small ones), I
often found the system memory usage come up to 80% (of my 384MB RAM),
and CPU usage come to 100%. I think Momentics need a high standard speed
host.

Best regards

Ling

Dave G. wrote:

I have a development environment which consists of a WinXP Pro system
running the Momentics IDE and a separate QNX box running QConn. These two
systems are connected with a 100Mb Ethernet connection with nothing else on
the network. The WinXP system has another Ethernet network to access the
general network and Internet. I am debugging a set of programs that has
approx. 20 threads running. Whenever I stop at a breakpoint it takes
approx. 35 seconds for the IDE to reach a point it is willing to respond to
mouse or keyboard. This also happens when single stepping either into or
around function calls. Basically, anytime the IDE need to switch from a
running state to a debug/suspended state it takes 35 seconds. After a half
dozen of these transitions I end up with a much longer delay and a dialog
box that indicates a timeout. Has anyone else experienced this problem and
does anyone have any suggestions on how to fix it? BTW, I also run Samba
and telnetd on the QNX box and there is no problem with network
communications between the two boxes.

Thanx for any insight,
Dave G.

Hi Ling,

My computer is a 1.7G Pentium4 with 512MB of RAM. My QNX box is a 700MHz
Pentium3 with 512MB of RAM. Again, Samba and Telnet work fine with the
TCP/IP communications between the two boxes and I doubt my boxes are too
slow or memory limited. I believe the debugger running on the WinXP box is
getting into some kind of timeout that it shouldn’t and it recovers 35
seconds later. BTW, I do have both boxes defined in the hosts files on both
boxes so it shouldn’t be timing out trying to do a gethostbyname or some
such thing. I have also disabled my main network card on the WinXP box
thinking that maybe that was confusing the issue.

Dave G.

“Ling Shen” <ling@ece.concordia.ca> wrote in message
news:3EE10485.8060703@ece.concordia.ca

Hi, Dave G,

Is it possible that your PC is too slow or maybe the RAM size is too
small? I am using a selfhosted system, the host is running QNX 6.2.1(I
guess it may use less resources than Windows host to run Momentics.).
But when I am debugging or compiling the codes(even very small ones), I
often found the system memory usage come up to 80% (of my 384MB RAM),
and CPU usage come to 100%. I think Momentics need a high standard speed
host.

Best regards

Ling

Dave G. wrote:
I have a development environment which consists of a WinXP Pro system
running the Momentics IDE and a separate QNX box running QConn. These
two
systems are connected with a 100Mb Ethernet connection with nothing else
on
the network. The WinXP system has another Ethernet network to access
the
general network and Internet. I am debugging a set of programs that has
approx. 20 threads running. Whenever I stop at a breakpoint it takes
approx. 35 seconds for the IDE to reach a point it is willing to respond
to
mouse or keyboard. This also happens when single stepping either into
or
around function calls. Basically, anytime the IDE need to switch from a
running state to a debug/suspended state it takes 35 seconds. After a
half
dozen of these transitions I end up with a much longer delay and a
dialog
box that indicates a timeout. Has anyone else experienced this problem
and
does anyone have any suggestions on how to fix it? BTW, I also run
Samba
and telnetd on the QNX box and there is no problem with network
communications between the two boxes.

Thanx for any insight,
Dave G.

\

Hi, Dave G,

I have ever met a strange thing before. I am not sure if it was caused
by same reason as yours. I tell you what I met, maybe it can give you
some hints.

When I set up the debug environment for the host+target before, I have
ever used a cross-over ethernet cable to link the host and the
target(BTW, my target is a P300+16MhzRAM PC104 board). I found the
download and debug speed is very slow. The system seems waiting for
something before doing the real job. But after that, I decided to
connect both my host and target to the LAN of my office by connecting
them to the switch ports, then everything is OK. It supposed to be
faster to use cross-over cable because there will be no colisions!

Then I think about maybe it was caused by the DNS setting, route setting
or maybe gateway setting of the host. I guess (just a guess) that the
host was told to look for the those servers before to do some real
jobs(even they ares not needed when you access them by IP address or you
have your host name in you local host file.). And if some of the servers
are not exist, it may wait until time out. Maybe you can double check
that all those servers are accessible(or remove some useless ones) and
try again.

BTW, how many net cards do you use in your host? Is it two? (One to
connect you to your LAN and another is connect by cross-over cable to
the target) If so, maybe you can try to do as what I am doing now.(That
is, to use only one net card on your host and use a hub/switch to
connect the target to your LAN, or if you have free port in your LAN,
just use a normal ethernet cable to connect your target to the LAN.)

Good Luck.

Best regards

Ling



Dave G. wrote:

Hi Ling,

My computer is a 1.7G Pentium4 with 512MB of RAM. My QNX box is a 700MHz
Pentium3 with 512MB of RAM. Again, Samba and Telnet work fine with the
TCP/IP communications between the two boxes and I doubt my boxes are too
slow or memory limited. I believe the debugger running on the WinXP box is
getting into some kind of timeout that it shouldn’t and it recovers 35
seconds later. BTW, I do have both boxes defined in the hosts files on both
boxes so it shouldn’t be timing out trying to do a gethostbyname or some
such thing. I have also disabled my main network card on the WinXP box
thinking that maybe that was confusing the issue.

Dave G.

“Ling Shen” <> ling@ece.concordia.ca> > wrote in message
news:> 3EE10485.8060703@ece.concordia.ca> …

Hi, Dave G,

Is it possible that your PC is too slow or maybe the RAM size is too
small? I am using a selfhosted system, the host is running QNX 6.2.1(I
guess it may use less resources than Windows host to run Momentics.).
But when I am debugging or compiling the codes(even very small ones), I
often found the system memory usage come up to 80% (of my 384MB RAM),
and CPU usage come to 100%. I think Momentics need a high standard speed
host.

Best regards

Ling

Dave G. wrote:

I have a development environment which consists of a WinXP Pro system
running the Momentics IDE and a separate QNX box running QConn. These

two

systems are connected with a 100Mb Ethernet connection with nothing else

on

the network. The WinXP system has another Ethernet network to access

the

general network and Internet. I am debugging a set of programs that has
approx. 20 threads running. Whenever I stop at a breakpoint it takes
approx. 35 seconds for the IDE to reach a point it is willing to respond

to

mouse or keyboard. This also happens when single stepping either into

or

around function calls. Basically, anytime the IDE need to switch from a
running state to a debug/suspended state it takes 35 seconds. After a

half

dozen of these transitions I end up with a much longer delay and a

dialog

box that indicates a timeout. Has anyone else experienced this problem

and

does anyone have any suggestions on how to fix it? BTW, I also run

Samba

and telnetd on the QNX box and there is no problem with network
communications between the two boxes.

Thanx for any insight,
Dave G.




\

I have the same experience here. I am using P4 2.4GHz 512MByte RAM
development host and target host. I found out that if I call a function with
large local variable, the performance drops tremendously if I trace into
that function. Try the following code:

void ABC ()
{
int n;
char temp[10000];

n = 1;
n = 2;
n = 3;
temp[0] = ‘A’;
}

int main ()
{
ABC();
return (0);
}

Can someone please help?


“Dave G.” <~~~dkg@ormec.com> wrote in message
news:bbqoef$hkj$1@inn.qnx.com

I have a development environment which consists of a WinXP Pro system
running the Momentics IDE and a separate QNX box running QConn. These two
systems are connected with a 100Mb Ethernet connection with nothing else
on
the network. The WinXP system has another Ethernet network to access the
general network and Internet. I am debugging a set of programs that has
approx. 20 threads running. Whenever I stop at a breakpoint it takes
approx. 35 seconds for the IDE to reach a point it is willing to respond
to
mouse or keyboard. This also happens when single stepping either into or
around function calls. Basically, anytime the IDE need to switch from a
running state to a debug/suspended state it takes 35 seconds. After a
half
dozen of these transitions I end up with a much longer delay and a dialog
box that indicates a timeout. Has anyone else experienced this problem
and
does anyone have any suggestions on how to fix it? BTW, I also run Samba
and telnetd on the QNX box and there is no problem with network
communications between the two boxes.

Thanx for any insight,
Dave G.

In addition to that, the host CPU reaches 100% and the IDE crashed too often
!!!

“Dave G.” <~~~dkg@ormec.com> wrote in message
news:bbqoef$hkj$1@inn.qnx.com

I have a development environment which consists of a WinXP Pro system
running the Momentics IDE and a separate QNX box running QConn. These two
systems are connected with a 100Mb Ethernet connection with nothing else
on
the network. The WinXP system has another Ethernet network to access the
general network and Internet. I am debugging a set of programs that has
approx. 20 threads running. Whenever I stop at a breakpoint it takes
approx. 35 seconds for the IDE to reach a point it is willing to respond
to
mouse or keyboard. This also happens when single stepping either into or
around function calls. Basically, anytime the IDE need to switch from a
running state to a debug/suspended state it takes 35 seconds. After a
half
dozen of these transitions I end up with a much longer delay and a dialog
box that indicates a timeout. Has anyone else experienced this problem
and
does anyone have any suggestions on how to fix it? BTW, I also run Samba
and telnetd on the QNX box and there is no problem with network
communications between the two boxes.

Thanx for any insight,
Dave G.

I imagine that everytime you step, the IDE is trying to read the
value of temp, which is slowing things down…

Johannes <Jsukamtoh@infolink.co.id> wrote:

I have the same experience here. I am using P4 2.4GHz 512MByte RAM
development host and target host. I found out that if I call a function with
large local variable, the performance drops tremendously if I trace into
that function. Try the following code:

void ABC ()
{
int n;
char temp[10000];

n = 1;
n = 2;
n = 3;
temp[0] = ‘A’;
}

int main ()
{
ABC();
return (0);
}

Can someone please help?



“Dave G.” <~~~> dkg@ormec.com> > wrote in message
news:bbqoef$hkj$> 1@inn.qnx.com> …
I have a development environment which consists of a WinXP Pro system
running the Momentics IDE and a separate QNX box running QConn. These two
systems are connected with a 100Mb Ethernet connection with nothing else
on
the network. The WinXP system has another Ethernet network to access the
general network and Internet. I am debugging a set of programs that has
approx. 20 threads running. Whenever I stop at a breakpoint it takes
approx. 35 seconds for the IDE to reach a point it is willing to respond
to
mouse or keyboard. This also happens when single stepping either into or
around function calls. Basically, anytime the IDE need to switch from a
running state to a debug/suspended state it takes 35 seconds. After a
half
dozen of these transitions I end up with a much longer delay and a dialog
box that indicates a timeout. Has anyone else experienced this problem
and
does anyone have any suggestions on how to fix it? BTW, I also run Samba
and telnetd on the QNX box and there is no problem with network
communications between the two boxes.

Thanx for any insight,
Dave G.


cburgess@qnx.com

I guess so too. I hope the problem can be fixed in next version. It is
very convenient that you can see the local variables without adding them
to the watch list, but the IDE should be smart enough to get only the
values you want to display!

Dave B, any suggestions?

Ling


Colin Burgess wrote:

I imagine that everytime you step, the IDE is trying to read the
value of temp, which is slowing things down…

Johannes <> Jsukamtoh@infolink.co.id> > wrote:

I have the same experience here. I am using P4 2.4GHz 512MByte RAM
development host and target host. I found out that if I call a function with
large local variable, the performance drops tremendously if I trace into
that function. Try the following code:


void ABC ()
{
int n;
char temp[10000];


n = 1;
n = 2;
n = 3;
temp[0] = ‘A’;
}


int main ()
{
ABC();
return (0);
}


Can someone please help?



“Dave G.” <~~~> dkg@ormec.com> > wrote in message
news:bbqoef$hkj$> 1@inn.qnx.com> …

I have a development environment which consists of a WinXP Pro system
running the Momentics IDE and a separate QNX box running QConn. These two
systems are connected with a 100Mb Ethernet connection with nothing else

on

the network. The WinXP system has another Ethernet network to access the
general network and Internet. I am debugging a set of programs that has
approx. 20 threads running. Whenever I stop at a breakpoint it takes
approx. 35 seconds for the IDE to reach a point it is willing to respond

to

mouse or keyboard. This also happens when single stepping either into or
around function calls. Basically, anytime the IDE need to switch from a
running state to a debug/suspended state it takes 35 seconds. After a

half

dozen of these transitions I end up with a much longer delay and a dialog
box that indicates a timeout. Has anyone else experienced this problem

and

does anyone have any suggestions on how to fix it? BTW, I also run Samba
and telnetd on the QNX box and there is no problem with network
communications between the two boxes.

Thanx for any insight,
Dave G.



\

Johannes <Jsukamtoh@infolink.co.id> wrote:

In addition to that, the host CPU reaches 100% and the IDE crashed too often
!!!

Sometimes that is gdb going crazy. Bring up the windows task manager,
and, look at processes, and find the one that has its CPU used going
up at about 1s per second. Usually it is a gdb of some flavour. Kill
that off (endprocess). Sometimes this will let the IDE recover – it
was waiting for the gdb to respond, and couldn’t do anything else.

Also, I’ve found that reading/examining stack stuff,
especially very deep stacks, did have a tendency to cause
gdb/IDE heartburn.

-David

QNX Training Services
http://www.qnx.com/support/training/
Please followup in this newsgroup if you have further questions.