From owner-freebsd-questions@FreeBSD.ORG Wed Dec 10 13:20:20 2014 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id EF4D4F4C; Wed, 10 Dec 2014 13:20:19 +0000 (UTC) Received: from mail-ig0-x22c.google.com (mail-ig0-x22c.google.com [IPv6:2607:f8b0:4001:c05::22c]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B418EF34; Wed, 10 Dec 2014 13:20:19 +0000 (UTC) Received: by mail-ig0-f172.google.com with SMTP id hl2so6384072igb.11 for ; Wed, 10 Dec 2014 05:20:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=nwuHLsGBfhIOwgIY7jtzObmlQb2X22oM6WPpbNylYMQ=; b=WNteIjP7CS3pBRJSQpgDDeSvqT2lnGM/7/yaD6yiToPyT3cGllALGs0pSUmTObtgf1 NWlDh7XILF1N+HCKhMkGmKx5/d4B7fiP2s92UI6vLVoymhQeMidLEJJs0FD9R8QzP85O +mCepv55J7gT98B/3PBKP2YN98oQ4OFPM5Pj5hUiXgu+Gt0kMIpCWZIuW8MTseGFlBXr vB3LWTsc4qA2S5INxdglZ2WkURlLv2TRb11CPt2kvaq/nWoMFeZwi93kBI+oMh2FfP73 lsSXK95n1RQZdimN4PvU0xxeHJ30teuB6ngFyvn3ymrqT6SswCb/cSYANW179NtIwyMf eiCw== X-Received: by 10.51.16.37 with SMTP id ft5mr7927393igd.6.1418217619146; Wed, 10 Dec 2014 05:20:19 -0800 (PST) MIME-Version: 1.0 Received: by 10.107.175.4 with HTTP; Wed, 10 Dec 2014 05:19:48 -0800 (PST) In-Reply-To: References: <20141208153925.5df90587@prometheus> From: Jia-Shiun Li Date: Wed, 10 Dec 2014 21:19:48 +0800 Message-ID: Subject: Re: HyperThreading on Intel Xeon Haswell, a benefit? To: Adrian Chadd Content-Type: text/plain; charset=UTF-8 X-Mailman-Approved-At: Wed, 10 Dec 2014 13:20:54 +0000 Cc: freebsd-smp@freebsd.org, grarpamp , "freebsd-hardware@freebsd.org" , FreeBSD Mailing Lists , "O. Hartmann" , FreeBSD Questions X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Dec 2014 13:20:20 -0000 On Tue, Dec 9, 2014 at 12:15 AM, Adrian Chadd wrote: > I've found that a memcpy heavy load (read: normal, non-zero copy > network traffic) brings SMT threads to their knees. A pair of threads > gets as much work done in normal UDP transmit/receive as a single > non-SMT thread. It looks like it's because the ports doing memory > input/output are full and there's not really any other work that's > being done. > > I think haswell still only has one store data port per core. :( Yes, Haswell has an additional store addr but still only one store data unit. http://www.tomshardware.com/reviews/core-i7-4770k-haswell-review,3521.html But I guess they'd argue that they meant to saturate memory channels with all available cores as possible first, and additional threads are only for last resort. And that's probably what the most schedulers do. I benchmarked it on a 4th gen i3. Buildkernel got 5~10% benefit IIRC. The best way to tell is still to conduct tests with your own workload. If the claimed 5% transistor cost brings 10% benefits, that's already a win. OTTH how much you paid for it is another story. - Jia-Shiun.