Iperf 3.17.1 Windows build

Recommended Posts

So there has been an on going thread about powerline adapters, well the OP finally got some - and I was curious about speed he is seeing, etc.  So told him would post up links to some tools.


This lead me to compiling the latest version of iperf3 I could find for windows ;) Since I couldn't find one.  So figured post it up if anyone is interested.


Got the source from here https://github.com/esnet/iperf

Found a blog post how to compile on windows here http://www.embeddedsystemtesting.com/2014/08/how-to-compile-iperf3-for-windows.html


So few minutes later I end up with a copy of the current iperf3 that works on windows.  Needs a few cygwin dlls, included in the zip.  But other than that unzip and go.


It has lots of new options compared to the older versions


Been a fan of iperf for years, so will prob keep this current when new versions come out since doesn't seem like anyone else is posting up the windows builds, etc.

You can grab all my compiled versions here https://files.budman.pw/

Any questions on its use, just ask -- post up some tests as well!!


edit: updated this on 02/25/17 new build 3.1.6


This version of iperf3 contains two minor fixes. Notably, one of them unbreaks JSON output with UDP tests.


edit2:  5/23/17 Thanks to @Datalink for letting me know site was down.  Back up now, if your having issues flush your dns had to move it to different host.  Added site to my monitoring so next time it goes down will know right away ;)

BTW 3.1.7 just typo's so no reason to compile it

2017-03-06: iperf-3.1.7 released

This version of iperf3 contains two documentation fixes, but is otherwise identical to the prior release.


edit3: 7/6/17 Updated to new 3.2 build


CRC32: 9e4b913c
MD5: ff7fc42f6ba29e9f83c8bb8e0066f722
SHA-1: 68ad3a0f0c2f30c1756f0a5eb39e1062e6beb6f4


CRC32: add96290
MD5: 7a014ff67b1d678f546ead2360820d47
SHA-1: 98ed98ac6d392a4484e5151ab2f714390c99b52e


edi4: 11/18/17 Updated to new 3.3 build


MD5: 49095ccb2442101d2a1ffc6213f3d1b9
SHA-256: 1fea7ae97b8ec5ab1c61ef1afcf7afd491d37ef41061a845f9bb8477425c66db



MD5: b6ad4c094a18196e0798e1a2825bc609
SHA-256: 919978ac0b574d7662d5b0e58174a6107002db96e7592929a9a28938516a2c5f


edit5: 02/16/2018 Updated to new 3.4 build see post in thread


MD5: 3b805d0895e7bb4d005429ed5859dd00
SHA-256: 82a933bbf96731a615ee5ae40bc1e6986ffcdd0b83c7c4e9cd024a996b3c0808

MD5: e4c0d2d8bda22ebbb710a9a65aacddf9
SHA-256: 7a3f83d211d22102d05dcf0eb24f4ff8cd3d9083aada9a27c88ba7ced0a0eccc


edit6: 03/05/2018 Updated to 3.5 build, see post in thread


CRC32: 18962237
MD5: 840a2d5e0f81d8a6dc0d8be854caf61a
SHA-1: 1a18185c79645b082392dcd024b7e53900dc38bd
SHA-256: 94a0ec4e486904a6a8ebe390eca37871f47a097599908c3647d6ad1d0bbdff59


CRC32: 21d8a0eb
MD5: dd79fe69c86e62c780e45e6e0d2ec66d
SHA-1: 2c63c1f9ef35be23170869a6a7eb048241aa2f14
SHA-256: bf4b95a58e54ceda101e33b0b908c581df1ce4a217f233e1092dc3278572de43




CRC32: A9B23E64
MD5: 3530BD3C837EA146C8F98106FA94E395
SHA-1: 7E09239B207739714294A4EA1DA9C69623374740
SHA-256: DE958C4CF72DBC64DCBB42130BD466D9FD367E4519C5C3F78A6675CA87E12B7D


edit8: Updated 7/6/2019 New 3.7 build, see post in thread


CRC32: 13EB9AD9
MD5: 96C2C058B0128BEC346BD0D034D7B31E
SHA-1: 83978F54B7EDDA073CC4E865493AA6544862879A
SHA-256: 93FB4641810C06DE554E97FD4E6B44CEFBD8ECB8EA8CFEA3CC550B823C3E89CE


edit9: Updated 3/11/2020 updated cygwin, guess there was some bug in the cygwindll, see post in thread.


MD5: C3594A08967FD57BF36F757980480F9D
SHA-1: DF6C8B3D18941DABBC5AB21ACB5844A062620092
SHA-256: B1A14F8B2435AAA98D26F8499DF23BF6532B5F0EA2288DA04E0C28333EDBC48E


edit10: Updated 6/9/2020 New 3.8 build, see post in thread


MD5: 38A01DC0D4CC67058B094A96274A6F49
SHA-256: E37B0885EFA60106A3333CDAE878815B2306B434175F2BFBAF2DBF709BAB2049


edit11: updated 6/10/2020 New 3.8.1, see post in thread


CRC32: 69CE7B06
MD5: 1157B038DC04646B074A822A171E77A7
SHA-1: A692D6E5FAD3004A229C92661EC4448004EA269E
SHA-256: CD337C2EEB5ACF02713867990E4F9F0656CC0CAEA850F3B3C289DD79305DF1A1


edit12: updated 8/17/2020 New 3.9, see post in thread


Name: iperf3.9_64.zip
Size: 1542276 bytes (1506 KiB)
SHA256: 15D2D3C2A8B9A69EFD9991FEFE5206E31D6055399F7A4C663C3CB6D77B6770F8


edit13: updated 5/31/2021, see post in thread


SHA256: 098f276552939acec2a9a7d6990e79bac17e45fb951d32ce59c2d764cdcaf15a


edit14: updated 6/4/2021, released a new build


sha256     2cf3ff3671f9f4f57cf01ab8b2d960feb9e087d450f3b58aaf4ab82333262be0

iperf 3.10.1 fixes a problem with the configure script that made it make not work correctly in some circumstances. It is functionally identical to iperf 3.10.

I didn't seem to have any issues with my 3.10 build, but redid to keep with current version numbers.


edit15: updated 2/2/2022 - see post in thread about 3.11 being out and new compile of 3.10.1









edit16 updated 10/1/2022


SHA-256: 24222F681219D3814880D0E3FAB2165C1A88628D1DBD89CCBFADD4A853DD8AC7

edit17 02/16/2022


SHA-256: 28AD4F9146B112FE4AAFC092042A1769F38E4031E6FE9C5790BFFE56B696028C


edit18 updated 7/1/2023


MD5: F2E950606D42EDC33BAEDC2A475791F7
SHA-1: DD1810A0A76A428274B45BBE97FDA8E026B3C552
SHA-256: A4D01475E70CB78352D1754A24A8DBF71DB848AF985CFAF5FB75D1E65F0FA664


edit19 9/15/2023


MD5: 368FDF957DA41124515BC56131B014F4
SHA-1: D23EA253A73F24812087A05EAEC3C5E1653ADF63
SHA-256: 15BCAE86ED07FAFBB6CF0A91D5ECED2CEEE65077C05059927C707D87077D3618

edit20 12/1/2023


CRC32: AA6A0862
MD5: 5F7F24A0BB135DDE38C6182A9F60D6D4
SHA-1: 2C24A2499A1EFECC0B7F592705CB460864FE6072
SHA-256: 52063FF7CC8570A86A0AAAEF8221370AFB4A4EE93ACA2029B7DF4BAAD7032B15

edit21 05/10/2024


CRC32: F6D8E2A8
MD5: 03E0ED0BF5E9A52CC22BDEBF9681BE81
SHA-1: 370D1B1896990CD2BA3806FD609185D2F977EDB8
SHA-256: C1AB63DE610D73779D1003753F8DCD3FAAE0B6AC5BE1EAF31BBF4A1D3D2E3356

edit22 05/13/2024


CRC32: 6311D9F3
SHA-1: 2F16012B6F0373522B084B16BBA634B010A4BCC0
SHA-256: A36D8A6284C3097D74E61B3DB5FF45EF08D77494F17E34900C73D69DA94E3810


Link to comment
Share on other sites

Sweet stuff! (y)


I'll start testing my powerline stuff too (TP Link TP6030s - same as the 6010 but with 3 x 1Gbps ports on each device). My Xbox, TV and WDTV will be connected to it so need to make sure it can handle it all! :yes:

Link to comment
Share on other sites

It would be very interesting to get some powerline adapter real world numbers sure..  The one's the OP got show 500mbps, but wireless makers say that new router is 450mbps 2.4, which will all know is a crock of sh_t!


I have noticed couple of things not working on windows with this build, the zerocopy -Z is not supported, that is kind of a given.  But the -J for json output causes a stackdump as well, so don't use those ;)


I keep meaning to grab a set to play with, but then again I run wire if needed ;) I have set them up in a few places..  But no gig, and they easy do 100mbps without any issues..

Link to comment
Share on other sites

Get the TP-Link TL4010 kit, like $30 on Newegg and gave me 10MB/s* copy speeds between my laptop and the NAS connected to a 1Gbps switch. They were also in the same room, same outlet even so not "normal" usage but just wanted to get a general idea of what they are capable of.


* - Note the 4010 one is limited to a 10/100 port so the speeds were limited there. The 6010 pushes ~40MB/s in the same setup with a link rate of 337Mbps. Didn't try to do more testing to see if it could be faster but figured that's pretty good.


I'll do some real testing on the weekend :D

Link to comment
Share on other sites

where do you see a link rate?  40MBps is best you can hope for with that rate..  Simple /8 math gives you ballpark numbers 337/8 = 42.125 ;)

Link to comment
Share on other sites

Yeah, no got that, I was expecting a full 500/600Mbps link rate however since they are right next to each other.


Doesn't matter much I guess, was just a quick test :)


The software for it shows the link rate:


Took this shot from http://www.smallnetbuilder.com/lanwan/lanwan-reviews/32454-tp-link-homeplug-head-to-head




The software is not super useful but It does allow some little tweaks ("QoS" - dunno if it actually works) along with firmware upgrades.




Link to comment
Share on other sites

Well the link rate is good info to know, so software is useful for that and firmware updates.. So looks like the link rate it reports is pretty close to the money then which is good validation with your file copy.

So does the software pick up the other device on the other end of the powerline connection or do you have to plug in on that side to see that one?

Link to comment
Share on other sites

The software on the Network tab will show you details of the other devices you have plugged in. In my case I have 4 so 3 show up on the Network tab. To see the info of the local one you have to plug into it or something connected to it which would show on the Status page. Doesn't show much info though, you can just change the Network name and view the password as seen below:




Here is the advanced tab if you were curious:




So basically I just use it to test/setup and then get rid of the software.

Link to comment
Share on other sites

  • 1 month later...

Updated build

New Version is out iperf3_10 http://software.es.n...3-0-10-released, I have updated the windows build you can find it here


md5 of zip 7DF9AF051A5554DC342DE366710FFC35

using current version of cygwin dll 1.7.33

Quick test shows its working fine, anyone find any problems let me know.


Link to comment
Share on other sites

Cool! I am running on some of the very first home plugs, They work well for me at the minute but I should really upgrade to Gig ones at some point. Been meaning to for a while. I guess I am waiting for the right "deal" .... They work fine for my web browsing but transferring large files around not amazing but do the job.

Link to comment
Share on other sites

So I just got a pair of these that someone was not using any longer, and they are the netgear AV500 model (XAV5201 - but WTF they only have a 10/100 nic -- how and the F can they get away with the 500mbps label.. I thought it was nonsense when wifi spouts out their nonsense numbers.. If you want to call them 200mbps when you have 100mbps full duplex ;) But 500 come on give me a break.

Figured could do some testing, but kind of pointless with limit of 100mbps interface.. But yeah better than wireless connection.

Link to comment
Share on other sites

So I just got a pair of these that someone was not using any longer, and they are the netgear AV500 model (XAV5201 - but WTF they only have a 10/100 nic -- how and the F can they get away with the 500mbps label.. I thought it was nonsense when wifi spouts out their nonsense numbers.. If you want to call them 200mbps when you have 100mbps full duplex ;) But 500 come on give me a break.

Figured could do some testing, but kind of pointless with limit of 100mbps interface.. But yeah better than wireless connection.

Backplane speed

Link to comment
Share on other sites

Backplane speed my ass - they come in a kit with 2 of them.. Now maybe the 1 that has 4 ports on it ;)

And even if it could do 10 freaking trillion bps doesn't matter when you have 2 of them and connecting with it 100mbps nic..

Come on companies - why not just print actual freaking numbers the users can expect!!

Link to comment
Share on other sites

Yeah I understand wanting to say your the fastest, etc.. How about actually being the fastest with actual real numbers and benchmarks, etc ;)

Link to comment
Share on other sites

yeppers and most can't even come close.. like ac1200 only gets 300Mbps or around 36-42MBytes/sec

Link to comment
Share on other sites

They add up numbers that don't reflect what can be seen by the client.. A 1750AC router for example adds the 2.4 and the 5ghz together, even though no single client can use both together.

Are you connecting at 1200 as you phy data rate reported by the client? If so 300 is bit low.. Other problem with speeds reported these days, which I can understand is the AP numbers - you have 3x3 at the AP, but then you connect with single stream client, your not going to see anywhere close to what it might do if 3x3 client.

Link to comment
Share on other sites

  • 3 weeks later...

Updated to build 3.11


This maintenance release adds a -1 flag to make the iperf3 execute a single test and exit, needed for an upcoming bwctl release. A few other bugs are also fixed.


D:\iperf3_11>iperf3.exe -v
iperf 3.0.11


Server specific:
  -s, --server              run in server mode
  -D, --daemon              run the server as a daemon
  -1, --one-off             handle one client connection then exit


Updated first post with link to new file.. Also cygstdc++-6.dll does not seem to be needed, so removed it from the zip.


BudMan@i5-w7 /iperf-3.0.11
$ cygcheck iperf3.exe
Found: D:\cygwin\usr\local\bin\iperf3.exe

BudMan@i5-w7 /iperf-3.0.11

Link to comment
Share on other sites

  • 3 weeks later...

Thank you for compiling iperf3 for Windows!


It's working but I had to jump through some hoops. Specificallly, it won't work if I leave iperf3.exe and the dlls in the same folder, even if I add the path to this folder to the Path environment variable. I had to move the dlls to a different folder, and add it to the Path environment variable also.


Now everything is working great, I just wanted to share in case somebody runs into the same problem.

Link to comment
Share on other sites

Yeah I understand wanting to say your the fastest, etc.. How about actually being the fastest with actual real numbers and benchmarks, etc ;)

Happy Birthday!

Link to comment
Share on other sites

  • 4 weeks later...

Updated 01/17/15

New Version is out iperf3_10 http://software.es.net/iperf/news.html#iperf-3-0-11-released I have updated the windows build you can find it here


md5 of zip e58f2721f70f43e78a1c9ae8605dd025

using current version of cygwin dll 1.7.33

I pulled out one of the cygwin dlls - doesn't seem to be needed.



First of all grate work thank you!


Little fix to your post, if you hover over the link http://files.budman.pw/iperf3_11.zip you will see it actually redirects to version 3_10 the hyperlink needs to be fixed



Also if you run the command with the Json switch it crashes, for example:

iperf3.exe -s -J
      0 [main] iperf3 3004 cygwin_exception::open_stackdumpfile: Dumping stack trace to iperf3.exe.stackdump

Do you have any idea how we can fix it?


Thank you

Link to comment
Share on other sites

thanks for the input will take a look at my links, and look into that crash..

edit: ok link updated - that was issue with editor on neowin, once I changed to see the code then yeah saw that popup was wrong. Thanks it has been corrected. Now just to take a look at the crash ;)


edit2:  So far have not been able to get this -J working, I get the same crash.  I found some old patches to run compile on windows under cygwin.  I applied them, and seems to still work - but still get crash if -J, what is odd is works under cygwin.  Not just if you try and run with the .dll


I have updated cygwin to latest build, and moved to 64 that got rid of another dll requirement when you run cygcheck..  Need to do some more playing.  Not a huge coder, I can make minor changes, and can follow a long if someone is going over something.  But diving in and looking for something like this from scratch is a bit over my skill set.  But since it works when run inside cygwin, the Exception: STATUS_ACCESS_VIOLATION points me to maybe something in permissions.  Lots of talk of rebase when getting that error..


And just noticed post about having to move the dlls?  Where exactly are you having to put them?  Clearly that is not the case on multiple machines I have run the files on.  Do you have the cygwin dll somewhere else in your path?  Do you have cygwin installed?  Will update any more info I get.. For now guess don't use -J or run it under full cygwin if you need that option on a windows box.  I tried it as well on the linux builds and those are fine for -J.

Link to comment
Share on other sites

  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now