Zitat von Hito:
Plane aktuell ein Upgrade(Board+CPU) und will mich absichern was M.2 angeht.
Das ist vernünftig, weil der Trend zu Billig-SSDs mit SATA und den beseren darüber mit PCIe 3.0 x4 Anbindung geht.
Zitat von Hito:
Die meisten Boards, die in Betracht gezogen werden haben M.2 aber eben nur mit 10Gbit/s angebunden/verfügbar.
10 GBit/s = 1,25 GByte/s
Die Rechnung ist falsch, so rechnen MediaMarkt und Co. und ihrer Werbung, aber das macht es nicht richtiger. Erstens word bei PCIe 2.0 ein Byte nicht mit 8 sondern wegen der 8b10b Bitkodierung mit 10 Bit übertragen, also darf man die Bit/s schon gar nicht durch 8 teilen, obwohl gewöhnlich ein Bytes 8 Bit hat, sondern muss sie entsprechend durch 10 teilen. Damit können maximal 1000MByte/s übertragen werden, aber das sind nicht alles Deine Daten und das Protokoll verlangt ja auch immer noch die Übertragung von allerlei zusätzlichen Informationen die keine Nutzdaten sind und den Einhalten von anderen Vorgaben.
Real kommt man auf so maximal 800MB/s, weil neben der Bitkodierung (bei PCIe 3.0 ist das eine 128b/130b Bitkodierung die selbst nur knapp 2% Overhead bedeutet) eben in den ganze Layern des Protokolls weiterer Overhead anfällt.
Googlt man nach "pcie layer Overhead", so kommt man dort ganz weit oben
dieses Dokument "Understanding Performance of PCI Express Systems". Da wird sehr genau darauf eingegangen, hier nur ein paar Beispiele daraus, warum man eben nicht die theroretische Bandbreite als praktischen Datendurchsatz bekommt.
Die wie ein Transaction Layer Packet, wie man sieht gibt es da schon Overhead, weil eben der Payload noch mehr übertragen werden muss, wie die Sequenznummer, der Header und CRC Prüfsummen:
Dann gibt es ein ACK oder NAK von der Gegenseite als Antwort und die skip-ordered sets bremsen auch gewaltig:
The PHY and the DLL both introduce traffic overhead. When the link reaches its normal operating state (L0), the PHY inserts skip-ordered sets to compensate for any difference in bit rates between the two communicating ports. Skip-ordered sets are four bytes in length for Gen 1 and Gen 2 speeds. For the Gen 3 speed, the skip-ordered set is typically 16 bytes in length. For Gen1 and Gen2, skip-ordered sets are scheduled for insertion at intervals between 1,180 and 1,538 symbol times. A symbol time is the amount of time it takes to place one byte (10 bits due to 8B/10B encoding) onto the serial lane. For Gen 3, skip-ordered sets must be scheduled to occur within 370 to 375 blocks. The PCI Express specification does not allow for ordered sets or other packets to be inserted into the middle of TLPs. This means that skip-ordered sets and other link management packets from the DLL can be transmitted only during gaps in TLP traffic. This requirement is one of the reasons why increasing the MPS does not result in an equivalent increase in link efficiency. As TLPs become larger, gaps between TLPs increase for link management activities.
The purpose of the DLL is to maintain reliable data transport between two link partners. To accomplish this goal, the PCI Express specification defines data link layer packets (DLLPs) that originate in and are consumed by the DLL layer. Various types of DLLPs are used for link management. The acknowledgment (ACK) DLLPs, non-acknowledgment (NAK) DLLPs, and flow control (FC) DLLPs have the most effect on performance.
Wer also glaubt, es wäre mit der Bitkodierung getan, der lebt in einer Traumwelt und hat von echten Datenübertragungssystem und deren Protokollen überhaupt keine Ahnung.
Bei USB gibt es ähnliche Lücken einzuhalten damit langsamere Geräte auch die Chance haben eine Kommunikation auszuführen und auch dort schaffen USB2 Geräte nicht die 60MB/s, die man gerne auf den Werbetafeln in Elektronikmärkten lesen kann, oder konnte denn inzwischen hat sich auch dort USB3 durchgesetzt, sondern man kann über alles was über 30MB/s hinausgeht schon froh sein.
Zitat von Hito:
Zu Weihnachten soll eine SM951 folgen
Vergiss die SM951, das ist eine OEM SSD und seid die 950 Pro draußen ist, sollte man die SM951 nicht mehr kaufen. Bei einer OEM SSD kannst Du von Samsung keinerlei Unterstützung erwarten, also auch keine FW Update oder direkte Garantieabwicklung. Das muss alles über die Kette der Händler und ggf. den Importeur zurück zu dem Großhändler gehen, der Samsung diese SSDs mal abgekauft hat. Gerade bei einer so neuen Technologie wie NVMe PCIe SSDs würde ich da vorsichtig sein und nicht wegen ein paar gesparter Euros das Risiko eingehen, dann ggf. nicht an ein wichtiges FW Update zu kommen.
Zitat von Hito:
Worauf muss ich achten? Gibts schnellere M2? Oder helfen hier nur PCIex4 Adpater Karten?
Wenn Du auf Skylake setzt, sollten die Boards mit besseren Chipsätzen als dem H110 alle schon PCIe 3.0 x4 für die M.2 Slots bieten könne, aber schau halt ins Handbuch ob ein M.2 Slot vorhanden ist, wie der M.2 Slot angebunden ist und was ggf. nicht mehr genutzt werden kann, wenn dort eine SSD drin steckt, da fallen nämlich gerne mal SATA Ports weg, wenn das der Fall ist.
Wenn Du noch auf den S. 1150 setzt, dann nimm ein Board mit einem PCIe 3.0 x4 angebundenen M.2 Slot, also ein ASRock Z97 Extreme 6 oder Extreme 9, mit denen macht die 950 Pro keinen Ärger und die passen im UEFI auch auf, dass die PCIe Lanes am dem Slot für die SSD dann ständig mit 8Gb/s laufen, während es mit einem EVGA Board mit PLX Chip schon das Problem gab, dass dort die Lanes vom Chip nur mit 2.5Gb/s liefen, obwohl die Geschwindigkeit im UEFI auf Gen3 gestellt war, man also auch nur auf etwas unter 800MB/s gekommen ist und nur nach einem Wechseln der Position von Graka und dem M.2 Adapter mit der SSD da eine bessere Performance erhielt, aber keine Ahnung ob dann die Graka mit nur 2.5Gb/s pro Lane auskommen musste. Es reicht eben nicht eine Slot mit passenden PCIe Lanes zu haben, das UEFI muss auch wissen was es damit anstellen muss, damit man wirklich keine Problem und die volle Performance bekommt.
