Date: Tue, 26 Feb 2013 16:49:23 +0100 From: Attilio Rao <attilio@freebsd.org> To: Alexander Motin <mav@freebsd.org> Cc: svn-src-projects@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r247319 - in projects/calloutng/sys: kern sys Message-ID: <CAJ-FndAGgOMa5n4DH1S1rz4gMwWo9WdXNa57YMcDPKpV%2BnQT%2BQ@mail.gmail.com> In-Reply-To: <512CD8D7.60306@FreeBSD.org> References: <201302261525.r1QFPhLt058080@svn.freebsd.org> <CAJ-FndDunwgsV4FVFNhDcmQm8L21YMrGANjh8caUqL-v4qvhDQ@mail.gmail.com> <512CD8D7.60306@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Feb 26, 2013 at 4:46 PM, Alexander Motin <mav@freebsd.org> wrote: > On 26.02.2013 17:28, Attilio Rao wrote: >> On Tue, Feb 26, 2013 at 4:25 PM, Alexander Motin <mav@freebsd.org> wrote: >>> Author: mav >>> Date: Tue Feb 26 15:25:43 2013 >>> New Revision: 247319 >>> URL: http://svnweb.freebsd.org/changeset/base/247319 >>> >>> Log: >>> Optimize callout_process() to use less variables and less conditions to >>> implement the same logic. Now it fits better into CPU registers, and >>> according to PMC significntly reduces number of resource stalls, reducing >>> consumed by it CPU time during usleep(1) benchmark by 30%. >> >> Is that all improved i-cache capacity and improved dynamic branch >> prediction (hwpmc has counters for both FWIW)? > > I-cache capacity I think is not significant there as the loop is quite > small. I believe it was branch misprediction, complicated by additional > latency of memory accesses. I haven't analyzed cause deeper, as PMC man > pages are not the most informative and easiest reading. Well, I-cache is really very small, so I think you may get some improvement also for the function you were trying to optimize. You can get all the counter description by doing: pmccontrol -L >From there you may find some hwpmc counter showing i-cache and dynamic branch prediction misses statistics. Attilio -- Peace can only be achieved by understanding - A. Einstein
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-FndAGgOMa5n4DH1S1rz4gMwWo9WdXNa57YMcDPKpV%2BnQT%2BQ>