Categorygithub.com/grailbio/base
module
0.0.11
Repository: https://github.com/grailbio/base.git
Documentation: pkg.go.dev

# README

The grailbio/base project includes all the packages used by many other grailbio Go packages:

  • API documentation: godoc.org/github.com/grailbio/base

  • Issue tracker: github.com/grailbio/base/issues

  • CI

  • recordio: encrypted and compressed record oriented files with indexing support

  • file: unified file API for the local file system and S3

  • digest: common in-memory and serialized representation of digests

  • data: support for measuring and displaying quantities of data

  • intervalmap: fast interval tree

  • limiter: concurrency limiter with context support

  • traverse: concurrent and parallel slice traversal

  • state: file-based state management

  • syncqueue: various flavors of producer-consumer queues

  • unsafe: conversion from []byte to string, etc.

  • compress/libdeflate: efficient block compression/decompression

  • bitset: []uintptr bitset support

  • simd: fast operations on []byte

  • tsv: simple and efficient TSV writer

  • cloud/spotadvisor: provides an interface for fetching and utilizing AWS Spot Advisor data

  • cloud/spotfeed: provides interfaces for interacting with the AWS spot data feed format for files hosted on S3

# Packages

Package admit contains utilities for admission control.
Package backgroundcontext manages the singleton v23 context.
Package bitset provides support for treating a []uintptr as a bitset.
No description provided by the author
No description provided by the author
Package cmdutil provides utility routines for implementing command line tools.
No description provided by the author
Package compress provides convenience functions for creating compressors and uncompressors based on filenames.
Package config is used to configure software systems.
No description provided by the author
Package data provides functionality for measuring and displaying data quantities.
No description provided by the author
Package digest provides a generalized representation for digests computed with cryptographic hash functions.
No description provided by the author
Package errors implements an error type that defines standard interpretable error codes for common error conditions.
Package eventlog provides logging of semi-structured events, particularly in service of downstream analysis, e.g.
Package fatbin implements a simple fat binary format, and provides facilities for creating fat binaries and accessing its variants.
Package file provides basic file operations across multiple file-system types.
No description provided by the author
Package flock implements a simple POSIX file-based advisory lock.
Package grail contains the Init function that all programs are expected to call.
No description provided by the author
Code generated by generate_randomized_freepool.py.
ioctx adds context.Context to io APIs.
Package iofmt contains various IO utilities used for formatting output.
No description provided by the author
Package limiter implements a concurrency limiter with support for contexts.
Package log provides simple level logging.
Package logio implements a failure-tolerant log, typically used as a write-ahead log.
Package mapio implements a sorted, on-disk map, similar to the SSTable data structure used in Bigtable [1], Cassandra [2], and others.
No description provided by the author
Package must provides a handful of functions to express fatal assertions in Go programs.
No description provided by the author
Package psort includes functions for parallel sorting.
Package recordio implements the recordio file format.
Package retry contains utilities for implementing retry logic.
No description provided by the author
No description provided by the author
Package shutdown implements a global process shutdown mechanism.
Package simd provides access to SIMD-based implementations of several common operations on byte arrays which the compiler cannot be trusted to autovectorize within the next several years.
Package state implements atomic file-based state management with support for advisory locking.
Package stateio implements persistent state mechanism based on log files that interleave indexed state snapshots with state updates.
Package status provides facilities for reporting statuses from a number of tasks working towards a common goal.
No description provided by the author
No description provided by the author
No description provided by the author
Package traverse provides primitives for concurrent and parallel traversal of slices or user-defined collections.
Package tsv provides a simple TSV writer which takes care of number->string conversions and tabs, and is far more performant than fmt.Fprintf (thanks to use of strconv.Append{Uint,Float}).
No description provided by the author
No description provided by the author
Package vcontext creates a singleton vanadium Context object.
No description provided by the author
Package writehash provides a set of utility functions to hash common types into hashes.