bytedance / bytedance/Protenix

Question: Inference strategies and configurations for long RNA sequences (>1000 nt)

Open
#281 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
2.1k
Forks
310
PR merge metrics
No merged PRs in 30d

Description

Hi Protenix team,

Thanks for releasing this great work and making it open source.

I am currently using Protenix for RNA 3D structure prediction, and I encountered out-of-memory (OOM) issues when running inference on long RNA sequences (e.g., >1000 nucleotides) on a 24GB GPU.

From the logs:
- N_token ≈ 1200–1300
- N_atom ≈ 27k
- OOM occurs during the trunk / attention computation

I have a few questions regarding long-sequence inference:

### 1. Are there recommended inference configurations for long RNA sequences?
For example:
- Reducing diffusion steps or cycles
- Disabling or simplifying certain modules (e.g., template, MSA)
- Using different precision settings
- Any hidden or advanced flags in `runner/inference.py`

### 2. Does Protenix support any form of memory-efficient inference?
For example:
- Chunked computation
- Attention chunking / block attention
- Gradient checkpointing-like techniques (for inference)
- Offloading to CPU

### 3. Is multi-GPU inference supported for a single long sequence?
Currently, it seems that inference runs on a single GPU even when multiple GPUs are visible (world size = 1).
Are there plans or existing methods to enable model parallelism or distributed inference for large inputs?

### 4. Are there recommended workflows for long RNA sequences?
For example:
- Domain decomposition (splitting long RNA into segments)
- Hierarchical modeling
- Combining local predictions into a global structure

### 5. Is Protenix-Mini or any other lighter model recommended for long sequences?

---

Overall, I would really appreciate any guidance or best practices for handling long RNA sequences efficiently.

Thanks again for your work!

Contributor guide

Open the contributing guide

Research direction

Start with runner/inference.py and the reported logs showing N_token, N_atom, and trunk/attention OOM on a 24GB GPU. Determine which long-sequence configurations, memory-efficient methods, multi-GPU options, and lighter-model workflows are actually supported; the issue is done only when a concrete, reproducible recommendation or implementation scope is established.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
machine-learning, performance
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.