# pllm.schedulers Python API

Public objects, practical usage, and research context for pllm.schedulers.

[View canonical HTML](https://pllm.run/sdk/reference/python/pllm/schedulers/)

Document ID: `pllm.docs.reference.python.pllm.schedulers`  
Release: `0.1.0`

Scheduler components state how independent protected lanes or scalar operations are ordered without changing the underlying method identity. Presence documents API availability, not complete model, security, or deployment coverage; check [implementation status](/sdk/reference/status/) before relying on a path.

## Research context

This API is project infrastructure rather than an implementation of one specific paper. Relevant method pages link their primary sources separately.

## Python SDK example

The example performs a bounded offline task and checks an observable result. It does not download a checkpoint or contact a provider.

```python
import pllm.schedulers as schedulers

scheduler = schedulers.IndependentLanesProtectedTensorSchedule(max_elements=4)
assert scheduler.get_params() == {"max_elements": 4}
```

API: [`pllm.schedulers`](/sdk/reference/python/pllm/schedulers/#objects-and-signatures)

## Objects and signatures

### `BoundedIndependentElementsProtectedTensorSchedule`

Selects component `pllm/bounded-independent-elements/v1` during `compilation`; it provides `one-use-protected-tensor-scheduling` for roles client, inference.

- Canonical object: `pllm.schedulers.BoundedIndependentElementsProtectedTensorSchedule`
- Kind: `class`
- Signature/type: `__init__(self, *, max_elements: int=128) -> None`
- Public exports: `pllm.schedulers.BoundedIndependentElementsProtectedTensorSchedule`
- Public members: `descriptor: ComponentDescriptor`; `__init__(self, *, max_elements: int=128) -> None`; `classmethod describe(cls) -> ComponentDescriptor`

### `ChunkedIndependentLanesProtectedTensorSchedule`

Selects component `pllm/chunked-independent-lanes/v1` during `compilation`; it provides `one-use-protected-tensor-scheduling` for roles client, inference.

- Canonical object: `pllm.schedulers.ChunkedIndependentLanesProtectedTensorSchedule`
- Kind: `class`
- Signature/type: `__init__(self, *, max_elements: int) -> None`
- Public exports: `pllm.schedulers.ChunkedIndependentLanesProtectedTensorSchedule`
- Public members: `descriptor: ComponentDescriptor`; `__init__(self, *, max_elements: int) -> None`; `classmethod describe(cls) -> ComponentDescriptor`

### `IndependentLanesProtectedTensorSchedule`

Selects component `pllm/independent-lanes/v1` during `compilation`; it provides `one-use-protected-tensor-scheduling` for roles client, inference.

- Canonical object: `pllm.schedulers.IndependentLanesProtectedTensorSchedule`
- Kind: `class`
- Signature/type: `__init__(self, *, max_elements: int=4) -> None`
- Public exports: `pllm.schedulers.IndependentLanesProtectedTensorSchedule`
- Public members: `descriptor: ComponentDescriptor`; `__init__(self, *, max_elements: int=4) -> None`; `classmethod describe(cls) -> ComponentDescriptor`

### `ProtectedScheduler`

Immutable `ProtectedScheduler` record carrying `component`, `params` for the workflow where scheduler components state how independent protected lanes or scalar operations are ordered without changing the underlying method identity.

- Canonical object: `pllm.schedulers.ProtectedScheduler`
- Kind: `class`
- Signature/type: `constructor not exposed`
- Public exports: `pllm.schedulers.ProtectedScheduler`

### `ScalarProtectedTensorSchedule`

Selects component `pllm/scalar/v1` during `compilation`; it provides `one-use-protected-tensor-scheduling` for roles client, inference.

- Canonical object: `pllm.schedulers.ScalarProtectedTensorSchedule`
- Kind: `class`
- Signature/type: `__init__(self) -> None`
- Public exports: `pllm.schedulers.ScalarProtectedTensorSchedule`
- Public members: `descriptor: ComponentDescriptor`; `__init__(self) -> None`; `classmethod describe(cls) -> ComponentDescriptor`
