11 Kommentare (11 Kommentare)0 Reaktionen (0 Reaktionen)0 zugewiesene Personen (0 zugewiesene Personen)Go19.008 Forks (19.008 Forks)batch import
NeedsInvestigationPerformanceSuggestedhelp wanted
Repository-Metriken
- Stars
- 133.883 Sterne (133.883 Sterne)
- PR-Merge-Metriken
- Keine gemergten PRs in 30 T (Keine gemergten PRs in 30 T)
Beschreibung
The discussion at https://github.com/golang/go/issues/31586 includes several techniques for optimizing xor of byte slices, including using encoding/binary (with native endianness) and loop unrolling. It'd be nice to apply them to safeXORBytes, which is used on many non-amd64 platforms. An optimized safeXORBytes might even be fast enough that we could delete fastXORBytes.
Somewhat related: #30553
cc @nhooyr
Contributor Guide
- Research-Richtung
- Untersuche die Implementierung von safeXORBytes in crypto/cipher/. Überprüfe die in #31586 diskutierten Optimierungstechniken, insbesondere die Verwendung von encoding/binary mit nativer Endianness und Loop Unrolling. Benchmarke die aktuelle Funktion und die vorgeschlagenen Änderungen. Erwäge, ob fastXORBytes entfernt werden kann, wenn safeXORBytes schnell genug ist.
- Tech Stack
- go
- Domain
- backend
- Issue Type
- Performance
- Voraussetzungen
- Gocrypto/cipher