View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0001209aMuleTransferpublic2007-11-25 17:352008-02-17 02:39
Reporterkubrick 
Assigned To 
PrioritynormalSeverityblockReproducibilityalways
StatusacknowledgedResolutionopen 
PlatformOSOS Version
Product VersionSVN 
Target VersionFixed in Version 
Summary0001209: amule doesn't use all the brandwidth
DescriptionI'm using amule CVS 20071125 on a server with a 100Mbps connexion to the internet. amule and amulecmd don't use the whole upload brandwidth, even if I set max UL rate to 0 or 12000kBps. It uploads data at a 1~2MB/s rate and queue clients even if there is still free brandwidth.
Additional InformationAt that rate amule is consuming about 30% of cpu so CPU is not limitating. Still at that rate the ping time is good, so I don't think that amule "detects" that the line is full..
TagsNo tags attached.
Fixed in Revision
Operating SystemDebian etch amd64 with wxGTK 2.6.8
Attached Files

- Relationships

-  Notes
(0002468)
kubrick (reporter)
2007-11-29 11:16
edited on: 2007-11-29 11:17

In src/UploadBandwidthThrottler.cpp, for each packet sent, we have a minimum sleep time of 1ms because of :


const uint32 TIME_BETWEEN_UPLOAD_LOOPS = 1;
[...]
uint32 extraSleepTime = TIME_BETWEEN_UPLOAD_LOOPS;
[...]
uint32 sleepTime;
        if(allowedDataRate == 0 || allowedDataRate == _UI32_MAX || realBytesToSpend >= 1000) {
            // we could send at once, but sleep a while to not suck up all cpu
            sleepTime = extraSleepTime;
        } else {
            // sleep for just as long as we need to get back to having one byte to send
            sleepTime = std::max((uint32)ceil((double)(-realBytesToSpend + 1000)/allowedDataRate), extraSleepTime);
        }


So we can only send a maximum of 1000 packets each second. 1 packet weighing about 1,5kB, the max upload rate should be 1,5MB/s. This is exactly what I am having. So I guess the problem must be here.

Am I wrong?

modifié le : 11-29-07 11:17

- Issue History
Date Modified Username Field Change
2007-11-25 17:35 kubrick New Issue
2007-11-25 17:35 kubrick Operating System => Debian etch amd64 with wxGTK 2.6.8
2007-11-29 11:16 kubrick Note Added: 0002468
2007-11-29 11:17 kubrick Note Edited: 0002468
2008-02-17 02:39 Xaignar Status new => acknowledged


Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker