cobolrt performance: benchmark vs COBOL batch volumes, then add proven fast paths
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 18/100
- Issue type
- Refactor
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- python
- Domain
- performance
Research direction
Start by reading the cobolrt decimal arithmetic path that the issue calls the hot rule, and find where every operation builds a BigDecimal. Build the benchmark harness first, using the CardDemo batch, POSTTRAN, intcalc and mortgage ports the issue lists, and record baseline throughput and allocations. A fast path counts as done only when the unit vectors, the det sweep and the cobc differential fuzz show 0 diffs, and the A/B fuzz between fast and slow paths agrees.
Written by the indexing model from the issue text.
Description
What. Mainframe batch jobs process huge volumes. Exact decimal arithmetic with BigDecimal for every operation may be slow.
- Benchmark: representative batch ports (CardDemo batch, POSTTRAN, intcalc, mortgage) at realistic record counts. Measure throughput, allocations, and the hot rules (JMH where useful).
- Fast paths: e.g.
longarithmetic when the digits fit, precomputed codecs, fewer allocations. Each fast path must be proven identical: unit vectors, full det sweep, and the differential fuzz against cobc gives 0 diffs, with an A/B fuzz between fast and slow paths.
Acceptance.
- Benchmark harness committed, with baseline numbers.
- At least the top hot rule has a proven fast path.
- Before/after numbers.
- No verdict change.
Part of the cobolrt-as-a-product epic (linked from the epic). Owner-approved direction, 2026-10-08.
🤖 Generated with Claude Code
- Dominant language
- Python
- Stars
- 57
- Forks
- 11
- Avg merge
- 1h 35m
- Merged PRs (30d)
- 975
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from squid-protocol/gitgalaxy
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
squid-protocol/gitgalaxy#7827 · 1 comment ·
Maintainers usually reply within 1 day
-
scope:frontier
Difficulty 5/5 Over a week Newbie friendliness 18/100
squid-protocol/gitgalaxy#7900 ·
Maintainers usually reply within 1 day
-
core-engine scope:infra testing
Difficulty 4/5 3-5 days Newbie friendliness 54/100
squid-protocol/gitgalaxy#7863 · 1 comment ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 35/100
squid-protocol/gitgalaxy#7834 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 56/100
squid-protocol/gitgalaxy#7828 · 1 comment ·
Maintainers usually reply within 1 day
All issues in squid-protocol/gitgalaxy
Similar issues
-
bug good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
graphql-python/graphql-core#304 ·
Maintainers usually reply within 1 day
-
docs size:S
Difficulty 1/5 Under an hour Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 1-3 hours Newbie friendliness 88/100
Gathin23/cleanyourtv#3464 ·
Maintainers usually reply within 1 day
-
documentation
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day