From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-04-iad.dyndns.com (mxout-075-iad.mailhop.org [216.146.32.75]) by lists.bufferbloat.net (Postfix) with ESMTP id 3F4BF2E2D3C for ; Sun, 20 Mar 2011 15:24:21 -0700 (PDT) Received: from scan-01-iad.mailhop.org (scan-01-iad.local [10.150.0.206]) by mail-04-iad.dyndns.com (Postfix) with ESMTP id 7C2AE8333BC for ; Sun, 20 Mar 2011 22:24:22 +0000 (UTC) X-Spam-Score: -1.0 (-) X-Mail-Handler: MailHop by DynDNS X-Originating-IP: 209.85.215.171 Received: from mail-ey0-f171.google.com (mail-ey0-f171.google.com [209.85.215.171]) by mail-04-iad.dyndns.com (Postfix) with ESMTP id BB87083322D; Sun, 20 Mar 2011 22:24:20 +0000 (UTC) Received: by eydd26 with SMTP id d26so1629811eyd.16 for ; Sun, 20 Mar 2011 15:24:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:subject:mime-version:content-type:from :in-reply-to:date:cc:content-transfer-encoding:message-id:references :to:x-mailer; bh=XLOnCW9pfCKR4xzbJ47soAS3NXdGpKm/WPpkTaIULoI=; b=EqYTWatDqAC+MQbHMSP80z9GK9PaJ6M1zu1z5TcJmPV6l0NTJolzzLp9YMt7rEvPLZ Vs2on2wohD2nFworh9SSq+pML+XyKEr3KIMxCATx9YX6JyKF63a4s51tOUj31WIad4WZ LqLAe0RMay9Cb2aT6WFpVpUKqRyMQ9u0o1sXM= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=subject:mime-version:content-type:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to:x-mailer; b=jSCaSgyAJDDE7t3qt0IOed6vDJc65gPeKLCwjdxCuuzranuqnkSekwvZeO3hn0wB8k dVNgDf2SiPNKA1i9LWg8apST9s7dPc+xpqc/XudEws3jWxkByPR/aJvJTIWelONEMt6b ULvnqTzMNZc53LJ/p7J5SOP1LBsvwvvYcwDm8= Received: by 10.14.126.3 with SMTP id a3mr846559eei.203.1300659858217; Sun, 20 Mar 2011 15:24:18 -0700 (PDT) Received: from [192.168.239.42] (xdsl-83-150-84-172.nebulazone.fi [83.150.84.172]) by mx.google.com with ESMTPS id w59sm1486151eeh.17.2011.03.20.15.24.17 (version=TLSv1/SSLv3 cipher=OTHER); Sun, 20 Mar 2011 15:24:17 -0700 (PDT) Mime-Version: 1.0 (Apple Message framework v1082) Content-Type: text/plain; charset=iso-8859-1 From: Jonathan Morton In-Reply-To: <87wrjtea1a.fsf_-_@cruithne.co.teklibre.org> Date: Mon, 21 Mar 2011 00:24:15 +0200 Content-Transfer-Encoding: quoted-printable Message-Id: <0AFB02A7-8AF9-4C41-BBCE-12E6319A4614@gmail.com> References: <0D59AD34-AA64-4376-BB8E-58C5D378F488@gmail.com> <4D829B58.1070601@swin.edu.au> <87wrjtea1a.fsf_-_@cruithne.co.teklibre.org> To: d@taht.net (=?iso-8859-1?Q?Dave_T=E4ht?=) X-Mailer: Apple Mail (2.1082) Cc: bloat , bloat-devel Subject: Re: [Bloat] Some results of the latency under load tool X-BeenThere: bloat@lists.bufferbloat.net X-Mailman-Version: 2.1.13 Precedence: list List-Id: General list for discussing Bufferbloat List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 20 Mar 2011 22:24:21 -0000 On 20 Mar, 2011, at 11:50 pm, Dave T=E4ht wrote: > B) Due to the dependence on the gnu scientific library it seems = unlikely > this will build on openwrt. Also, if there is heavy math anywhere in > this app, it needs to be done outside the testing loop on a non FPU > enabled processor such as most arms to not skew the test. I'm aware of the limitations of older ARM CPUs, as I have had to work = with them on occasion. I don't have any with Ethernet at home though. = The maths inside the main loops is limited to calculating time = differences, comparing them and determining when to stop - there may be = some optimisation possible there, but it's not ridiculous. The main loops are actually slightly elastic, because recv() will give = whatever data is available at the time it is called, and the fattest = calculations are only done once per loop. Under normal circumstances, = that should be every 1.2 KB, but it scales up to 64KB if the CPU = temporarily can't keep up (or if a lot of data becomes available in one = go). > It ate 17% of cpu on the arm, and ~8% of cpu on davepc. Looks tolerable to me. Even my ancient CISC PC can trigger the symptoms = well enough. > Similarly there are rng's in the Linux kernel and hardware sources, = I'm > not sure to what extent you need randomness (I looked at the code = only briefly) The spew() function uses the PRNG to generate incompressible traffic, = since compressibility does matter to some network technologies. I used = GSL purely to get access to a very fast PRNG that still produces good = numbers - it's just a shame that this is a relatively large, = general-purpose library. I originally intended to checksum the data and = thus ensure that it arrived intact, but I had to delete that feature to = get around a race condition. > So you are saying lower values of hz is horrible? Yes. 0.02 Hz means the application was waiting 50 seconds for data = somehow. - Jonathan