Charter Mini-Hackathon 2026-Q3 — frozen-test-set OPC/ILT competition · charter open for early notification
arrow_forward
ALPHA · APACHE 2.0

Open-Source Computational Lithography Benchmark & Workflow

A model-agnostic evaluation framework for OPC/ILT research. Standardized EPE / PV-band / MRC metrics, a fully differentiable PyTorch Hopkins forward model, and an end-to-end OASIS workflow — bridging tensor-level optimization and fab-ready mask data.

LITHO_OPTIMIZER_VIS
Lithography aerial image — design vs no-OPC (EPE 2.5 nm) vs ILT-optimized (EPE 0.608 nm)
License Apache 2.0
Baseline Models 4
Standardized Metrics EPE · PVB · MRC
Forward Model Differentiable

Foundational Features

memory

Differentiable Hopkins Forward

Pure-PyTorch SOCS-truncated partial-coherence imaging supporting circular / annular / dipole / quasar illumination. The whole optical path is auto-differentiable — drop it into any ILT or end-to-end AI-OPC training loop.

analytics

Standardized Metrics

EPE, PV Band, shot count and EUV stochastic robustness, computed identically across every model so leaderboard numbers are actually comparable.

verified

Manufacturing Compliance

MRC and DRC checks as hard-fail gates — DTCO process-node parameters bundled.

account_tree

OASIS Workflow

Tiling, contour extraction (manhattan & curvilinear), B-spline fitting and OASIS export through KLayout.

extension

Model-Agnostic Registry

A minimal LithographyModel interface — heuristic, U-Net, diffusion or curvyILT, plug it in and benchmark.

Architecture Stack

LEVEL 05 Global Leaderboard & Insights trophy
LEVEL 04 Optimization Engine (ILT/OPC) psychology
LEVEL 03 Lithography Simulation Kernel settings_input_component
LEVEL 02 Standard Metric Evaluation rule
LEVEL 01 Multi-Source Data Fabric (LithoBench · ASAP7 · FreePDK45 · ORFS) layers

End-to-End Differentiable

The Hopkins forward model is a regular PyTorch op — autograd flows through SOCS kernels, the resist threshold and the loss. ILT, Neural-OPC, end-to-end mask training: all just .backward().

  • check_circle Pure PyTorch, no FFI, no licensed kernels
  • check_circle SOCS kernel cache keyed on optical params + grid
  • check_circle Reproducible baseline numbers in baselines/results.json
differentiable_litho.py content_copy
# pip install openlithohub
import torch
from openlithohub._utils.hopkins import (
    HopkinsParams, compute_socs_kernels,
    simulate_aerial_image_hopkins,
)

mask = torch.zeros(64, 64, requires_grad=True)
params = HopkinsParams(wavelength_nm=193, na=1.35, sigma=0.7)
kernels, weights = compute_socs_kernels(params, 64, mask.device)

aerial = simulate_aerial_image_hopkins(
    mask, kernels=kernels, weights=weights)
loss = (aerial - target).pow(2).mean()
loss.backward()  # gradients flow through the optics

Push the Boundaries of Lithography

Join hundreds of researchers contributing to the open-source future of semiconductor manufacturing.