Development discussion of WireGuard
 help / color / mirror / Atom feed
From: Lee Yates <rainmakerraw@icloud.com>
To: wireguard@lists.zx2c4.com
Subject: Logical cores / SMT with WireGuard
Date: Thu, 14 Feb 2019 18:02:26 +0000	[thread overview]
Message-ID: <735c8b20-c92b-2403-1557-32187b130a8f@icloud.com> (raw)

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256


Hi everyone,

I have a small form-factor Dell Optiplex 7010 (Core i7 3700, 8GB DDR3,
128GB SSD) with a quad port Intel Pro 1000PT NIC, running Arch Linux, as
my edge router. It covers two local subnets (trusted LAN, and
DMZ/servers/IoT), with the trusted LAN clients all being routed out via
an AzireVPN WireGuard tunnel on WAN. It works great for this and 15
minute load averages are in the order of 0.1!

My question is about multithreading/SMT on that Core i7. At the moment I
have it enabled, and WireGuard seems to simmer nicely across all 8
threads. However, with the known Intel security issues and
recommendations to disable HT, I got to wondering how much - if at all -
disabling HT would impact on WireGuard's real world performance. I mean,
it obviously can utilise logical cores/threads, but is there a real
world throughput benefit vs just using the real cores?

While my router is overkill anyway (about 18% to 20% usage under full
network load with 4c8t), I obviously still want to run it in the most
efficient way possible. Is WireGuard making real use of those logical
cores/threads? Or will it run just as well on 4 'real' cores as on 4
cores and 4 HT threads?

I know the obvious answer is to test it out, but the router runs
headless and is awkward to get a monitor to so I can access the BIOS. I
did try for a short time when I first set it up, and aside from CPU
usage going up (because of having half the available 'resources' with HT
disabled) nothing seemed to change. My WAN is 'only' 400Mbps anyway so
hardly a taxing test. Because of this, I can't really learn about how
much WireGuard benefits from the extra threads, if it does at all, as
either way I have headroom to spare for my current WAN provision.

So, technically speaking, is WireGuard able/programmed to take
demonstrable real world advantage of logical SMT/HT threads; or is more
real cores the only proper way to scale performance with it?

Cheers,

Lee Yates
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEExF+G9PyiAB1cKHnz7yXLzDsoqZIFAlxlrS0ACgkQ7yXLzDso
qZJROwf/b76RT+dFoo88KU36UJYRifluCBQ8TMfmj0DbWSQuyvQouJFqovYtt18/
UHSL/6KTgcHEkGFSaIQqAyP3xT7VjWjFhqyaOmBM1oAQ3HuVzmxnwkE4vumnhmHF
CrkIHcLNG/8jT1Xddd5q9rVcABqgGqOjT8lyF83id3MCPWj2njxBczQvILXq7i21
jvkzfnpEA94qG5IdV2xtGBQbtLwbHIu+ek7ayVj+NbyjLfv708wvMhUAf/1pQHew
WKBqv4tENMbKgrARhhS4YYHOo4nl14iRHQTDSm7a27xMdaDUW+M6+EtY+/citllx
OH0s5SYkkUClWRLCsooXJipfVWkw1A==
=Is7v
-----END PGP SIGNATURE-----
_______________________________________________
WireGuard mailing list
WireGuard@lists.zx2c4.com
https://lists.zx2c4.com/mailman/listinfo/wireguard

             reply	other threads:[~2019-02-17  1:34 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-14 18:02 Lee Yates [this message]
2019-02-17 10:54 ` Roman Mamedov
2019-02-17 11:01 ` Roman Mamedov
2019-02-17 20:44   ` Tom Li

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=735c8b20-c92b-2403-1557-32187b130a8f@icloud.com \
    --to=rainmakerraw@icloud.com \
    --cc=wireguard@lists.zx2c4.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).