tensogram
The primary Tensogram library: encode and decode binary N-tensor scientific messages with self-describing CBOR metadata.
Usage
use BTreeMap;
use ;
// Describe the tensor.
let desc = DataObjectDescriptor ;
// `GlobalMetadata::default()` stamps the current wire version (3).
let meta = default;
let data = vec!;
let message = encode?;
let = decode?;
assert_eq!;
# Ok::
Features
- Self-describing messages — CBOR metadata travels with the data
- Multiple tensors per message, each with its own shape, dtype, and encoding pipeline
TensogramFilefor multi-message.tgmfiles with O(1) random access- Partial range decode via
decode_range - Optional Cargo features:
mmap(zero-copy reads),async(tokio),remote(S3/GCS/Azure/HTTP viaobject_store)
Installation
Documentation
- Full documentation: https://sites.ecmwf.int/docs/tensogram/main/
- Repository: https://github.com/ecmwf/tensogram
License
Copyright 2026- European Centre for Medium-Range Weather Forecasts (ECMWF).
Licensed under the Apache License, Version 2.0. See LICENSE for details.