Login  
Search All Forums
Dart Home | PowerTCP FTP for ActiveX | Custom Development Reply | PowerTCP FTP for ActiveX Topics | Forums   
AuthorForum: PowerTCP FTP for ActiveX
Topic: FTP Control CPU Utilization
Sean Cullinan

From: Washington, DC USA
Posts: 5
Member Since: 05/07/02
posted June 26, 2002 12:31 PM

Hi all,

I was wondering if what I was seeing was abnormal. I'm using the 3/17/02 build of the ftp .dll and when I am downloading a file from an ftp server using the ftp tool I see CPU utilization increase significantly. I have several development boxes, one of which is a dual ppro 200 box and the impact on the CPU is so sever my application stops responding to any other requests when downloading via ftp. I am using ftpstream as my transfer mode and ftp image as my type. I'm simply logging on and doing an mget (so I can use a wildcard on the filename). During the download of the file (which in this case is 200 megs) my app with the ftp control in it starts hammering the CPU. Is this normal and are there any ways to reduce the impact the ftp control has on cpu utilization during a download?

Thanks,

Sean
Jon Belanger



From: Rome, NY USA
Posts: 310
Member Since: 06/10/02
posted June 26, 2002 12:58 PM

Sean,

  I'm currently running the the GetSite sample (which uses mget) VB is taking between 33 and 50 percent CPU, and as you can see I haven't locked up. There shouldn't be a reason why you are seeing that kind of utilization. Two possible reasons come to my mind. One, run the latest update from Dart's web site. Two, if you are running any kind of Internet Connection Accelerator I could conceive of why it would spike utlization like that. I think your best bet would be to run the update.exe, however.

J. Belanger
Sean Cullinan

From: Washington, DC USA
Posts: 5
Member Since: 05/07/02
posted June 26, 2002 1:33 PM

What are the specs on the box you are running? 33 to 50 percent CPU is about what I'm seeing...actually less than that on my Dual P3-1 Ghz box. But on my slower Dual Ppro 200Mhz test box the CPU utilization is much higher since the CPU's are much slower. It basically makes the FTP transfer turn the program CPU bound and therefore other functions that the program tries to do (the ftp is supposed to be a background sort of thing) fail because they cannot get enough CPU to complete in a timely manner. 

Thanks for the info though...based on your post I think that what I am experiencing may be normal....I have run update.exe and I am not running any sort of internet accelerator. 

Sean
Jon Belanger



From: Rome, NY USA
Posts: 310
Member Since: 06/10/02
posted June 26, 2002 1:51 PM

This is a 1 GHz machine. Have you run the sample on a single 200 Mhz box? I would be interested in performance on that.

J. Belanger
Sean Cullinan

From: Washington, DC USA
Posts: 5
Member Since: 05/07/02
posted June 26, 2002 2:56 PM

Thanks Jon...
Duh...should've thought to do this myself. I am getting similiar results. This is a dual processor box...and when the download is happening the vb app is using nearly 100% of one of the CPU's. Since VB isn't multithreaded this leaves no CPU free for the application to do other operations while the transfer is happening.

This seems like a lot of CPU utilization for a simple file transfer. I decided to test other ftp transfer methods for the same file (command line and using IE for ftp transfer). Here are my results:

Command line produced a similiar CPU utilization but the 200 Meg file completed in 40 seconds over our 100Mbps switched LAN wheras the FTP control took over 10 minutes to transfer the same file. Obviously the shorter time makes the CPU utilization more bearable (40 seconds of a rather unresponsive app versus over 5 minutes when transferring a 200 meg file), but it still seems high. 

Internet Explorer FTP transfer: The load was split evenly between the Iexplore process and explorer.exe. Both utilized about 20% of the CPUs. This process took about 2 minutes...5X faster than the getsite sample app but still much slower than the command line ftp program. CPU utilization was lower

For kicks I tried a regular windows networking (no ftp transfer): Explorer used about 30% of the CPU and took about 40 seconds to transfer. Same as FTP.

Again all of this was done on a 200Mhz Dual P-pro box with 128 megs of RAM. 

I guess then the question changes....while the CPU utilization on the control is high, it isn't significantly higher than that of other file transfer methods over a high speed connection. I'll simply have to bump up the requirements for my app (it wasn't really designed to run on 200Mhz boxes anyway). BUT why are other FTP methods 5-15 times faster than the control when working on a high speed connection? Before I did this test I reapplied the update.exe patch to make sure that that isn't the problem....as I know the update.exe was supposed to fix problems with slow transfers on high speed connections. Unfortunately it seems like the problem still exists.

Anyone have any thoughts/experiences?

I am going to run the same batch of tests on a high speed (dual 1Ghz machine) to see if the results (timewise at least) are the same.

BTW Jon...thanks a lot for your help and fast replies.    

Sean
Sean Cullinan

From: Washington, DC USA
Posts: 5
Member Since: 05/07/02
posted June 26, 2002 3:21 PM

Quick update...here are my results for ftp transfers from a dual 1Ghz machine off of the same server:

GetSite FTP sample: Took 3:15 to get a 200 meg file. CPU utilization was 50% which really meant 100% of one of the CPU's as GetSite is a VB app that can only run on one CPU

Command Line FTP: Took 18 seconds to get the same file. CPU utilization was around 30% (not sure how that was divided amongst the CPU's.

Internet Explorer FTP: Took 30 seconds. Explore.exe took up 30% of total CPU (not sure about how thats divided amongst the two).

Regular Windows File transfer: Took 30 seconds. explore.exe took aboout 10% of total cpu.

So you can see several things. First off, the faster machine is able to get the file faster. This makes some sense because over a 100Mbps pipe disk IO on the slower machine may not be able to keep up. BUT it is clear that under both situations the FTP control is 5-15 times slower than other FTP implementations or straight file transfers, and eats more CPU when used on a high speed network. 

Anyone have any ideas...or anyone else tried a similiar set of tests?

Thanks,
Sean
Reply | PowerTCP FTP for ActiveX Topics | Forums   
This site is powered by PowerTCP WebServer Tool PowerTCP WebServer for ActiveX