Manchmal kann das Dekomprimieren von QAT fehlschlagen, der Rückgabewert von QAT cpaDcCompressData ist 11, was einem CPA_DC_OVERFLOW Fehlertyp entspricht.
Ein Überlaufzustand ist nicht wirklich ein Fehler, sondern eine Ausnahme, die behandelt werden kann. Es erfordert in der Regel eine erneute Vorlage mit einem größeren Ausgabepuffer. Der übliche Prozess, der nach einer Überlauferkennung zu befolgen ist, ist:
Die Ausnahme für den Komprimierungsüberlauf tritt aus zwei Gründen auf:
Um die Auswirkungen der erneuten Übermittlung von Daten nach einer Überlaufausnahme zu minimieren, kann die API-cpaDcDeflateCompressBound() verwendet werden. Diese API stellt der Anwendung eine empfohlene Zielpuffergröße zur Verfügung, um die Ausnahme zu vermeiden. Diese API muss von der Anwendung aufgerufen werden, bevor der Zielpuffer zugewiesen wird.
Weitere Informationen zur Behandlung von Ausnahmen bei Datenkomprimierungsüberläufen finden Sie im Intel® QAT Programmierhandbuch Ihrer jeweiligen Intel® QAT Hardware-Version.