You can think about most of them as "bus-es" so connectors with a certain amount of bandwidth.
And "size of the slot".
Start by taking a "rather cheap chipset" mini itx board:
https://skinflint.co.uk/asus-rog-strix-b450-i-gaming-90mb0z50-m0eay0-a1843431.html
Click on "show all product properties".
You get a PCI-Ex16 slot, for your GPU and two PCI-Ex4 slots for NVMe SSDs. For those its also important to look at if they support PCIe gen 4 or only 3 - not now, but if Windows DirectStorage becomes a thing games might start effectively using PCI-Ex4 Gen4 SSD speeds on Windows (Think the Rachet&Clank Insta load stuff on PS5 in PC games). Currently gen 3 or 4 NVMe SSDs doesnt make that much of a difference, but with Windows DirectStorage it might in the future.
Current graphics cards dont saturate PCI-Ex16 Gen 3 slots (Ex16 has physically double (?) the connectors for bandwidth over Ex8).
Also yes, you can plug a PCI-Ex8 (half the amount of connectors compared to PCI-Ex16) card in a PCI-Ex16 slot.
PCI-Ex4 has far less of them - hence for NVMe SSDs, and there also Gen 4 doesnt get saturated by PCIe Gen 4 NVeE SSDs. PCI-Ex4 Gen 3 gets saturated by the fastest NVMe SSDs.
-
So in general, longer slot (Ex16) more bandwidth. Although in theory, you could buy an adapter and also put an external graphics card into a PCI-Ex4 slot (on your laptop for example) -- but then you run into bandwith limits (also with Gen 4 afair).
Answer to what _needs_ PCI-Ex16 (even Gen 3) slots is "nothing". (edit: While PCI-Ex16 Gen3 doesnt get topped out by currect GPUs, replacing "nothing" with "GPUs" is probably more correct, as PCI-Ex8 Gen 4 isnt as common yet, that GPUs would exist for that form factor.) But thats the slot you probably will want to put your graphics card into.
Answer to what _needs_ PCI-Ex8 is, depends, what extension cards do you have, or plan to use, and how long is their pin socket? (And yes, there probably are adapters to PCI-Ex4 - which might be limited in bandwidth or functionality depending on the peripheral).
Answer to what _needs_ PCI-Ex4 is, thats probably the slots you'd want to use for NVMe SSDs. (Or Wifi modules if on a laptop, and all your slower slots are full..
) But even there...
They probably arent saturated in terms of bandwidth. Even for storage (Gen 4).
So think about length as "double the pins, double the bandwidth". And probably not many cards that would saturate PCI-Ex8 in general.
How many do you need? Idk, you tell me..
Do you need NVMe SSDs? They are nice. Less cables to plug in, and they are faster than the SATA bus. So yeah, you'd want a couple of PCI-Ex4s for that. Do you need NEED them? Currently? No. (Windows Directstorage might lead to games that profit even from Gen4 PCI-Ex4s in the future - but currently - nada.)
See:
M2 is the slot (with different keying (fun
)), PCI-Ex4 is the bus they are connected to (So the pathway the slot talks to the CPU over).
Look at the skinflint.co.uk link, its easiest to wrap your head around it on a Mini ITX board. The board linked basically has one full sized PCI-Ex16 Gen 3 (Gen 4 is faster!
) slot, for the GPU. And two M.2 connectors linked to a PCI-Ex4 Gen 3 bus for NVMe SSDs (Each one fourth of the length of a PCI-Ex16 slot).
More pins, more length, more bandwidth. Do you need more bandwidth? Not until its saturated, meaning, probably not. Newer Gen (so Gen 4 over Gen 3) is faster. And more pins (longer slot) is faster. As in max bandwidth. But in general even your graphics card wont saturate PCI-Ex16 Gen 3).
People using external graphics cards, sometimes hack their laptops PCI-Ex4 Gen 4 slots with external breakout cables to be able to use external GPUs, and PCI-Ex4 then limits them to only use nVidia RTX2060s or RTX2070s. (Probably 2060s) - otherwise the PCI-Ex4 becomes a bottleneck (bandwidth). RTX 2070s and higher would still work though, they'd just bottleneck out (lower max FPS), before reaching 100% GPU load.
edit: On Sata 6Gbps (the switchover was 8 Years ago, so idk if Sata 3Gbps is still relevant..
(See:
https://www.tomshardware.com/reviews/ssd-upgrade-sata-3gbps,3469.html )):
and
https://www.easytechjunkie.com/what-is-sata-6gbs.htm
edit: Corrected a mistake that stated that most GPUs would be fine with Ex8, no. Most actually use Ex16. For a reason. Gen 4 is not as widespread yet that you would see manufacturers create Ex8 cards.
edit2: More general summery:
https://pcguide101.com/motherboard/things-that-can-be-plugged-in-pcie-slots/
(Answers what can be plugged into PCIe ports and how many lanes does it usually need.
And has a table for gen3 vs gen4 speeds, at all connector sizes.)