The death of the PCIe expansion card
kerricklong.com
kerricklong.com
The reason why they don't do this is because PLX got bought out by Broadcom and they jacked up the price of the chips. It turns out their most lucrative market was storage, because datacenters want to connect a lot of high-speed NVMe to one machine and they will pay buckets for a chip that will let them all share bandwidth.
So now consumers that want a lot of devices need a CPU with a lot of lanes, which meant buying into a more expensive high-end desktop platform with more than the standard of 16 or 20 lanes on it. Except these are also becoming scarce; both Intel and AMD's high-end desktop platforms haven't been updated in years. The way high-end used to work was that they were just last-gen server chips with overclocking and more consumer-oriented boards, so they got the extra lanes and memory capacity, but you still got the gobs of USB and so on that you'd see on a consumer board.
So with no lane expanders on motherboards anymore, and no high-end platforms with higher lane count CPUs in them, the only other option for buying something with lots of slots in it is to buy server gear. Not only is that more expensive, but you also lose out on all the consumer-grade creature comforts you expect[0] and have to deal with the added noise of small fans in a rackmount case.
[0] VGA is considered standard video output on most server motherboards
PCIe switches weren't common or necessary for most consumer applications. Workstation and server CPUs have plenty of lanes on their own. PCIe switches occupied a relatively narrow use case in the middle where people wanted to use consumer CPUs but attach a lot of add-in cards and share bandwidth across them.
Even that use case has been eroded a bit with PCIe splitting options, where an x16 lane can be split into x8/x8 or even x4/x4/x4/x4 depending on the motherboard. An x4 PCIe 4.0 lane is as fast as an old x16 PCIe 2.0 lane, so that's a significant amount of bandwidth still. PCIe 5.0 takes this even further, where an x16 PCIe 5.0 slot has over 60GB/sec of bandwidth, which is a lot even when divided into x4 or x2 channels.
AMD especially made platforms with a lot of PCIe lanes relatively affordable. An AMD workstation motherboard and CPU with a lot of PCIe lanes might not actually be that much more expensive than a hypothetical consumer CPU with a PCIe switch. The other issue is that with a PCIe switch is that you're still limited to upstream bandwidth, so if you need x16 bandwidth running to multiple cards at the same time, a PCIe switch doesn't actually help you.
Or even think about Gen5, doubling Gen4 speeds: With a PCIe switch, I could get essentially 3/4 performance out of a Gen5 host GPU, and full performance out of a Gen3 second, instead of 1/2 and 1/4 respectively.
The only thing I'm aware of that will actually saturate a PCIe connection is NVME storage.
Aside from that, I agree it's not too big an issue for 95% of computer users, but it's something to keep in mind.
You could probably argue that you should just settle and not take the 5%, but when you are buying in at such a price point, you are likely concerned with 5% differences. There are also higher end SKUs such as the 3090Ti where that performance gap is likely larger.
The bandwidth is there by an order of magnitude, but not the lanes to actually use it.
I would be very surprised if the silicon doesn't still support 8+4+4 operation. I suspect the lack of available motherboards with this config comes down to the expense of getting a PCIe gen5 signal to reach the third slot. It may require both the extra mux and a redriver or retimer.
Perhaps why they dropped the support is because the reason you wrote? Still I wonder is it possible to have Gen5 x8 and Gen3 x4/x4.
Sort of. support is "Up to 1x16+4, 2x8+4" [1] so could be used as x8/x4/x4, the remaining 4 lanes are unused in the x8, as there are 20 PCIe lanes on the CPU.
[1] https://ark.intel.com/content/www/us/en/ark/products/228441/...
PCIe switches still have a place in storage servers. I can build a backplane with a PCIe switch so I can get a ton of ports/slots for HDDs or SSDs and not have to buy a much more expensive CPU with the IO to handle everything. The trade off is that you are over subscribed and all disks will never reach full bandwidth simultaneously.
* I can't disable the BMC video card, which means that when I'm running Windows, there's a 800x600 monitor that will never go away and windows occasionally decide to open on it. This is solvable by opening the BMC on the machine itself and using the IKVM webapp to drag it onto my main screen; this takes a very careful flick of the mouse. * There's no built-in audio; in order to listen to Spotify, I use a USB audio card. * The board only has 6 USB ports, only 2 of which are USB-3. Thus, I get to use a lot of hubs. * It takes a long time to boot past the firmware; generally 3-4 minutes to warm boot and 6-8 cold. * While it can be used as a single-socket board (which I do, because I don't have the funds for a second CPU just yet), I lose a bunch of PCIe slots doing so; half the PCIe lanes for the first CPU are direct wired to the second socket for the inter-CPU link.
Get yourself a nice Highpoint USB 3.0 card with quad controllers on each port. 20Gbps of bandwidth in aggregate.
I believe there is a jumper on the motherboard that will bridge the missing PCIe slots in single CPU configuration.
For example, when starting KeePass by opening a .kdbx password safe file, KeePass will first open the master password input modal pop-up.
If that happens on a turned-off screen (IMHO it opens on the screen on which the KeePass main window was placed before the process exited on the previous run), you'll be lost.
Very frustrating, e.g. for multi-screen home theater setups.
Anyone please share your solutions to this problem.
Other stuff seems normal for a server board though.
^^ why is that? is it just the firmware being buggy, or is there any legit reasons why they need to self-check _for minutes_?
Beyond that, lots of servers will then enumerate all of the network interfaces and try to initiate a net boot, and only then fall back to the hard drive. Some tweaking in the bios can usually disable these features and gain a bunch of time, but again in a headless remote context this default behavior is incredibly useful for recovery purposes. We like to avoid actually running out with a physical crash cart if we can help it :)
Yep, the platform is 2 years old, but supports both the Zen2 and current Zen3 CPUs (but not PCIe5.0 & DDR5 as Zen 4 requires a different CPU socket and is only announced right now, not available from AMD until the end this month).
However, 8 x DDR4 channels and 128 x PCIe4.0 lanes still give you better total bandwidth than 2 x DDR5 and 24 x PCIe5.0 like the few currently available DDR5/PCIe5 platforms support.
[1] https://tanelpoder.com/posts/11m-iops-with-10-ssds-on-amd-th...
You can just switch to EPYC with hardly any difference in price point.
When 3000-series was launched, it was first OEM only (Lenovo) but later became available in retail too.
[1] https://www.amazon.com/AMD-ThreadripperTM-PRO-5975WX-64-Thre...
Edit: On second glance, the markup compared to last-gen Threadripper is gnarly. 24 core SKU MSRP is $2.4k, compared to the 3000 series SKU which MSRP for $1.4k.
At that point just go EPYC.
Business users get: laptops, mostly. You need a desktop? It's either because you aren't trusted/don't need to take a laptop around or because you need a workstation. The low end doesn't need PCIe slots for anything: integrated GPUs are good enough to do all generic business work, integrated sound, network, blah blah blah.
So we've identified workstations as the business case for more PCIe slots. The AMD workstation CPUs (ThreadRipper and EPYC-P)have lots and lots of PCIe lanes. More than that. The Intel workstation CPUs ... don't. G12 has 16xPCIe 5 and 4xPCIe 4. So you buy AMD this year.
Home users: either you're a casual gamer or a hardcore gamer. Either way, you need a maximum of 2 PCIe slots for GPUs, and you're done.
What's left? People on HN who run server and workstation tasks on repurposed desktop hardware, some of whom buy used server gear and live with the noise, some of whom buy AMD workstation gear
Graphics, sound and networking may have been the biggest reasons and may now be adequately catered for in everyday PCs without the extra hardware. However the high end of all of those markets still needs more than what you get on any basic motherboard and processor and then there are all the speciality cards as well catering for who knows how many niche markets.
Which of them need to be at PCIe latencies rather than USB latencies?
The latency degradation for large transfers is so noticeable that most audio DACs (not just ones for gullible audiophiles, also for the pro market) use custom drivers and USB protocols. For 1/1000000th the data rate that a capture card would need.
Intel's current workstation CPU line, launched a year ago, has 64 PCIe 4.0 lanes. https://www.pugetsystems.com/recommended/Recommended-Systems...
I have an anker 5-port USB power hub (no data, not connected to computer) next to my machine for charging phone, headphones, earbuds, etc, and another 10-port hub for charging the 2 index controllers, 3 full body trackers, and 3 track straps with builtin batteries for extended play (for days when you feel like spending more than 7 hours in VR anyways...)
I've used PCIe a lot for storage and networking applications in laptops, servers, and desktop form factors. It has allowed for much cheapskating--which is why it's got to go. Repair and expansion options are bad for business.
Nice to meet another used hardware buyer. I think the total cost of my laptops over the past 10 years equates to roughly the price of a single new high spec Macbook, and that's with repeat replacements due to damage / spills / etc.
USB 3 can trash your WiFi/BT spectrum as many device manufactures provide inadequate shielding. I got some foil tape and carefully lined the inside of an external drive enclosure and fixed some intermittent WiFi issues. FCC should scrutinize USB devices more, I thinks. Probably wack-a-mole though.
I'm gonna shill a bit again and say the LG Gram series belies anyone saying this has to be done for weight / slimness reasons, as even the 1.0 kg 14-inch model has two M.2 2280 slots.
https://www.amazon.com/Adapter-advanced-solution-Controller-...
and vice-versa (why? m.2 slots have ACS support for pci passthrough)
they're essentially just a wire as it's the same bus
The users who aren’t tend to be building servers.
Then at least 64 GB of ram, and a sweet disk array, etc.
I did run a dual head Windows environment for a while, but it did have issues from time to time.
Having everyone gathered in the same room is also a feature. But you will want to have a good headset =)
Did try Windows but Windows has no built in support for multi seat, so it didn't work well. Linux however have great support.
Windows kind of does have built in support for multi seat[1], it's just Microsoft won't sell it to you, and if they did, licensing costs would be enormous for 2-5 people; I was using third party software to enable multiseat, which worked ok for the version of windows it was built for, but hotplugging USB was always an opportunity for calamity, etc.
[1] https://docs.microsoft.com/en-us/windows-server/remote/multi...
hdmi/displayport audio?
What do you mean with "you aren't trusted" ?
Customer service. Tech support. Inbound sales. Outbound sales.
The company doesn't trust you. If you take a machine home, you're probably going to lose it or break it or sell it, so that's a hard no.
Ipso facto...
Just so the company can continue to have insecure internal services.
Although 'low end' may be a misnomer, you do have a point.
But then, if expansion slots are not needed, you can go with ITX motherboards as that's the point. If I'm buying a full size ATX board, it better have plenty of expansion capabilities.
Since Threadrippers until very recently didn't support RDIMM, you could only put 256GB in them -- but even for that little you needed eight slots. Source: https://www.reddit.com/r/Amd/comments/6icdyo/amd_threadrippe...
It was the TR Pro last year which finally started to support RDIMM. No one released an mATX version though, pity. The earlier platform did have an mATX version but only four DIMM slots, kinda pointless there.
(My laptop has 64GB RAM, so I do not think 256GB on the desktop is unreasonable.)
That's far from universal. The business users I've worked with recently almost all have desktops. A few (mostly management) have laptops for work. I'm sure a lot of that has to do with whether the business is remote-work-friendly. There are still quite a few businesses who are decidedly NOT.
1. The ADT-Link parts that you see on AliExpress are the most common ones; most other parts you see will be rebadged or resold versions of those. If you're looking to play around with one of these, http://www.adtlink.cn/en/product/R42.html is resold on Mouser as https://www.mouser.com/ProductDetail/DFRobot/FIT0782?qs=ljCe...
2. There's some mechanical compatibility issues with these adapters due to the screws connecting the cable to the M.2 card: M.2 connectors on the motherboard side come in various heights and not all have sufficient room for the bottom of the screw to not hit the motherboard and prevent the card from being fully inserted.
That said, the adapters work great at PCIe Gen 3 speeds. I probably wouldn't expect them to work above that in the general case.
Running a multiseat machine (i.e. truly independent login stations) pretty much requires a video chip per seat.
It's been an interesting ride. Graphics card fans weren't really meant for 24x7 operations. After a recent power failure, gummed up lubricant caused one not to start again, and the card suffered heat death. Also multi-seat login was abandoned, i.e. broken and tmk never fixed, in GDM, so I have to use LightDM with no alternatives. Also there were stability issues with nVidia cards, but three Radeon cards work fine.
Possibly with the latest hardware, a GPU-per-seat setup could be done with Thunderbolt? Anyway meanwhile we soldier on on the cheap, with a circa 2012 vintage ultra-high-end gamer machine still providing adequate compute power for all the screens in the house.
If you really want multiple GPUs though you can also use a normal 1-in-4-out type PCIe switch and save a lot of cost on Thunderbolt components in-between. Low bandwidth ones are particularly dirt cheap due to crypto mining volume. Keep an eye out for ACS support or you may have to use an ACS override patch though.
Does this work yet? Last time I looked, my understanding was that SR-IOV is supposedly supported on Arc but the software doesn't exist yet, and might not for some time.
I'm sad they got rid of GVT-g with the change though. SR-IOV is definitely a nice add but it has downsides on the resource sharing. Undoubtedly GVT-g was just considered too unsafe and too niche to keep though.
Are those seats highly active all the time? If not, plenty of GPUs have fans that shut off when idle.
What does this mean? (I'm familiar with the Microsoft ad campaign, but that doesn't make sense to me in this context.)
Here's a simple example.
I found an old i3 PC from Intel in my house that was left by one of my son's friends. The CPU is artificially limited to 16 PCI lanes.
You might think you could plug a discrete GPU in, it only uses 16 lanes, but no, some of those lanes are consumed by storage, USB ports, super I/O, etc.
So this computer is e-waste now because it can't be upgraded to keep up. This kind of delinquency is only possible because Intel has pushed barely-functional integrated "GPU"s.
Back in the 1980s and 1990s you had to know some rules about how interrupts were assigned to slots to build a working PC. Since the early 2000's, PC builders face a number of barely documented rules about how PCI lanes are assigned which boil down to "i3 and i5 are e-waste, buying a budget or mid-range motherboard is a waste of money because upgrading your machine will be a matter of 'you can't get here from there'"
I personally did "x16-x1 mod", ie removed the plastic from the connector so a x16 video card could be installed in a x1 slot (and free up the x16 slot for a network or RAID card, don't remember atm). Video card worked fine. It's up to PCI-E standard to actually use any amount of lanes available.
https://en.wikipedia.org/wiki/File:PCIe_J1900_SoC_ITX_Mainbo...
> scroogling
So the PC acquired a very diverse set of cards and was able to do heavy processing in a very diverse set of roles - from medical equipment, cash registers, MIDI/music composition, graphics, publishing, sound, networking, etc. No business was untouched by the PC in the 80's--the ability of anyone to make hardware for the platform was a significant part of that being as cheap as possible.
PC hardware seems to be slowly moving towards being like a cell phone - everything onboard/builtin, ports picked by the manufacturer (you will get 1 USB-C port and like it), and if you want to add something, your primary option is a USB-type port of some sort - with its own world of firmware, controllers, etc.
Look at a smartphone and a modern ODM-designed cheapo laptop motherboard - they're very similar.
If motherboards stop being expandable it might mean the PC hardware ecosystem isn't going to be able to innovate except at the behest of high-capital firms like Intel, AMD, etc. That might be OK if we are truly at the zenith of what's possible with a PC, and really want to give the keys to the kingdom to those firms.
And who knows - I know somewhere in there USB4/Thunderbolt on some level is able to move PCIe traffic, so maybe it won't be so bad.
Back when the USB1 spec came out it said you could plug 127 devices into a port through a hierarchy of hubs.
With three different laptops and a plethora of USB 3 hubs I found the system would support only a limited number of devices in the tree. If you plugged in too many devices (somewhere between 3 and 5), plugging in an new device would cause an existing device to drop out. It's just annoying if it is a keyboard or mouse that gets dropped out but if it is a storage device data could get corrupted.
I looked at the USB 3 spec and couldn't find any guarantee that there was any number of devices you could plug into hubs and have it work.
It's a controller and/or BIOS limitation[1][2]. The complication is that while USB devices can be addressed using 7 bits = 127 devices total, each device usually creates more than one endpoint, and each endpoint consumes controller and system memory resources. The BIOS allocates the memory, and the amount is apparently hardcoded (guess a setting would be too difficult). If you have many USB 3 devices with a lot of endpoints, that memory runs out quickly.
In addition, each endpoint reserves some bandwidth, so the uplink needs to be able to provide that bandwidth.
[1]: https://community.intel.com/t5/Embedded-Intel-Core-Processor...
[2]: https://borncity.com/win/2019/09/06/windows-10-not-enough-us...
No, we don't, and they've already shown we can't.
Intel kept us at 4-core shit-tier processors for a decade, and the moment AMD managed to get a leg-up on Intel, they killed their HEDT platform because it competed with their server platform in PCI Express lanes and turned their back on all the gamers that brought their sorry ass back from the brink of death.
Both of them have been shown to be greedy, opportunistic shitbags of companies that cannot be trusted.
This wasn't an unreasonable worry for nvidia to have. They'd just lost preferred chipset status on AMD platforms when AMD purchased ATi. Intel had released some lower end platforms with only 1x pcie connections (nvidia had responded with nvidia Ion which could work over such a tiny link) and AMD was talking big about their APUs.
It was a reasonable fear back then that Intel and AMD, with a tightened grip on their platforms and their own integrated solutions competing in the same space, might choose to just cut off nvidia's air supply by flooding the market with chipsets that didn't have the connectivity Nvidias cards needed.
Many modern cases opt for only one or even no HDD bays because it makes the case look cleaner, smaller and gives it better airflow. Gone are the days where most cases had top to bottom bays of DVD and HDD slots
Distributed raids (like ceph and glusterfs) and raid expansion (recently added in zfs) also make it easy for a homelabber to get started cheap and continuously add new disks.
1x Bluetooth+Wifi adapter (offload the USB bus)
1x Highpoint USB 3 controller (the only USB3 controller that is reliable for work)
1x Quad network ports adapter
1x Video card
Things I wanted to install but couldn't-
1x M.2 nvme adapter card
1x Video card
As I mentioned in the "Slots vs. Lanes" section in the article, most home users don't actually need more lanes -- just more slots.
Indeed. I really don't understand why they can't have x16 slots instead of those useless x1 slots.
My current motherboard has two PCIe x1 slots, running either 3.0 or 4.0. Plenty of bandwidth for lots of stuff. But they're useless because every expansion board has a x4 or larger connector. Previous motherboards have been full of useless x1 connectors as well.
I know there are exceptions, but x1 is certainly the norm.
Fast-forward a bit and I used it to build my kid a new machine, except my old RTX 2060 was a "2.5 slot" card which means it's literally the one and only PCIe card I can install. I had to get him a USB wifi adapter...
@duffyjp : Maybe i'm mis-reading your comment here...but are we out of the GPU apocalypse yet? Genuinely curious, because I've been holding out getting a small desktop PC for homelab use. (Yes, yes, i know for server homelab stuff i don't really need a GPU, but GPU pricing i think tends to portend overall computing cost nowadays.)
There's room at the bottom for a wifi card with an external antenna that is connected by wires to the rp-sma connectors on the card.
That's it. That's all the room k have on a full size tower. I used to have a FireWire card fory audio interface but replaced it with a usb-c model to not worry about FireWire support in current year.
In fact, some even clock in at 4.3 slots. https://www.asus.com/Motherboards-Components/Graphics-Cards/...
I had to resort to a mining rig style setup with 16 lane extenders to be able to properly utilize all the slots after running into the same issue.
I found some ultra low profile pcie extensions (basically mining risers that use a USB3 cable) that allow me to relocate the cards elsewhere but still install them in slots that are under big GPU fans.
This was the one I used: https://www.amazon.com/dp/B07N38Y799
On AM4 ATX-boards slot 0 is often then primary M.2 slot. Slot 1 the GPU and slot 2 is either empty, or the CMOS battery, or like you suggested a secondary M.2.
So you're already down to a maximum of 5 PCIe slots.
I have two ASUS dual CPU workstation motherboards and run some of the devices with PCIe ribbon extensions. I cannot run my Highpoint U.2 RAID card on an extension but I can run a Highpoint USB 3 card just fine. I can run a 2070 GPU just fine, but the RTX A5000 GPUs are flakey. The dual Blackmagic quad 4k capture cards want to be in specific motherboard slots and work okay on one particular brand (Thermaltake) of extension cable.
The problem is nuanced.
Never tried running a 4x2TB striped NVME PCIe 4.0 scratch disk? This stuff just lets you forget about what used to be a bottleneck. No need for RAM-drives.
Even USB-C remains a niche feature on the latest socket 1700 (Intel) and AM4 (AMD, presumably extending to AM5), despite being standard on laptops for years. Part of this is because graphics are often not on the motherboard, so the motherboard has to include a DP-in socket to support graphics out over USB-C.
Say what!?! How have i never heard of this until today!?! @causi Would you mind sharing a link to whatever cool mouse you had? Thanks!
There's a growing trend in SoCs of just having serdes blocks - because these days PCIe, high speed ether, USB/thunderthing, sata etc etc are all just variants on the same high-speed technology - different protocols are just different MACs on top of a common serdes block
Also how hard is it to layout pcb for these? Is length matching sufficient?
For me, I like the M.2 slot on the back of the board. I'd like it more if it were a standard so case makers can assure access.
Also, I understand it might be a bit fragile but is there any reason why M.2 slots can't stick straight up and out of the motherboard? Maybe with some support around whatever you plugin. Sticking straight up and out would provide all around cooling for the stick of whatever AND save motherboard 2D space.
Let me ask you this: What is left to plug in? Most removable gadgets are USB because USB is fast enough. The devices which actually need the bandwidth, latency or memory mapping are already on the motherboard. And the people who need more are a minority.
The only real use case for PCIe to the average PC user is for connecting a GPU or NVMe. Moving forwards I see the converged hodgepodge of USB4 and beyond killing the x1-x4 PCIe slot with servers being the last hold out for high slot counts.
It's so fucking American, isn't it? If you can't beat someone with your technical superiority, buy them out.
I'll address it line-by-line.
> Lack of USB ports
My motherboard has 8 USB ports of varying capability on the rear I/O block. It has two internal headers to add another 8 USB ports. That's 16 ports. It's not even a very expensive or feature-rich motherboard... it's an MSI X570 Gaming Edge Wifi... $209.99 on release date at MicroCenter in 2019.
> Thunderbolt ports so you can attach monitors, USB devices, and even externally-mounted PCIe cards with a single daisy-chainable cable
Who exactly is doing this, when most video cards have 2 or 3 DisplayPort connectors on them...? External PCIe cards? For what purpose?
> WiFi cards so you can get higher network speeds and lower latency without a cable
Present on most motherboards, even budget options around $125. Nowadays, you can even switch the card out by unscrewing the shield, unscrewing the wire tension screws, and popping in a new M.2 WiFi card. Why suck up a PCIe slot when a small M.2 WiFi card slot fits?
> Network cards so you can have additional and/or faster Ethernet ports
Already built into every modern motherboard. Many have two. Higher-end boards have 10gig NICs. Some have two. Why would you need more than two NICs in your machine?* (See below)
> TV tuners so you can receive, watch, and time-shift local over-the-air content
This may be the single place where the author has a point, since the only way to view OTA content via stream is to either pay for Hulu, DirecTV Stream, Fubo, YouTubeTV, and then input your zip code.
> Video capture cards so you can stream or record video feeds from game consoles or non-USB cameras
There are plenty of excellent USB devices to accomplish this, you don't need a PCI Express-based solution.
> SATA or SAS adapters so you can attach additional hard drives and SATA SSDs
Almost every motherboard, certainly every ATX motherboard of the past 10 years or so I've seen, has standard at least 6 SATA ports. Smaller ITX boards may only have 2 or 4, but if that's your design, you've already committed yourself to a lack of PCI Express slots.
> M.2 adapters so you can attach additional NVME SSDs
Most mid-range motherboards have at least two of these. High-end motherboards have up to 4. This still doesn't solve your primary problem that I'm going to address here in a moment.
> Sound cards so you can run a home theater surround sound system from your PC without needing a receiver (RIP Windows Media Center)
Realtek cornered the market here with onboard audio, and it is actually surprisingly good for their higher-end options. Yes, you could get an older HT|Omega card, or a SoundBlaster AE-5/7/9, but why?
> Legacy adapters for older devices that use serial, parallel, or PCI (non-Express) to connect to the computer
I'm not even sure what you'd attach that's that old... and more importantly, why...
**** THE ACTUAL PROBLEM ****
Everything the author of this blog pointed out is an issue, but most, if not nearly all of them, have been solved by motherboards integrating more and more features onto them. This is the reason I don't get salty about buying a new $400 motherboard from ASUS, or MSI, or Gigabyte or whoever. I get a high-end sound card (usually a Realtek ALC4080, which supports 7.1 channel surround sound + optical S/PDIF), a 2.5 to 10 gig NIC, WiFi 6 or 6E, 8-12 USB ports including Type-A & Type-C, multiple M.2 slots (some motherboards support up to 5 now).
Turn the clock back 20 years or so. Hell, go back to 1997, when the first WiFi router was sold.
You'd have to buy your motherboard. You'd have to buy your NIC. You'd have to buy your WiFi card. You'd have to buy your sound card. That's four components in one. But wait... most motherboards had TWO... at best FOUR... USB ports. So you need to buy at least one or two USB hubs to get up to the 8 to 12 ports modern motherboards have on their rear I/O connectors alone.
No.
The problem is not "lack of PCI Express slots".
The problem is lack of PCI Express lanes. How do you expect to drive all this awesome shit you wanna throw into your tower case? The MSI Z690 MEG UNIFY has two PCI Express 5.0 x16 slots and one PCI Express 5.0 x4 slot. And guess what... your single x4 slot is off-limits, because you're gonna buy a Samsung 990 Pro NVMe SSD (which is gonna use those 4 lanes), and will certainly saturate it with it's 1,600,000 IOPS and 8-9000 MB/s transfer rate.
SLI and CrossFire are still supported technologies, even though, frankly, no one could afford to use them in the past two years, but that's changing. The cratering of cryptocurrencies and the uncontrolled dive that GPUs are currently experiencing means dual video card solutions may be back on the table for gamers. Hell, I've seen used RTX 3080s sell for $440 on eBay by the time of auction expiry. Sub-$1000 for dual RTX 3080 still outperforms a single RTX 3090 Ti. But even those are dropping like a shit from heaven. I saw one for sale on eBay for $1059. $2120 for 100+ FPS at 4K, with ultra settings, and ray-tracing activated? Why not? Lots of people were buying single RTX 3090s for $2400 just a year ago.
No, the problem is lack of PCI Express lanes available.
We thought AMD had rode to our rescue with Threadripper. 64 to 128 PCI Express lanes "ought to be enough for just about anybody". Enthusiasts bought Threadripper to easily run dual GPU setups and dual or quad NVMe setups.
You didn't even have to "go nuts". You could pick up a Threadripper 2950X for it's 16 cores for as little as $799 on release. It gave you 64 lanes. The 3960X supported 88 lanes... Hell, even with dual GPUs and quad NVMe drives, you still had room for another 40 lanes of equipment.
No. The problem is not the lack of slots. The problem is the lack of lanes.
We thought Lisa Su had rode to our rescue against Intel and their stingy horseshit antics, only to find out she's not only just as bad, she's arguably worse... because after being the also-ran, far-in-the-distance, second-tier shitpick of a brand, AMD turned their backs on the gamers and enthusiasts that brought the company back from the brink. Threadripper is now priced so far out of the reach of the enthusiast as to be a non-starter.
But that is your real problem. The lack of PCI Express lanes. Not slots.
This is used extensively in laptop docks. If my desktop motherboard supported it, I'd hook all my peripherals up this way. Instead, I have a KVM with desktop on one side and laptop dock (for work and personal laptop) on the 2nd KVM input. A single Thunderbolt cable goes to the laptop from a CalDigit dock
With Thunderbolt, I could theoretically even share my GPU between machines if I had an enclosure (and desktop correct ports)
Except that the SATA ports on any motherboard are not equal. And you didn't even address the SAS point or highspeed U.2 drives for broadcast or data capture or...
> There are plenty of excellent USB devices to accomplish this, you don't need a PCI Express-based solution.
Evidently you don't work in broadcast or computer vision or machine vision inspection or...
> Realtek cornered the market here with onboard audio, and
Evidently you don't work in broadcast, or use a DAW, or desire higher grade audio, or special audio processors or low-latency MIDI...
>> Legacy adapters for older devices that use serial, parallel, or PCI (non-Express) to connect to the computer >I'm not even sure what you'd attach that's that old... and more importantly, why...
Evidently you don't work in robotics or machine vision inspection or industrial control or industrial logging or medical devices or...
Before we go any further, USB is very consumer grade tech. We know this because it can be unplugged or work itself loose under vibration. There are locking connector options, but they are for the most part completely inadequate. USB is also prone to incredible cross-talk in noisy environments.
I've touched all of these areas in my career, and they all require those connections you are so quick to dismiss out-of-hand. This is an incredibly parochial and naive mindset on exhibit here.
You didn't read the whole post, especially the most critical part.
Lack of PCI Express LANES is the problem, not slots.
All this great shit you're talking about is wonderful... as long as you have the PCI Express lanes to support all those add-in cards.
I have Intel Xeon Skylake processors, 48 lanes of PCIe 3.0, all of equal priority so they aren't tiered like in some of the earlier blue team processors or the red team processors. Across two CPUs that gives me 96 lanes. The slots are switched so either of the CPUs can use an individual PCIe card, or I can assign a PCIe card to a specific CPU. Alternatively if there are not enough PCIe slots I can run the PCIe cards through a separate switch. There are a lot of non-consumer grade motherboards out there that offer these features. It is rare that any deployment will require all 48 lanes on a CPU to be maxed out simultaneously, though I've been involved with use cases where that has taken place (8x 4K non-compressed video stream captures directly to storage), though what happens then is you run in to DRAM bandwidth issues and other problems.
In my workstation I have dual RTX A5000 GPUs, dual Blackmagic quad 4K capture cards, dual Highpoint USB 3.0 expanders with four separate USB controllers per board, a Highpoint M.2 RAID controller with on-board PLX, along with the onboard M.2, six channel U.2 through a switch, onboard USB & SATA.
What we should be asking for is better switching, not more lanes. Again, it is a rare use case where we can max out the bandwidth of all PCIe lanes of a CPU. We should also be asking for better switching for the direct DMA between cards which is a sorely neglected area across all architectures/motherboards.
P.S. Forgot to mention the NIC PCIe card.
I hear you, and I'm usually first to remind people that their own use case is anecdotal and irrelevant.
However, are you really suggesting that the use cases you mentioned make up a large enough percentage of the whole to warrant manufacturers catering to them?
Seeing that RME's USB 2 interfaces manage to stream like 50 or more 24bit audio channels at 48kHz with buffer size small enough to get latencies in the mSec ranges, I always wonder: are other manufacturers just doing it wrong? I know that doesn't completely cover the non-determinism argument, but 'incredibly high' seems to be covered pretty well.
Your use case scenario is very much available from every major computer systems manufacturer, it's just list available under the "Professional" "Workstation" category, not the "consumer/prosumer/a computer is a computer".
If you're saying you don't want to spend the money I get that, but between assuming your use case is the majority.
SAS is not consumer. Multi HDMI capture is not consumer. But all these solutions are available in a different market, which are also much high quality.
EDIT: you also mention U2 drives... If you're expecting to use that in a consumer PC you might want to check your expectations. Maybe 15 years from now they will be the standard but they're firmly in the enterprise market.
I've always wanted to build an 8-port or 16-port software Linux-based switch. Just for fun.
Back when I was still contributing power to SETI@home I analyzed the results database and concluded that by and large GPUs did substantially more work/watt-hour and that the mid-range parts were the ideal price-point (GTX 1070 at the time); my best rig had 4x GTX 1070's in it which is an excellent balance in many respects. It's a dinosaur now, and when it finally croaks I don't know if I'll try to replace it.
Yeah, the numbers have shrunk over time, but I think that's probably due to USB and perhaps to some extent HDMI making an expansion card unnecessary. Also, motherboards have enough hard drive controllers in them now that most people who would add a hard drive to their PC have no reason to need an expansion card to do so.
I don't particularly like the trend either, but I think PCIe is far from dead at this point.
:-D
By the way, my own modus operandi was to choose a mid-level hardware for upgrades, exactly to keep the budget low by keeping as much older parts as possible.
We will still need it for graphics, fast SSDs, fibre channel and 10G Ethernet etc
Take old gaming PC, throw out GFX sitting in the x16 gen4 slot and replace it with a bifurcation card for nvmes. Should make for a decent proxmox machine with has zfs storage
** mainly Intel!