#1109475 ITP: golang-github-cockroachdb-swiss -- Go port of Google's Swiss Table hash table

Package:
wnpp
Source:
wnpp
Submitter:
Leonardo Arias Fonseca
Date:
2025-11-29 16:58:07 UTC
Severity:
normal
#1109475#5
Date:
2025-07-18 16:17:16 UTC
From:
To:
* Package name    : golang-github-cockroachdb-swiss
   Version         : 0.0~git20250624.d6e517c-1
   Upstream Author : CockroachDB
* URL             : https://github.com/cockroachdb/swiss
* License         : Apache-2.0
   Programming Lang: Go
   Description     : Go port of Google's Swiss Table hash table

  swiss.Map is a Go implementation of Google's Swiss Tables hash table
  design (https://abseil.io/about/design/swisstables). The Rust version of
  Swiss Tables (https://github.com/rust-lang/hashbrown) is now the HashMap
  implementation in the Rust standard library.
  .
  A swiss.Map[K,V] maps keys of type K to values of type V, similar to
  Go's builtin map[K]V type. The primary advantage of swiss.Map over Go's
  builtin map is performance. swiss.Map has similar or slightly better
  performance than Go's builtin map for small map sizes, and significantly
  better performance at large map sizes. The benchmarks where swiss.Map
  performs worse are due to a fast-path optimization in Go's builtin maps
  for tiny (6 or fewer element) maps with int32, int64, or string keys,
  and when growing a tiny map no initial capacity specified. In the latter
  case, Go's builtin map is sometimes able to place the map and first
  bucket on the stack avoiding heap allocations entirely.

I want to package this library to unblock mev-boost, ITP bug #1107167,
and go-ethereum, ITP bug #890541