Full-Volume Inference without Performance Degradation
π Paper Title
Memory-Efficient Full-Volume Inference for Large-Scale 3D Dense Prediction without Performance Degradation in Communications Engineering (2025) by Jintao Li and Xinming Wu
This work introduces a scalable inference framework that enables whole-volume 3D prediction without accuracy loss, even on extremely large seismic datasets.
The approach restructures high-memory operators during inference only (no retraining required), allowing models to process volumes up to 1024Β³ directly on modern GPUs.
The method is particularly useful for seismic interpretation tasks such as fault detection, RGT estimation, implicit structural modeling, and geological feature segmentation.
Homepage: https://github.com/JintaoLee-Roger/torchseis
π Key Features
β Retraining-free: works with existing pretrained models
β Whole-volume inference: no ghost boundaries or stitching artifacts
β Memory-efficient: reduces decoder/stem memory footprint
β Faster runtime: avoids slow CuDNN kernel fallback
β Operator-level optimization: convolution, interpolation, and normalization
π Basic Usage
Below is an example using FaultSeg3D under the TorchSeis framework:
import torch
from torchseis import models as zoo
# 1. Load model
model = zoo.FaultSeg3d()
# 2. Load pretrained weights
state = torch.load('faultseg3d-2020-70.pth', weights_only=True)
model.load_state_dict(state)
# 3. Convert to GPU
model = model.half().eval().cuda()
# 4. Prepare input volume
data = torch.from_numpy(f3d[np.newaxis, np.newaxis].copy()).half().cuda()
# 5. Full-volume inference (no tiling)
with torch.no_grad():
pred = model(data, rank=3).cpu().numpy()
rank=3means that using strategy 4 in the paper.
π§ Model Zoo Compatibility
The full-volume inference method is compatible with the following TorchSeis models, which are available in the torchseis-efficiency-infer on Hugging Face Hub. Besides, these models can also be accessed via Baidu Netdisk:
ιθΏη½ηεδΊ«ηζδ»ΆοΌtorchseis-efficiency-infer ιΎζ₯: https://pan.baidu.com/s/1ygUPYIO0S1AvsU4-IMz4pg?pwd=y7cn ζεη : y7cn
| Model | Task | Source |
|---|---|---|
FaultSeg3d |
Fault segmentation | Wu, et, al., 2019, Geophysics |
FaultSeg3dPlus |
Fault segmentation | Li, et, al., 2024, Geophysics |
FaultSSL |
Fault segmentation | Dou, et, al., 2024, Geophysics |
Bi21RGT3d |
Relative geological time (RGT) Estimation | Bi, et, al., 2021, JGR-SE |
DeepISMNet |
Implicit structural modeling | Bi, et, al., 2022, GMD |
ChannelSeg3d |
Channel segmentation | Gao, et, al., 2021, Geophysics |
Wang25Channel |
Channel segmentation | Wang, et, al., 2025, ESSD |
KarstSeg3d |
Paleokarst detection | Wu, et, al., 2020, JGR-SE |
GEM |
Dou, et, al. 2025 | |
SegFormer3D |
Perera, et, al., 2025, CVPR |
[^1]: GEM Model Note: The paper is currently under peer review. We will await the official release of the model weights by the authors before considering distribution.
[^2]: SegFormer3D Model Note: As the code variables were not changed, users are advised to use the original author's weights directly. We are uncertain about the rights to redistribute these weight files.
π Results Summary
The performance evaluations, visual comparisons, and numerical errors reported in our Communications Engineering (2025) paper are fully reproducible.
All plotting scripts and evaluation utilities can be found under scripts/infer25ce/ in the repository: torchseisJintaoLee-Roger/torchseis.
This directory contains:
- Fig. 3 β Runtime and memory usage comparisons across models
- Fig. S1 β Runtime and memory usage comparisons across models
- Table S1 β Numerical error statistics (full vs. chunked inference)
The raw files used to compose Figure 5 is on the zenodo: https://doi.org/10.5281/zenodo.17810071
π Citation
If this work or the inference strategy is used in your research, please cite:
@article{li2025infer,
title={Memory-Efficient Full-Volume Inference for Large-Scale 3D Dense Prediction without Performance Degradation},
author={Li, Jintao and Wu, Xinming},
journal={Communications Engineering},
year={2025}
}
For questions or contributions, please submit an issue or pull request via the main repository.