---
title: GraphSol job sizing and limits
description: 'Keep sequences 20 to 4,096 residues under 25 MB, expect 5 to 12 minutes a job, and re-threshold results.csv offline rather than resubmitting.'
---

This page helps you size [GraphSol](/docs/graphsol) submissions for predictable runtimes and stay within input limits. Sequence length, batch size, and threshold choice matter most for what runs cleanly and how you read the results.

## GraphSol job sizing and limits

Plan submissions to stay within recommended limits and predictable runtimes.

## Input limits

- Sequences: 20–4,096 residues each.
- File size: ≤ 25 MB (compressed `.gz` accepted).
- Character set: 20 standard amino acids; other symbols are stripped with
  warnings.
- Unique IDs: duplicate headers are deduplicated unless you set
  `skipDeduplication`.

## Batch sizing

- Small sets (&lt;500 sequences): single batch is fastest; expect ~5 minutes.
- Medium (500–5,000): keep in one file; runtime scales roughly linearly.
- Large (>5,000): split into multiple jobs to avoid timeouts and simplify
  retries.

## Threshold guidance

- Default: `0.5` balances precision/recall.
- Precision-first: `0.6–0.7`.
- Recall-first: `0.3–0.4`.
- You can re-threshold offline from `results.csv` without rerunning the model.

## Runtime expectations

- Most jobs return within 5–12 minutes depending on batch size.
- Poll every 5–10 seconds; long polls reduce load without slowing delivery.
- If a job exceeds 20 minutes for &lt;5,000 sequences, retry with smaller batches.

## Resubmission hygiene

- Keep original FASTA and `summary.json` side by side for auditing.
- When retrying, update headers to avoid accidental deduplication, or disable it
  explicitly.
- Capture `jobId`, submission timestamp, and threshold in logs for
  reproducibility.
