Changes between Initial Version and Version 3 of Ticket #1090


Ignore:
Timestamp:
Apr 9, 2011, 10:39:46 AM (13 years ago)
Author:
Nicolas
Comment:

BOINC on Windows is dynamically linked to libcurl; so in theory you could replace your C:\Program Files\BOINC\libcurl.dll with a newer one, and test yourself if it fixes the problem.

However, it seems the curl website doesn't have Windows 64-bit downloads for libcurl, only 32-bit... :/

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #1090

    • Property Status changed from new to reopened
  • Ticket #1090 – Description

    initial v3  
    11When testing Download and Upload preferences, on my Windows 7 x64 machine, it does not look like speeds are being limited correctly. Windows Task Manager shows limiting, but the speeds burst above the limit, then go to 0, repeatedly.
    22
    3 If I limit to 40 KB/s, I'd expect a smooth and steady 40 KB/s, not 0 for a few seconds, then 85 briefly, then to 0, then to 75, etc.  Yet, that's the behavior I'm observing in Task Manager, with an update speed of 1 second.
     3If I limit to 40 KB/s, I'd expect a smooth and steady 40 KB/s, not 0 for a few seconds, then 85 briefly, then to 0, then to 75, etc.  Yet, that's the behavior I'm observing in Task Manager, with an update speed of 1 second.
    44
    55Below are some emails where I originally reported this on the Alpha Mailing list.
    66
    7 ===================[[BR]]Jacob Klein jacob_w_klein at msn.com[[BR]]Wed Mar 16 !22:16:14 PDT 2011[[BR]][[BR]]I've (finally) finished my 6.12.18 alpha preferences testing.[[BR]]I reported the results in the test results, but figured I'd mention the major bug here also.[[BR]][[BR]]Essentially, whenever I have a KBytes/sec limit, the download rate sometimes just stops completely, and sometimes starts/stops.[[BR]]It certainly isn't smooth like I would expect.[[BR]]My internet normally downloads at ~330KB/sec, and my testing was a setting of 40 KBytes/sec as the limit.[[BR]]I was resetting projects to get transfers to kick in.[[BR]][[BR]]My PC has 2 network adapters as seen in Task Manager.[[BR]]- "Ethernet 2" is what is used for Internet and BOINC.[[BR]]- "Bluetooth Network Connection" is never used.[[BR]]... but I get the same results when I disable the Bluetooth and restart BOINC, so I don't think that adapter is interfering.[[BR]][[BR]]It's kind of weird, because, even though the GUI shows 4 downloads each of 10 KBytes/sec..[[BR]]Windows Task Manager (which shows the actual data, and is updating every second), shows sporadic jumps above 40, and then 0, and isn't smooth.[[BR]]It's almost as if the GUI "Speed" calculation is wrong, but BOINC uses that wrong calculation to limit the speed.[[BR]]It could even be a timing problem or race condition, not sure.[[BR]][[BR]]Can anyone replicate the odd behavior?[[BR]][[BR]]Other smaller preference bugs that I found:[[BR]]- "Confirm before connecting to internet" did not do anything for me (on Ethernet), but tool tip does not say dial-up only.[[BR]]- If Network is suspended because of "Suspend Network" activity, it should say "Suspended - user request", even if a time-of-day preference is set.[[BR]]- Day-of-week override does not have tool tips on day hover or check box hover[[BR]][[BR]]Several BOINC Manager inputs needs better sanitization[[BR]]- "Idle minutes" preference input should not allow negative numbers[[BR]]- "Hours" inputs should not allows entries like !13:239 [[BR]]- "% of the processors" should not allow negative numbers or numbers >100[[BR]]- "% CPU Time" should not allow negative numbers or numbers >100[[BR]]- "While processor usage is less than" should not allow negative numbers or numbers >100[[BR]]- "Maximum download rate" should not allow negative numbers[[BR]]- "Maximum upload rate" should not allow negative numbers[[BR]][[BR]]A few web-based inputs need better sanitization[[BR]]- "Maximum download rate" should not allow negative numbers[[BR]]- "Maximum upload rate" should not allow negative numbers[[BR]][[BR]]Kind regards,[[BR]]Jacob Klein[[BR]][[BR]]===================[[BR]]Rom Walton romw at romwnet.org[[BR]]Thu Mar 17 !11:44:53 PDT 2011[[BR]][[BR]]I'll take a look this weekend.[[BR]][[BR]]Our app only knows what it sends out over the outgoing socket and what[[BR]]is read from the incoming socket, things like TCP/IP overhead are not[[BR]]included in the BOINC calculations.[[BR]][[BR]]Resource Manager from the Task Manager is displaying overall throughput[[BR]]including TCP/IP's overhead.  Resource Manager also includes the sum[[BR]]total of all traffic across all processes.[[BR]][[BR]]As far as the input validation in the Manager goes, I'll get that[[BR]]cleaned up for 7.0.  I'm not going to hold up the 6.12 release for it.[[BR]][[BR]]----- Rom[[BR]][[BR]]===================[[BR]]Jacob Klein jacob_w_klein at msn.com[[BR]]Tue Mar 22 !06:00:10 PDT 2011[[BR]][[BR]]Did your investigation find anything?[[BR]][[BR]]===================[[BR]]Rom Walton romw at romwnet.org[[BR]]Tue Mar 22 !08:38:09 PDT 2011[[BR]][[BR]]BOINC believes it is only sending out what it is told to.  The odd stuff[[BR]]is happening at a lower level of the software stack.[[BR]][[BR]]Resource Manager is including the TCP/IP overhead while what BOINC[[BR]]reports does not.  I don't know if the burst type behavior is Windows or[[BR]]Libcurl.  If I had to take a guess I would say Windows.  Without knowing[[BR]]how your network is configured, Windows does try to make use of things[[BR]]like Jumbo Frames and TCP checksum offloading to increase network[[BR]]throughput.[[BR]][[BR]]At this point I'm happy as long as BOINC doesn't saturate the WAN[[BR]](Internet) connection.[[BR]][[BR]]----- Rom
     7===================[[BR]]Jacob Klein jacob_w_klein at msn.com[[BR]]Wed Mar 16 !22:16:14 PDT 2011[[BR]][[BR]]I've (finally) finished my 6.12.18 alpha preferences testing.[[BR]]I reported the results in the test results, but figured I'd mention the major bug here also.[[BR]][[BR]]Essentially, whenever I have a KBytes/sec limit, the download rate sometimes just stops completely, and sometimes starts/stops.[[BR]]It certainly isn't smooth like I would expect.[[BR]]My internet normally downloads at ~330KB/sec, and my testing was a setting of 40 KBytes/sec as the limit.[[BR]]I was resetting projects to get transfers to kick in.[[BR]][[BR]]My PC has 2 network adapters as seen in Task Manager.[[BR]]- "Ethernet 2" is what is used for Internet and BOINC.[[BR]]- "Bluetooth Network Connection" is never used.[[BR]]... but I get the same results when I disable the Bluetooth and restart BOINC, so I don't think that adapter is interfering.[[BR]][[BR]]It's kind of weird, because, even though the GUI shows 4 downloads each of 10 KBytes/sec..[[BR]]Windows Task Manager (which shows the actual data, and is updating every second), shows sporadic jumps above 40, and then 0, and isn't smooth.[[BR]]It's almost as if the GUI "Speed" calculation is wrong, but BOINC uses that wrong calculation to limit the speed.[[BR]]It could even be a timing problem or race condition, not sure.[[BR]][[BR]]Can anyone replicate the odd behavior?[[BR]][[BR]]Other smaller preference bugs that I found:[[BR]]- "Confirm before connecting to internet" did not do anything for me (on Ethernet), but tool tip does not say dial-up only.[[BR]]- If Network is suspended because of "Suspend Network" activity, it should say "Suspended - user request", even if a time-of-day preference is set.[[BR]]- Day-of-week override does not have tool tips on day hover or check box hover[[BR]][[BR]]Several BOINC Manager inputs needs better sanitization[[BR]]- "Idle minutes" preference input should not allow negative numbers[[BR]]- "Hours" inputs should not allows entries like !13:239 [[BR]]- "% of the processors" should not allow negative numbers or numbers >100[[BR]]- "% CPU Time" should not allow negative numbers or numbers >100[[BR]]- "While processor usage is less than" should not allow negative numbers or numbers >100[[BR]]- "Maximum download rate" should not allow negative numbers[[BR]]- "Maximum upload rate" should not allow negative numbers[[BR]][[BR]]A few web-based inputs need better sanitization[[BR]]- "Maximum download rate" should not allow negative numbers[[BR]]- "Maximum upload rate" should not allow negative numbers[[BR]][[BR]]Kind regards,[[BR]]Jacob Klein[[BR]][[BR]]===================[[BR]]Rom Walton romw at romwnet.org[[BR]]Thu Mar 17 !11:44:53 PDT 2011[[BR]][[BR]]I'll take a look this weekend.[[BR]][[BR]]Our app only knows what it sends out over the outgoing socket and what[[BR]]is read from the incoming socket, things like TCP/IP overhead are not[[BR]]included in the BOINC calculations.[[BR]][[BR]]Resource Manager from the Task Manager is displaying overall throughput[[BR]]including TCP/IP's overhead.  Resource Manager also includes the sum[[BR]]total of all traffic across all processes.[[BR]][[BR]]As far as the input validation in the Manager goes, I'll get that[[BR]]cleaned up for 7.0.  I'm not going to hold up the 6.12 release for it.[[BR]][[BR]]----- Rom[[BR]][[BR]]===================[[BR]]Jacob Klein jacob_w_klein at msn.com[[BR]]Tue Mar 22 !06:00:10 PDT 2011[[BR]][[BR]]Did your investigation find anything?[[BR]][[BR]]===================[[BR]]Rom Walton romw at romwnet.org[[BR]]Tue Mar 22 !08:38:09 PDT 2011[[BR]][[BR]]BOINC believes it is only sending out what it is told to.  The odd stuff[[BR]]is happening at a lower level of the software stack.[[BR]][[BR]]Resource Manager is including the TCP/IP overhead while what BOINC[[BR]]reports does not.  I don't know if the burst type behavior is Windows or[[BR]]Libcurl.  If I had to take a guess I would say Windows. Without knowing[[BR]]how your network is configured, Windows does try to make use of things[[BR]]like Jumbo Frames and TCP checksum offloading to increase network[[BR]]throughput.[[BR]][[BR]]At this point I'm happy as long as BOINC doesn't saturate the WAN[[BR]](Internet) connection.[[BR]][[BR]]----- Rom