From bcb04e4b27e75af6b29e581ebd7d6fa8aab72cf1 Mon Sep 17 00:00:00 2001 From: Colin Gilgenbach Date: Fri, 5 Sep 2025 15:16:43 -0400 Subject: [PATCH 01/19] Version 0.3 dev --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index fb28f10..b31e6d0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "phaserEM" -version = "0.2" +version = "0.3-dev" authors = [ {name = "Colin Gilgenbach", email = "hexane@mit.edu"} ] From b1b31ba969bac244a6cf18b14e4678f7251ff1df Mon Sep 17 00:00:00 2001 From: Colin Gilgenbach Date: Fri, 5 Sep 2025 14:50:40 -0400 Subject: [PATCH 02/19] PyTorch backend support (#31) * Start of torch backend * More torch utils * Most torch utils working * Got ePIE working on torch * Renamed cupy backend, generalizing dataclass * Typing fixes * More torch work, basic grads running * Gradient descent solver working * More solvers with torch * Add back in dtype checks * Implement affine_transform order=0,1 on torch * More device selection abstractions * torch fixes and improvements * Add torch optional dependency --- .github/workflows/ci.yaml | 2 +- conftest.py | 12 +- examples/mos2_epie.yaml | 7 +- notebooks/conventions.ipynb | 19 ++ phaser/engines/common/noise_models.py | 2 +- phaser/engines/common/regularizers.py | 24 +- phaser/engines/common/simulation.py | 11 +- phaser/engines/conventional/run.py | 19 +- phaser/engines/conventional/solvers.py | 8 +- phaser/engines/gradient/run.py | 63 ++-- phaser/engines/gradient/solvers.py | 270 ++++++++++++--- phaser/execute.py | 36 +- phaser/hooks/__init__.py | 2 +- phaser/hooks/preprocessing.py | 6 +- phaser/hooks/scan.py | 2 +- phaser/hooks/schedule.py | 6 +- phaser/plan.py | 5 +- phaser/state.py | 32 +- phaser/types.py | 12 +- phaser/utils/_cuda_kernels.py | 34 ++ phaser/utils/_jax_kernels.py | 50 ++- phaser/utils/_torch_kernels.py | 449 +++++++++++++++++++++++++ phaser/utils/image.py | 21 +- phaser/utils/io.py | 4 +- phaser/utils/misc.py | 100 +++--- phaser/utils/num.py | 448 +++++++++++++++++------- phaser/utils/object.py | 48 +-- phaser/utils/optics.py | 2 +- phaser/utils/scan.py | 8 +- phaser/utils/tree.py | 416 +++++++++++++++++++++++ pyproject.toml | 9 +- tests/test_image.py | 25 +- tests/test_num.py | 85 +++-- tests/test_object.py | 44 +-- tests/test_optics.py | 26 +- tests/utils.py | 36 -- 36 files changed, 1834 insertions(+), 509 deletions(-) create mode 100644 phaser/utils/_torch_kernels.py create mode 100644 phaser/utils/tree.py diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 0aa323f..63e0ed5 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -32,6 +32,6 @@ jobs: - name: Install dependencies run: | python -m pip install --upgrade pip - pip install -e '.[dev,jax,web]' + pip install -e '.[dev,jax,torch,web]' - name: Test run: pytest \ No newline at end of file diff --git a/conftest.py b/conftest.py index 432e51e..0c941c1 100644 --- a/conftest.py +++ b/conftest.py @@ -2,13 +2,13 @@ import pytest import numpy -BACKENDS: set[str] = set(('cpu', 'jax', 'cuda')) +BACKENDS: set[str] = set(('cpu', 'jax', 'cupy', 'torch')) AVAILABLE_BACKENDS: set[str] = set(('cpu',)) try: import cupy # pyright: ignore[reportMissingImports] if cupy.cuda.runtime.getDeviceCount() > 0: - AVAILABLE_BACKENDS.add('cuda') + AVAILABLE_BACKENDS.add('cupy') except ImportError: pass @@ -19,6 +19,14 @@ pass +try: + import torch # pyright: ignore[reportMissingImports] # noqa: F401 + torch.asarray([1, 2, 3, 4]).numpy(force=True) # ensures torch is loaded, fixes a strange error with pytest + AVAILABLE_BACKENDS.add('torch') +except ImportError: + pass + + def pytest_addoption(parser: pytest.Parser): parser.addoption("--save-expected", action="store_true", dest='save-expected', default=False, help="Overwrite expected files with the results of tests.") diff --git a/examples/mos2_epie.yaml b/examples/mos2_epie.yaml index 6005257..b7fe806 100644 --- a/examples/mos2_epie.yaml +++ b/examples/mos2_epie.yaml @@ -1,11 +1,11 @@ --- name: "mos2_epie" -backend: cupy +backend: torch # raw data source raw_data: type: empad - path: "sample_data/simulated_mos2/mos2_0.00_dstep1.0.json" + path: "~/Downloads/mos2/1/mos2/mos2_0.00_dstep1.0.json" post_load: - type: poisson @@ -32,7 +32,8 @@ engines: beta_probe: 0.5 group_constraints: [] - iter_constraints: [] + iter_constraints: + - type: remove_phase_ramp update_probe: {after: 5} diff --git a/notebooks/conventions.ipynb b/notebooks/conventions.ipynb index ace72a1..6c745f6 100644 --- a/notebooks/conventions.ipynb +++ b/notebooks/conventions.ipynb @@ -74,6 +74,25 @@ "\n", "Nevertheless, pixels are often drawn as \"little squares\", requiring us to choose a convention of where to place these squares. We place each pixel at the center of the sampling point it represents. e.g. the pixel center is at integer coordinates." ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Notes for backend-agnostic coding\n", + "\n", + "Backends are libraries which support the Array API: https://data-apis.org/array-api/2024.12/\n", + "\n", + "https://github.com/pytorch/pytorch/issues/58743\n", + "\n", + "- Use `xp.size()` rather than `arr.size` (for Torch)\n", + "- Use `at()` util for in-place modifications (for Jax)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [] } ], "metadata": { diff --git a/phaser/engines/common/noise_models.py b/phaser/engines/common/noise_models.py index 66cd3be..c366f24 100644 --- a/phaser/engines/common/noise_models.py +++ b/phaser/engines/common/noise_models.py @@ -6,7 +6,7 @@ from phaser.hooks.solver import NoiseModel from phaser.plan import AmplitudeNoisePlan, AnscombeNoisePlan, PoissonNoisePlan -from phaser.utils.num import get_array_module, Float +from phaser.utils.num import get_array_module, Float, to_numpy from phaser.state import ReconsState diff --git a/phaser/engines/common/regularizers.py b/phaser/engines/common/regularizers.py index 15c9fc1..8db02f3 100644 --- a/phaser/engines/common/regularizers.py +++ b/phaser/engines/common/regularizers.py @@ -1,5 +1,6 @@ from functools import partial import logging +from math import prod import typing as t import numpy @@ -205,7 +206,7 @@ def calc_loss_group( xp = get_array_module(sim.object.data) cost = xp.sum(xp.abs(sim.object.data - 1.0)) - cost_scale = (group.shape[-1] / numpy.prod(sim.scan.shape[:-1])).astype(cost.dtype) + cost_scale = xp.array(group.shape[-1] / prod(sim.scan.shape[:-1]), dtype=cost.dtype) return (cost * cost_scale * self.cost, state) @@ -222,8 +223,9 @@ def calc_loss_group( xp = get_array_module(sim.object.data) cost = xp.sum(abs2(sim.object.data - 1.0)) - cost_scale = (group.shape[-1] / numpy.prod(sim.scan.shape[:-1])).astype(cost.dtype) - return (cost * cost_scale * self.cost, state) + + cost_scale = xp.array(group.shape[-1] / prod(sim.scan.shape[:-1]), dtype=cost.dtype) + return (cost * cost_scale * self.cost, state) # type: ignore class ObjPhaseL1: @@ -239,7 +241,7 @@ def calc_loss_group( xp = get_array_module(sim.object.data) cost = xp.sum(xp.abs(xp.angle(sim.object.data))) - cost_scale = (group.shape[-1] / numpy.prod(sim.scan.shape[:-1])).astype(cost.dtype) + cost_scale = xp.array(group.shape[-1] / prod(sim.scan.shape[:-1]), dtype=cost.dtype) return (cost * cost_scale * self.cost, state) @@ -261,7 +263,7 @@ def calc_loss_group( xp.abs(fft2(xp.prod(sim.object.data, axis=0))) ) # scale cost by fraction of the total reconstruction in the group - cost_scale = (group.shape[-1] / numpy.prod(sim.scan.shape[:-1])).astype(cost.dtype) + cost_scale = xp.array(group.shape[-1] / prod(sim.scan.shape[:-1]), dtype=cost.dtype) return (cost * cost_scale * self.cost, state) @@ -289,7 +291,7 @@ def calc_loss_group( #) # scale cost by fraction of the total reconstruction in the group # TODO also scale by # of pixels or similar? - cost_scale = (group.shape[-1] / numpy.prod(sim.scan.shape[:-1])).astype(cost.dtype) + cost_scale = xp.array(group.shape[-1] / prod(sim.scan.shape[:-1]), dtype=cost.dtype) return (cost * cost_scale * self.cost, state) @@ -311,9 +313,9 @@ def calc_loss_group( xp.sum(abs2(xp.diff(sim.object.data, axis=-2))) ) # scale cost by fraction of the total reconstruction in the group - cost_scale = (group.shape[-1] / numpy.prod(sim.scan.shape[:-1])).astype(cost.dtype) + cost_scale = xp.array(group.shape[-1] / prod(sim.scan.shape[:-1]), dtype=cost.dtype) - return (cost * cost_scale * self.cost, state) + return (cost * cost_scale * self.cost, state) # type: ignore class LayersTotalVariation: @@ -333,7 +335,7 @@ def calc_loss_group( cost = xp.sum(xp.abs(xp.diff(sim.object.data, axis=0))) # scale cost by fraction of the total reconstruction in the group - cost_scale = (group.shape[-1] / numpy.prod(sim.scan.shape[:-1])).astype(cost.dtype) + cost_scale = xp.array(group.shape[-1] / prod(sim.scan.shape[:-1]), dtype=cost.dtype) return (cost * cost_scale * self.cost, state) @@ -355,9 +357,9 @@ def calc_loss_group( cost = xp.sum(abs2(xp.diff(sim.object.data, axis=0))) # scale cost by fraction of the total reconstruction in the group - cost_scale = (group.shape[-1] / numpy.prod(sim.scan.shape[:-1])).astype(cost.dtype) + cost_scale = xp.array(group.shape[-1] / prod(sim.scan.shape[:-1]), dtype=cost.dtype) - return (cost * cost_scale * self.cost, state) + return (cost * cost_scale * self.cost, state) # type: ignore class ProbePhaseTikhonov: diff --git a/phaser/engines/common/simulation.py b/phaser/engines/common/simulation.py index fb88163..836b255 100644 --- a/phaser/engines/common/simulation.py +++ b/phaser/engines/common/simulation.py @@ -3,14 +3,15 @@ import typing as t import numpy -from numpy.typing import NDArray, DTypeLike +from numpy.typing import NDArray from typing_extensions import Self from phaser.utils.num import ( get_array_module, to_real_dtype, to_complex_dtype, fft2, ifft2, is_jax, to_numpy, block_until_ready, ufunc_outer ) -from phaser.utils.misc import FloatKey, jax_dataclass, create_compact_groupings, create_sparse_groupings, shuffled +from phaser.utils.tree import tree_dataclass +from phaser.utils.misc import FloatKey, create_compact_groupings, create_sparse_groupings, shuffled from phaser.utils.optics import fresnel_propagator, fourier_shift_filter from phaser.state import ReconsState from phaser.hooks.solver import NoiseModel @@ -83,7 +84,7 @@ def stream_patterns( continue -@jax_dataclass(init=False, static_fields=('xp', 'dtype', 'noise_model', 'group_constraints', 'iter_constraints'), drop_fields=('ky', 'kx')) +@tree_dataclass(init=False, static_fields=('xp', 'dtype', 'noise_model', 'group_constraints', 'iter_constraints'), drop_fields=('ky', 'kx')) class SimulationState: state: ReconsState @@ -99,7 +100,7 @@ class SimulationState: iter_constraint_states: t.Tuple[t.Any, ...] xp: t.Any - dtype: DTypeLike + dtype: t.Type[numpy.floating] start_iter: int def __init__( @@ -109,7 +110,7 @@ def __init__( group_constraints: t.Tuple[GroupConstraint[t.Any], ...], iter_constraints: t.Tuple[IterConstraint[t.Any], ...], xp: t.Any, - dtype: DTypeLike, + dtype: t.Type[numpy.floating], noise_model_state: t.Optional[t.Any] = None, group_constraint_states: t.Optional[t.Tuple[t.Any, ...]] = None, iter_constraint_states: t.Optional[t.Tuple[t.Any, ...]] = None, diff --git a/phaser/engines/conventional/run.py b/phaser/engines/conventional/run.py index 578fcdf..1ce2fec 100644 --- a/phaser/engines/conventional/run.py +++ b/phaser/engines/conventional/run.py @@ -3,7 +3,7 @@ import numpy from phaser.utils.misc import mask_fraction_of_groups -from phaser.utils.num import cast_array_module, to_numpy, to_complex_dtype +from phaser.utils.num import assert_dtype, cast_array_module, to_numpy, to_complex_dtype from phaser.observer import Observer from phaser.hooks import EngineArgs from phaser.plan import ConventionalEnginePlan @@ -17,6 +17,7 @@ def run_engine(args: EngineArgs, props: ConventionalEnginePlan) -> ReconsState: xp = cast_array_module(args['xp']) dtype = args['dtype'] + cdtype = to_complex_dtype(dtype) observer: Observer = args.get('observer', Observer()) seed = args['seed'] @@ -37,12 +38,12 @@ def run_engine(args: EngineArgs, props: ConventionalEnginePlan) -> ReconsState: xp=xp, dtype=dtype ) patterns = args['data'].patterns - pattern_mask = xp.array(args['data'].pattern_mask) + pattern_mask = xp.asarray(args['data'].pattern_mask) - assert patterns.dtype == sim.dtype - assert pattern_mask.dtype == sim.dtype - assert sim.state.object.data.dtype == to_complex_dtype(sim.dtype) - assert sim.state.probe.data.dtype == to_complex_dtype(sim.dtype) + assert_dtype(patterns, dtype) + assert_dtype(pattern_mask, dtype) + assert_dtype(sim.state.object.data, cdtype) + assert_dtype(sim.state.probe.data, cdtype) solver = props.solver(props) sim = solver.init(sim) @@ -87,8 +88,8 @@ def run_engine(args: EngineArgs, props: ConventionalEnginePlan) -> ReconsState: calc_error_mask=calc_error_mask, observer=observer, ) - assert sim.state.object.data.dtype == to_complex_dtype(sim.dtype) - assert sim.state.probe.data.dtype == to_complex_dtype(sim.dtype) + assert_dtype(sim.state.object.data, cdtype) + assert_dtype(sim.state.probe.data, cdtype) sim = sim.apply_iter_constraints() @@ -104,7 +105,7 @@ def run_engine(args: EngineArgs, props: ConventionalEnginePlan) -> ReconsState: update_mag = xp.linalg.norm(pos_update, axis=-1, keepdims=True) logger.info(f"Position update: mean {xp.mean(update_mag)}") sim.state.scan += pos_update - assert sim.state.scan.dtype == sim.dtype + assert_dtype(sim.state.scan, dtype) # check positions are at least overlapping object sim.state.object.sampling.check_scan(sim.state.scan, sim.state.probe.sampling.extent / 2.) diff --git a/phaser/engines/conventional/solvers.py b/phaser/engines/conventional/solvers.py index 7d6cdc5..d689d95 100644 --- a/phaser/engines/conventional/solvers.py +++ b/phaser/engines/conventional/solvers.py @@ -107,8 +107,8 @@ def run_iteration( gamma=gamma, ) check_finite(sim.state.object.data, sim.state.probe.data, context=f"object or probe, group {group_i}") - assert sim.state.object.data.dtype == to_complex_dtype(sim.dtype) - assert sim.state.probe.data.dtype == to_complex_dtype(sim.dtype) + #assert sim.state.object.data.dtype == to_complex_dtype(sim.dtype) + #assert sim.state.probe.data.dtype == to_complex_dtype(sim.dtype) sim = sim.apply_group_constraints(group) @@ -365,8 +365,8 @@ def run_iteration( update_probe=update_probe, ) check_finite(sim.state.object.data, sim.state.probe.data, context=f"object or probe, group {group_i}") - assert sim.state.object.data.dtype == to_complex_dtype(sim.dtype) - assert sim.state.probe.data.dtype == to_complex_dtype(sim.dtype) + #assert sim.state.object.data.dtype == to_complex_dtype(sim.dtype) + #assert sim.state.probe.data.dtype == to_complex_dtype(sim.dtype) sim = sim.apply_group_constraints(group) diff --git a/phaser/engines/gradient/run.py b/phaser/engines/gradient/run.py index 84a4cce..6b84bc3 100644 --- a/phaser/engines/gradient/run.py +++ b/phaser/engines/gradient/run.py @@ -7,11 +7,11 @@ from typing_extensions import Self from phaser.hooks.solver import NoiseModel -from phaser.utils.misc import jax_dataclass from phaser.utils.num import ( - get_array_module, cast_array_module, jit, - fft2, ifft2, abs2, check_finite, at, Float, to_real_dtype + assert_dtype, get_array_module, cast_array_module, jit, + fft2, ifft2, abs2, check_finite, at, Float, to_complex_dtype, to_numpy, to_real_dtype ) +import phaser.utils.tree as tree from phaser.utils.optics import fourier_shift_filter from phaser.observer import Observer from phaser.state import ReconsState @@ -73,13 +73,14 @@ def process_solvers( ('tilt',): 'tilt' } -def extract_vars(state: ReconsState, vars: t.AbstractSet[ReconsVar], group: t.Optional[NDArray[numpy.integer]] = None) -> t.Tuple[t.Dict[ReconsVar, t.Any], ReconsState]: - import jax.tree_util +def _normalize_path(path: t.Tuple[tree.GetAttrKey, ...]) -> t.Tuple[str, ...]: + return tuple(p.name for p in path) +def extract_vars(state: ReconsState, vars: t.AbstractSet[ReconsVar], group: t.Optional[NDArray[numpy.integer]] = None) -> t.Tuple[t.Dict[ReconsVar, t.Any], ReconsState]: d = {} - def f(path: t.Tuple[str, ...], val: t.Any): - if (var := _PATH_MAP.get(path)) and var in vars: + def f(path: t.Tuple[tree.GetAttrKey, ...], val: t.Any): + if (var := _PATH_MAP.get(_normalize_path(path))) and var in vars: if var in _PER_ITER_VARS and group is not None: d[var] = val[tuple(group)] else: @@ -87,21 +88,19 @@ def f(path: t.Tuple[str, ...], val: t.Any): return None return val - state = jax.tree_util.tree_map_with_path(f, state, is_leaf=lambda x: x is None) + state = tree.map_with_path(f, state, is_leaf=lambda x: x is None) return (d, state) def insert_vars(vars: t.Dict[ReconsVar, t.Any], state: ReconsState, group: t.Optional[NDArray[numpy.integer]] = None) -> ReconsState: - import jax.tree_util - - def f(path: t.Tuple[str, ...], val: t.Any): - if (var := _PATH_MAP.get(path)): + def f(path: t.Tuple[tree.GetAttrKey, ...], val: t.Any): + if (var := _PATH_MAP.get(_normalize_path(path))): if var in vars: return vars[var] if var in _PER_ITER_VARS and val is not None and group is not None: return val[tuple(group)] return val - return jax.tree_util.tree_map_with_path(f, state, is_leaf=lambda x: x is None) + return tree.map_with_path(f, state, is_leaf=lambda x: x is None) def apply_update(state: ReconsState, update: t.Dict[ReconsVar, numpy.ndarray]) -> ReconsState: @@ -128,7 +127,7 @@ def filter_vars(d: t.Dict[ReconsVar, t.Any], vars: t.AbstractSet[ReconsVar]) -> return {k: v for (k, v) in d.items() if k in vars} -@jax_dataclass +@tree.tree_dataclass class SolverStates: noise_model_state: t.Any group_solver_states: t.List[t.Any] @@ -154,18 +153,17 @@ def init_state( def run_engine(args: EngineArgs, props: GradientEnginePlan) -> ReconsState: - import jax - import jax.numpy - from optax.tree_utils import tree_zeros_like - jax.config.update('jax_traceback_filtering', 'off') - - xp = cast_array_module(jax.numpy) - dtype = t.cast(t.Type[numpy.floating], args['dtype']) + #jax.config.update('jax_traceback_filtering', 'off') + xp = cast_array_module(args['xp']) + dtype = args['dtype'] + cdtype = to_complex_dtype(dtype) observer: Observer = args.get('observer', Observer()) state = args['state'] seed = args['seed'] patterns = args['data'].patterns - pattern_mask = args['data'].pattern_mask + pattern_mask = xp.array(args['data'].pattern_mask) + assert_dtype(patterns, dtype) + assert_dtype(pattern_mask, dtype) noise_model = props.noise_model(None) @@ -204,7 +202,7 @@ def run_engine(args: EngineArgs, props: GradientEnginePlan) -> ReconsState: rescale_factor = xp.mean(rescale_factors) logger.info("Pre-calculated intensities") - logger.info(f"Rescaling initial probe intensity by {rescale_factor:.2e}") + logger.info(f"Rescaling initial probe intensity by {float(rescale_factor):.2e}") state.probe.data *= xp.sqrt(rescale_factor) probe_int = xp.sum(abs2(state.probe.data)) @@ -215,6 +213,7 @@ def run_engine(args: EngineArgs, props: GradientEnginePlan) -> ReconsState: iter_constraint_states = [reg.init_state(state) for reg in iter_constraints] #with jax.profiler.trace("/tmp/jax-trace", create_perfetto_link=True): + #with torch.profiler.profile(with_stack=True) as prof: for i in range(1, props.niter+1): state.iter.engine_iter = i state.iter.total_iter = start_i + i @@ -224,7 +223,7 @@ def run_engine(args: EngineArgs, props: GradientEnginePlan) -> ReconsState: set(k for (k, flag) in flags.items() if flag({'state': state, 'niter': props.niter})) ) # gradients for per-iteration solvers - iter_grads = tree_zeros_like(extract_vars(state, iter_vars & _PER_ITER_VARS)[0]) + iter_grads = tree.zeros_like(extract_vars(state, iter_vars & _PER_ITER_VARS)[0]) # whether to shuffle groups this iteration iter_shuffle_groups = shuffle_groups({'state': state, 'niter': props.niter}) @@ -257,7 +256,7 @@ def run_engine(args: EngineArgs, props: GradientEnginePlan) -> ReconsState: xp=xp, dtype=dtype ) - losses.append(loss) + losses.append(float(loss)) check_finite(state.object.data, state.probe.data, context=f"object or probe, group {group_i}") observer.update_group(state, props.send_every_group) @@ -278,9 +277,13 @@ def run_engine(args: EngineArgs, props: GradientEnginePlan) -> ReconsState: state, iter_constraint_states[reg_i] ) + assert_dtype(state.object.data, cdtype) + assert_dtype(state.probe.data, cdtype) + if 'positions' in iter_vars: # check positions are at least overlapping object state.object.sampling.check_scan(state.scan, state.probe.sampling.extent / 2.) + assert_dtype(state.scan, dtype) state.progress.iters = numpy.concatenate([state.progress.iters, [i + start_i]]) state.progress.detector_errors = numpy.concatenate([state.progress.detector_errors, [loss]]) @@ -312,25 +315,25 @@ def run_group( xp: t.Any, dtype: t.Type[numpy.floating], ) -> t.Tuple[ReconsState, float, t.Dict[ReconsVar, t.Any], SolverStates]: - import jax xp = cast_array_module(xp) - ((loss, solver_states), grad) = jax.value_and_grad(run_model, has_aux=True)( + ((loss, solver_states), grad) = tree.value_and_grad(run_model, has_aux=True, xp=xp, sign=-1)( *extract_vars(state, vars, group), group=group, props=props, group_patterns=group_patterns, pattern_mask=pattern_mask, noise_model=noise_model, regularizers=regularizers, solver_states=solver_states, xp=xp, dtype=dtype ) - # steepest descent direction - grad = jax.tree.map(lambda v: -v.conj(), grad, is_leaf=lambda x: x is None) for k in grad.keys(): if k == 'probe': grad[k] /= group.shape[-1] else: grad[k] /= probe_int * group.shape[-1] + #print(f"obj grad: {xp.max(abs2(grad['object']))}") + #print(f"probe grad: {xp.max(abs2(grad['probe'])) if 'probe' in grad else None}") + # update iter grads at group - iter_grads = jax.tree.map(lambda v1, v2: at(v1, tuple(group)).set(v2), iter_grads, filter_vars(grad, vars & _PER_ITER_VARS)) + iter_grads = tree.map(lambda v1, v2: at(v1, tuple(group)).set(v2), iter_grads, filter_vars(grad, vars & _PER_ITER_VARS)) for (sol_i, solver) in enumerate(group_solvers): solver_grads = filter_vars(grad, solver.params) diff --git a/phaser/engines/gradient/solvers.py b/phaser/engines/gradient/solvers.py index f0d3425..a9adc4c 100644 --- a/phaser/engines/gradient/solvers.py +++ b/phaser/engines/gradient/solvers.py @@ -1,91 +1,104 @@ -import logging +""" +Gradient-descent solvers + +Much of this is adapted from [Optax](https://github.com/google-deepmind/optax), +but modified to use our generic array and pytree utilities. + +Optax is released under the Apache license: + +> Copyright 2019 DeepMind Technologies Limited. All Rights Reserved. +> +> Licensed under the Apache License, Version 2.0 (the "License"); +> you may not use this file except in compliance with the License. +> You may obtain a copy of the License at +> +> http://www.apache.org/licenses/LICENSE-2.0 +> +> Unless required by applicable law or agreed to in writing, software +> distributed under the License is distributed on an "AS IS" BASIS, +> WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +> See the License for the specific language governing permissions and +> limitations under the License. +""" + import typing as t import numpy -from numpy.typing import NDArray, ArrayLike +from numpy.typing import NDArray -from phaser.utils.num import as_array, abs2 +from phaser.utils.num import get_array_module +import phaser.utils.tree as tree from phaser.hooks.solver import GradientSolver, GradientSolverArgs -from phaser.hooks.schedule import FlagArgs, ScheduleLike +from phaser.hooks.schedule import ScheduleLike, Schedule from phaser.types import ReconsVar, process_schedule -from phaser.plan import GradientEnginePlan, AdamSolverPlan, PolyakSGDSolverPlan, SGDSolverPlan +from phaser.plan import AdamSolverPlan, PolyakSGDSolverPlan, SGDSolverPlan from phaser.state import ReconsState -from .run import extract_vars, apply_update +from .run import extract_vars -import optax -from optax import GradientTransformation, GradientTransformationExtraArgs -from optax.schedules import StatefulSchedule +OptState: t.TypeAlias = tree.Tree +Params: t.TypeAlias = tree.Tree +Updates: t.TypeAlias = Params -class OptaxScheduleWrapper(StatefulSchedule): - def __init__(self, schedule: ScheduleLike): - self.inner = process_schedule(schedule) +class TransformInitFn(t.Protocol): + def __call__(self, params: Params) -> OptState: + ... - def init(self) -> t.Optional[float]: - return None - def update_for_iter(self, sim: ReconsState, state: t.Optional[float], niter: int) -> float: - return self.inner({'state': sim, 'niter': niter}) +class TransformUpdateFn(t.Protocol): + def __call__( + self, updates: Updates, state: OptState, params: t.Optional[Params] = None, + **extra_args: t.Any, + ) -> t.Tuple[Updates, OptState]: + ... - # mock update from inside jax - def update( - self, state: t.Optional[float], - **extra_args, - ) -> t.Optional[float]: - return state - def __call__( - self, state: t.Optional[float], - **extra_args, - ) -> float: - assert state is not None - return state +class GradientTransformation(t.NamedTuple): + init: TransformInitFn + update: TransformUpdateFn -OptaxSolverState: t.TypeAlias = t.Tuple[t.Any, t.Dict[str, t.Optional[float]]] +ScheduledSolverState: t.TypeAlias = t.Tuple[t.Any, t.Dict[str, t.Optional[float]]] -class OptaxSolver(GradientSolver[OptaxSolverState]): +class ScheduledSolver(GradientSolver[ScheduledSolverState]): def __init__(self, name: str, factory: t.Callable[..., GradientTransformation], hyperparams: t.Mapping[str, ScheduleLike], params: t.Iterable[ReconsVar]): self.factory: t.Callable[..., GradientTransformation] = factory #self.inner: GradientTransformationExtraArgs = optax.with_extra_args_support(solver) - self.hyperparams: t.Dict[str, OptaxScheduleWrapper] = {k: OptaxScheduleWrapper(v) for (k, v) in hyperparams.items()} + self.hyperparams: t.Dict[str, Schedule] = {k: process_schedule(v) for (k, v) in hyperparams.items()} self.params: t.FrozenSet[ReconsVar] = frozenset(params) self.name: str = name # or self.inner.__class__.__name__ - def init_state(self, sim: ReconsState) -> OptaxSolverState: + def init_state(self, sim: ReconsState) -> ScheduledSolverState: return ( None, - {k: v.init() for (k, v) in self.hyperparams.items()}, + {k: None for (k, v) in self.hyperparams.items()}, ) - def _resolve(self, hparams: t.Mapping[str, t.Optional[float]]) -> GradientTransformationExtraArgs: - return optax.with_extra_args_support( - self.factory(**{k: v(hparams[k]) for (k, v) in self.hyperparams.items()}) - ) + def _resolve(self, hparams: t.Mapping[str, t.Optional[float]]) -> GradientTransformation: + return self.factory(**{k: hparams[k] for k in self.hyperparams.keys()}) - def update_for_iter(self, sim: ReconsState, state: OptaxSolverState, niter: int) -> OptaxSolverState: - hparams_state: t.Dict[str, t.Optional[float]] = {k: v.update_for_iter(sim, state[1][k], niter) for (k, v) in self.hyperparams.items()} + def update_for_iter(self, sim: ReconsState, state: ScheduledSolverState, niter: int) -> ScheduledSolverState: + hparams_state: t.Dict[str, t.Optional[float]] = {k: v({'state': sim, 'niter': niter}) for (k, v) in self.hyperparams.items()} return ( self._resolve(hparams_state).init(params=extract_vars(sim, self.params)[0]) if state[0] is None else state[0], hparams_state ) def update( - self, sim: 'ReconsState', state: OptaxSolverState, grad: t.Dict[ReconsVar, numpy.ndarray], loss: float, - ) -> t.Tuple[t.Dict[ReconsVar, numpy.ndarray], OptaxSolverState]: + self, sim: 'ReconsState', state: ScheduledSolverState, grad: t.Dict[ReconsVar, numpy.ndarray], loss: float, + ) -> t.Tuple[t.Dict[ReconsVar, numpy.ndarray], ScheduledSolverState]: (inner_state, hparams_state) = state - hparams_state = {k: v.update(hparams_state[k]) for (k, v) in self.hyperparams.items()} (updates, inner_state) = self._resolve(hparams_state).update( grad, inner_state, params=extract_vars(sim, self.params)[0], value=loss, loss=loss ) return (t.cast(t.Dict[ReconsVar, t.Any], updates), (inner_state, hparams_state)) -class SGDSolver(OptaxSolver): +class SGDSolver(ScheduledSolver): def __init__(self, args: GradientSolverArgs, props: SGDSolverPlan): hparams = { 'learning_rate': props.learning_rate @@ -94,33 +107,33 @@ def __init__(self, args: GradientSolverArgs, props: SGDSolverPlan): if props.momentum is not None: hparams['momentum'] = props.momentum def factory(**kwargs: t.Any) -> GradientTransformation: - return optax.chain( - optax.trace(kwargs['momentum'], props.nesterov), - optax.scale_by_learning_rate(kwargs['learning_rate'], flip_sign=False), + return chain( + trace(kwargs['momentum'], props.nesterov), + scale_by_learning_rate(kwargs['learning_rate']), ) else: def factory(**kwargs: t.Any) -> GradientTransformation: - return optax.scale_by_learning_rate(kwargs['learning_rate'], flip_sign=False) + return scale_by_learning_rate(kwargs['learning_rate']) super().__init__('sgd', factory, hparams, args['params']) -class AdamSolver(OptaxSolver): +class AdamSolver(ScheduledSolver): def __init__(self, args: GradientSolverArgs, props: AdamSolverPlan): hparams = { 'learning_rate': props.learning_rate } def factory(**kwargs) -> GradientTransformation: - return optax.chain( - optax.scale_by_adam(props.b1, props.b2, props.eps, props.eps_root, nesterov=props.nesterov), - optax.scale_by_learning_rate(learning_rate=kwargs['learning_rate'], flip_sign=False), + return chain( + scale_by_adam(props.b1, props.b2, props.eps, props.eps_root, nesterov=props.nesterov), + scale_by_learning_rate(learning_rate=kwargs['learning_rate']), ) super().__init__('adam', factory, hparams, args['params']) -class PolyakSGDSolver(OptaxSolver): +class PolyakSGDSolver(ScheduledSolver): def __init__(self, args: GradientSolverArgs, props: PolyakSGDSolverPlan): hparams = { 'max_learning_rate': props.max_learning_rate, @@ -128,12 +141,157 @@ def __init__(self, args: GradientSolverArgs, props: PolyakSGDSolverPlan): } def factory(**kwargs) -> GradientTransformation: - return optax.chain( - optax.scale_by_learning_rate(kwargs['scaling'], flip_sign=False), - optax.scale_by_polyak( + return chain( + scale_by_learning_rate(kwargs['scaling']), + scale_by_polyak( max_learning_rate=kwargs['max_learning_rate'], f_min=props.f_min, eps=props.eps, #variant='sps', ) ) - super().__init__('polyak_sgd', factory, hparams, args['params']) \ No newline at end of file + super().__init__('polyak_sgd', factory, hparams, args['params']) + + +def chain( + *args: GradientTransformation +) -> GradientTransformation: + init_fns = tuple(arg.init for arg in args) + update_fns = tuple(arg.update for arg in args) + + def init_fn(params: Params): + return tuple(fn(params) for fn in init_fns) + + def update_fn(updates, state, params=None, **extra_args): + new_state = [] + for s, fn in zip(state, update_fns): + updates, new_s = fn(updates, s, params, **extra_args) + new_state.append(new_s) + return updates, tuple(new_state) + + return GradientTransformation(init_fn, update_fn) + + +def trace( + decay: float, + nesterov: bool = False, + accumulator_dtype: t.Optional[t.Any] = None, +) -> GradientTransformation: + + def init_fn(params): + return tree.zeros_like(params, dtype=accumulator_dtype) + + def update_fn(updates: Updates, state: Updates, params=None, **extra_args: t.Any): + del params + f = lambda g, t: g + decay * t # noqa: E731 + new_trace = tree.map( + lambda g, t: None if g is None else f(g, t), + updates, + state.trace, + is_leaf=lambda g: g is None, + ) + updates = tree.map(f, updates, new_trace) if nesterov else new_trace + new_trace = tree.cast(new_trace, accumulator_dtype) + return updates, new_trace + + return GradientTransformation(init_fn, update_fn) + + +def scale_by_learning_rate( + learning_rate: float, *, + flip_sign: bool = False, +) -> GradientTransformation: + if flip_sign: + learning_rate *= -1 + + def update_fn(updates: Updates, state: None, params=None, **extra_args: t.Any): + del params + updates = tree.map(lambda g: learning_rate * g, updates) + return updates, state + + return GradientTransformation(lambda params: None, update_fn) + + +class ScaleByAdamState(t.NamedTuple): + n: NDArray[numpy.int32] # shape () + mu: Updates + nu: Updates + + +def scale_by_adam( + b1: float = 0.9, + b2: float = 0.999, + eps: float = 1e-8, + eps_root: float = 0.0, + mu_dtype: t.Optional[t.Any] = None, + *, + nesterov: bool = False, +) -> GradientTransformation: + def init_fn(params: Params) -> ScaleByAdamState: + xp = get_array_module(params) + mu = tree.zeros_like(params, dtype=mu_dtype) # First moment + nu = tree.zeros_like(params) # Second moment + return ScaleByAdamState(n=xp.zeros((), dtype=xp.int32), mu=mu, nu=nu) + + def update_fn( + updates: Updates, state: ScaleByAdamState, params: t.Any = None, **kwargs: t.Any + ) -> t.Tuple[Updates, ScaleByAdamState]: + xp = get_array_module(updates) + del params + mu = tree.update_moment(updates, state.mu, b1, 1) + nu = tree.update_moment_per_elem_norm(updates, state.nu, b2, 2) + n_inc = safe_increment(state.n) + + if nesterov: + mu_hat = tree.map( + lambda m, g: b1 * m + (1 - b1) * g, + tree.bias_correction(mu, b1, safe_increment(n_inc)), + tree.bias_correction(updates, b1, n_inc), + ) + else: + mu_hat = tree.bias_correction(mu, b1, n_inc) + + nu_hat = tree.bias_correction(nu, b2, n_inc) + updates = tree.map( + lambda m, v: None if m is None else m / (xp.sqrt(v + eps_root) + eps), + mu_hat, + nu_hat, + is_leaf=lambda x: x is None, + ) + mu = tree.cast(mu, mu_dtype) + return updates, ScaleByAdamState(n=n_inc, mu=mu, nu=nu) + + return GradientTransformation(init_fn, update_fn) + + +def scale_by_polyak( + f_min: float = 0.0, + max_learning_rate: float = 1.0, + eps: float = 0.0 +) -> GradientTransformation: + def update_fn( + updates: Updates, state: None, params: t.Any = None, *, value: float, **kwargs: t.Any + ): + del params + del kwargs + xp = get_array_module(updates) + grad_sq_norm = tree.squared_norm(updates) + gap = xp.array(value - f_min).astype(grad_sq_norm.dtype) + step = xp.where( + grad_sq_norm + eps <= xp.finfo(float).eps, + xp.array(0.0), + xp.minimum(gap / (grad_sq_norm + eps), max_learning_rate), + ) + updates = tree.scale(step, updates) + return updates, state + + return GradientTransformation(lambda params: None, update_fn) + + +def safe_increment(n: NDArray[numpy.int32]) -> NDArray[numpy.int32]: + xp = get_array_module(n) + + max_value = xp.iinfo(n.dtype).max + max_value = xp.array(max_value, dtype=n.dtype) + return xp.where( + n < max_value, n + xp.ones_like(n), max_value + ) \ No newline at end of file diff --git a/phaser/execute.py b/phaser/execute.py index 597d244..00d8b9b 100644 --- a/phaser/execute.py +++ b/phaser/execute.py @@ -8,7 +8,7 @@ import pane from phaser.types import EarlyTermination -from phaser.utils.num import cast_array_module, get_array_module, get_backend_module, xp_is_jax, Sampling, to_complex_dtype +from phaser.utils.num import Device, cast_array_module, get_array_module, get_backend_devices, get_backend_module, set_default_device, to_device, xp_is_jax, Sampling, to_complex_dtype, xp_is_torch from phaser.utils.object import ObjectSampling from phaser.utils.misc import unwrap from .hooks import EngineHook, Hook, ObjectHook, RawData @@ -50,7 +50,7 @@ def execute_engine( engine: EngineHook, ) -> PreparedRecons: xp = get_array_module(recons.state.object.data, recons.state.probe.data) - dtype = recons.patterns.patterns.dtype + dtype = recons.patterns.patterns.dtype.type plan = t.cast(EnginePlan, engine.props) engine_i = recons.state.iter.engine_num @@ -223,16 +223,36 @@ def load_raw_data( def initialize_reconstruction( - plan: ReconsPlan, *, xp: t.Any = None, seed: t.Any = None, - name: t.Optional[str] = None, + plan: ReconsPlan, *, xp: t.Any = None, device: t.Optional[Device] = None, + seed: t.Any = None, name: t.Optional[str] = None, init_state: t.Union[ReconsState, PartialReconsState, None] = None, observers: t.Union[Observer, t.Iterable[Observer], None] = None, override_observers: t.Union[Observer, t.Iterable[Observer], None] = None, ) -> PreparedRecons: - xp = cast_array_module(get_backend_module(plan.backend) if xp is None else xp) + logging.basicConfig(level=logging.INFO) + + if xp is not None: + xp = cast_array_module(xp) + # TODO: nicer output here + logging.info(f"Using manually-specified backend {xp}") + devices = get_backend_devices(xp) + logging.info(f"Available devices: {list(devices)}") + manual = device is not None + device = to_device(device, xp) if device is not None else devices[0] + logging.info(f"Using {'manually-specified ' if manual else ''}device {device}") + else: + xp = get_backend_module(plan.backend) + logging.info(f"Using {'plan-specified' if plan.backend is not None else 'default'} backend {xp}") + devices = get_backend_devices(xp) + logging.info(f"Available devices: {list(devices)}") + + device = to_device(plan.device, xp) if plan.device is not None else devices[0] + logging.info(f"Using {'plan-specified ' if plan.device is not None else ''}device {device}") + + set_default_device(device, xp) + observer = _normalize_observers(observers, override_observers) - logging.basicConfig(level=logging.INFO) logging.info("Executing plan...") observer.init_recons(plan) @@ -360,8 +380,8 @@ def initialize_reconstruction( def prepare_for_engine(patterns: Patterns, state: ReconsState, xp: t.Any, engine: EnginePlan) -> t.Tuple[Patterns, ReconsState]: # TODO: more graceful - if isinstance(engine, GradientEnginePlan) and not xp_is_jax(xp): - raise ValueError("The gradient descent engine requires the jax backend.") + if isinstance(engine, GradientEnginePlan) and not (xp_is_jax(xp) or xp_is_torch(xp)): + raise ValueError("The gradient descent engine requires the 'jax' or 'torch' backend.") state = state.to_xp(xp) diff --git a/phaser/hooks/__init__.py b/phaser/hooks/__init__.py index ff86e08..e8d38a5 100644 --- a/phaser/hooks/__init__.py +++ b/phaser/hooks/__init__.py @@ -202,7 +202,7 @@ class PostInitHook(Hook[PostInitArgs, t.Tuple['Patterns', 'ReconsState']]): class EngineArgs(t.TypedDict): data: 'Patterns' state: 'ReconsState' - dtype: DTypeLike + dtype: t.Type[numpy.floating] xp: t.Any recons_name: str observer: 'Observer' diff --git a/phaser/hooks/preprocessing.py b/phaser/hooks/preprocessing.py index 60b7813..20bd6fe 100644 --- a/phaser/hooks/preprocessing.py +++ b/phaser/hooks/preprocessing.py @@ -59,7 +59,7 @@ def add_poisson_noise(raw_data: RawData, props: PoissonProps) -> RawData: logger.info(f"Mean pattern intensity: {numpy.nanmean(numpy.nansum(patterns, axis=(-1, -2)))}") - raw_data['patterns'] = xp.array(patterns) + raw_data['patterns'] = xp.asarray(patterns) return raw_data @@ -79,7 +79,7 @@ def drop_nan_patterns(args: PostInitArgs, props: DropNanProps) -> t.Tuple[Patter logger.info(f"Dropping {n}/{patterns.shape[0]} patterns which are at least {props.threshold:.1%} NaN values") patterns = patterns[~mask] - if scan.shape[0] == mask.size: + if scan.shape[0] == xp.size(mask): # apply mask to scan as well scan = scan[~mask] elif scan.shape[0] != patterns.shape[0]: @@ -111,7 +111,7 @@ def diffraction_align(args: PostInitArgs, props: t.Any = None) -> t.Tuple[Patter sum_pattern = xp.zeros(patterns.patterns.shape[-2:], dtype=patterns.patterns.dtype) for group in groups: - pats = xp.array(patterns.patterns[tuple(group)]) * xp.array(patterns.pattern_mask) + pats = xp.asarray(patterns.patterns[tuple(group)]) * xp.asarray(patterns.pattern_mask) sum_pattern += t.cast(NDArray[numpy.floating], xp.nansum(pats, axis=tuple(range(pats.ndim - 2)))) mean_pattern = sum_pattern / math.prod(patterns.patterns.shape[:-2]) diff --git a/phaser/hooks/scan.py b/phaser/hooks/scan.py index 6e402fb..1c9f31c 100644 --- a/phaser/hooks/scan.py +++ b/phaser/hooks/scan.py @@ -21,7 +21,7 @@ def raster_scan(args: ScanHookArgs, props: RasterScanProps) -> NDArray[numpy.flo ) if props.affine is not None: - affine = xp.array(props.affine, dtype=scan.dtype) + affine = xp.asarray(props.affine, dtype=scan.dtype) # equivalent to (affine @ scan.T).T (active transformation) scan = scan @ affine.T diff --git a/phaser/hooks/schedule.py b/phaser/hooks/schedule.py index ceac461..017abe0 100644 --- a/phaser/hooks/schedule.py +++ b/phaser/hooks/schedule.py @@ -3,7 +3,7 @@ import numpy -from ..types import Dataclass, Flag, process_schedule +from ..types import Dataclass, SimpleFlag, process_schedule from .hook import Hook if t.TYPE_CHECKING: @@ -23,7 +23,9 @@ class ScheduleHook(Hook[FlagArgs, float]): known = {} -FlagLike: t.TypeAlias = t.Union[bool, Flag, FlagHook] +Flag: t.TypeAlias = t.Callable[['FlagArgs'], bool] +Schedule: t.TypeAlias = t.Callable[['FlagArgs'], float] +FlagLike: t.TypeAlias = t.Union[bool, SimpleFlag, FlagHook] ScheduleLike: t.TypeAlias = t.Union[float, ScheduleHook] diff --git a/phaser/plan.py b/phaser/plan.py index 1326638..8690eae 100644 --- a/phaser/plan.py +++ b/phaser/plan.py @@ -1,7 +1,7 @@ from pathlib import Path import typing as t -from .types import Dataclass, Slices, BackendName, Flag, ReconsVars, IsVersion, EmptyDict +from .types import Dataclass, Slices, BackendName, SimpleFlag, ReconsVars, IsVersion, EmptyDict from .hooks import RawDataHook, ProbeHook, ObjectHook, ScanHook, EngineHook, PostInitHook, PostLoadHook, TiltHook from .hooks.solver import NoiseModelHook, ConventionalSolverHook, PositionSolverHook, GradientSolverHook from .hooks.schedule import FlagLike, ScheduleLike @@ -64,7 +64,7 @@ class EnginePlan(Dataclass, kw_only=True): update_positions: FlagLike = False update_tilt: FlagLike = False - calc_error: FlagLike = Flag(every=1) + calc_error: FlagLike = SimpleFlag(every=1) calc_error_fraction: float = 0.1 save: FlagLike = False @@ -180,6 +180,7 @@ class ReconsPlan(Dataclass, kw_only=True): name: str backend: t.Optional[BackendName] = None + device: t.Optional[str] = None dtype: t.Literal['float32', 'float64'] = 'float32' wavelength: t.Optional[float] = None diff --git a/phaser/state.py b/phaser/state.py index f09b98a..076b211 100644 --- a/phaser/state.py +++ b/phaser/state.py @@ -5,16 +5,16 @@ from typing_extensions import Self from phaser.utils.num import Sampling, to_numpy, get_array_module, Float -from phaser.utils.misc import jax_dataclass +from phaser.utils.tree import tree_dataclass from phaser.utils.object import ObjectSampling if t.TYPE_CHECKING: from phaser.utils.io import HdfLike - from phaser.utils.image import _BoundaryMode + from phaser.utils.image import _InterpBoundaryMode from phaser.observer import Observer, ObserverSet -@jax_dataclass +@tree_dataclass class Patterns(): patterns: NDArray[numpy.floating] """Raw diffraction patterns, with 0-frequency sample in corner""" @@ -27,7 +27,7 @@ def to_numpy(self) -> Self: ) -@jax_dataclass +@tree_dataclass class IterState(): engine_num: int """Engine number. 1-indexed (0 means before any reconstruction).""" @@ -57,7 +57,7 @@ def empty() -> 'IterState': return IterState(0, 0, 0) -@jax_dataclass(static_fields=('sampling',)) +@tree_dataclass(static_fields=('sampling',)) class ProbeState(): sampling: Sampling """Probe coordinate system. See `Sampling` for more details.""" @@ -68,7 +68,7 @@ def resample( self, new_samp: Sampling, rotation: float = 0.0, order: int = 1, - mode: '_BoundaryMode' = 'grid-constant', + mode: '_InterpBoundaryMode' = 'grid-constant', ) -> Self: new_data = self.sampling.resample( self.data, new_samp, @@ -80,7 +80,7 @@ def resample( def to_xp(self, xp: t.Any) -> Self: return self.__class__( - self.sampling, xp.array(self.data) + self.sampling, xp.asarray(self.data) ) def to_numpy(self) -> Self: @@ -93,7 +93,7 @@ def copy(self) -> Self: return copy.deepcopy(self) -@jax_dataclass(static_fields=('sampling',)) +@tree_dataclass(static_fields=('sampling',)) class ObjectState(): sampling: ObjectSampling """Object coordinate system. See `ObjectSampling` for more details.""" @@ -107,7 +107,7 @@ class ObjectState(): def to_xp(self, xp: t.Any) -> Self: return self.__class__( - self.sampling, xp.array(self.data), xp.array(self.thicknesses) + self.sampling, xp.asarray(self.data), xp.asarray(self.thicknesses) ) def to_numpy(self) -> Self: @@ -118,7 +118,7 @@ def to_numpy(self) -> Self: def zs(self) -> NDArray[numpy.floating]: xp = get_array_module(self.thicknesses) if len(self.thicknesses) < 2: - return xp.array([0.], dtype=self.thicknesses.dtype) + return xp.asarray([0.], dtype=self.thicknesses.dtype) return xp.cumsum(self.thicknesses) - self.thicknesses def copy(self) -> Self: @@ -126,7 +126,7 @@ def copy(self) -> Self: return copy.deepcopy(self) -@jax_dataclass +@tree_dataclass class ProgressState: iters: NDArray[numpy.integer] """Iterations error measurements were taken at.""" @@ -162,7 +162,7 @@ def __eq__(self, other: t.Any) -> bool: xp.array_equal(self.detector_errors, other.detector_errors) ) -@jax_dataclass(kw_only=True, static_fields=('progress',)) +@tree_dataclass(kw_only=True, static_fields=('progress',)) class ReconsState: iter: IterState wavelength: Float @@ -180,8 +180,8 @@ def to_xp(self, xp: t.Any) -> Self: iter=self.iter, probe=self.probe.to_xp(xp), object=self.object.to_xp(xp), - scan=xp.array(self.scan), - tilt=None if self.tilt is None else xp.array(self.tilt), + scan=xp.asarray(self.scan), + tilt=None if self.tilt is None else xp.asarray(self.tilt), progress=self.progress, wavelength=self.wavelength, ) @@ -211,7 +211,7 @@ def read_hdf5(file: 'HdfLike') -> 'ReconsState': return hdf5_read_state(file).to_complete() -@jax_dataclass(kw_only=True, static_fields=('progress',)) +@tree_dataclass(kw_only=True, static_fields=('progress',)) class PartialReconsState: iter: t.Optional[IterState] = None wavelength: t.Optional[Float] = None @@ -260,7 +260,7 @@ def read_hdf5(file: 'HdfLike') -> 'PartialReconsState': return hdf5_read_state(file) -@jax_dataclass(static_fields=('name', 'observer')) +@tree_dataclass(static_fields=('name', 'observer')) class PreparedRecons: patterns: Patterns state: ReconsState diff --git a/phaser/types.py b/phaser/types.py index 5714612..3f1006f 100644 --- a/phaser/types.py +++ b/phaser/types.py @@ -12,7 +12,7 @@ if t.TYPE_CHECKING: from phaser.state import ReconsState - from phaser.hooks.schedule import FlagArgs, FlagLike, ScheduleLike + from phaser.hooks.schedule import FlagArgs, FlagLike, Flag, ScheduleLike, Schedule T = t.TypeVar('T') @@ -75,7 +75,7 @@ def __hash__(self) -> int: return hash(self.__class__.__name__) -BackendName: t.TypeAlias = t.Literal['cuda', 'cupy', 'jax', 'cpu', 'numpy'] +BackendName: t.TypeAlias = t.Literal['cupy', 'jax', 'torch', 'numpy'] ReconsVar: t.TypeAlias = t.Literal['object', 'probe', 'positions', 'tilt'] ReconsVars: t.TypeAlias = t.Annotated[t.FrozenSet[ReconsVar], _ReconsVarsAnnotation()] @@ -122,7 +122,7 @@ def thicknesses(self) -> t.List[float]: Slices: t.TypeAlias = t.Union[SliceList, SliceStep, SliceTotal] -class Flag(Dataclass): +class SimpleFlag(Dataclass): after: int = 0 every: int = 1 before: t.Optional[int] = None @@ -154,21 +154,21 @@ def __call__(self, args: 'FlagArgs') -> bool: @lru_cache -def process_flag(flag: 'FlagLike') -> t.Callable[['FlagArgs'], bool]: +def process_flag(flag: 'FlagLike') -> 'Flag': if isinstance(flag, bool): return _ConstFlag(flag) return flag @lru_cache -def process_schedule(schedule: 'ScheduleLike') -> t.Callable[['FlagArgs'], float]: +def process_schedule(schedule: 'ScheduleLike') -> 'Schedule': if isinstance(schedule, (int, float)): return lambda _: schedule return schedule def flag_any_true(flag: t.Callable[['FlagArgs'], bool], niter: int) -> bool: - if isinstance(flag, Flag): + if isinstance(flag, SimpleFlag): return flag.any_true(niter) elif isinstance(flag, _ConstFlag): return flag.val diff --git a/phaser/utils/_cuda_kernels.py b/phaser/utils/_cuda_kernels.py index 6c85523..b5e6d44 100644 --- a/phaser/utils/_cuda_kernels.py +++ b/phaser/utils/_cuda_kernels.py @@ -1,10 +1,13 @@ import functools +import re import typing as t import cupy # pyright: ignore[reportMissingImports] import numpy +from phaser.utils.misc import _MockModule + # grid # block # thread @@ -211,3 +214,34 @@ def _get_cutout_kernel(dtype: numpy.dtype, operation: str) -> cupy.RawKernel: """, kernel_name) kernel.compile() return kernel + + +def get_devices() -> t.Tuple[str, ...]: + n: int = cupy.cuda.runtime.getDeviceCount() + return tuple(f'cuda:{i}' for i in range(n)) + + +def to_device(device: t.Union[str, int, cupy.cuda.Device]) -> cupy.cuda.Device: + if isinstance(device, (int, cupy.cuda.Device)): + return cupy.cuda.Device(device) + device = str(device) + if (match := re.fullmatch(r'cuda:(\d)+', device)): + return cupy.cuda.Device(int(match[1])) + raise ValueError(f"Invalid device '{device}'") + + +def set_default_device(device: cupy.cuda.Device): + if not isinstance(device, cupy.cuda.Device): + raise TypeError(f"Invalid device '{device}' for backend cupy") + device.use() + + +def _wrap_call(f, *args: t.Any, **kwargs: t.Any) -> t.Any: + if (device := kwargs.pop('device', None)) is not None: + with to_device(device): + return f(*args, **kwargs) + + return f(*args, **kwargs) + + +mock_cupy = _MockModule(cupy, {}, _wrap_call) \ No newline at end of file diff --git a/phaser/utils/_jax_kernels.py b/phaser/utils/_jax_kernels.py index a0be3be..b0fcc0c 100644 --- a/phaser/utils/_jax_kernels.py +++ b/phaser/utils/_jax_kernels.py @@ -7,6 +7,9 @@ import jax.numpy as jnp # pyright: ignore[reportMissingImports] +Device: t.TypeAlias = t.Any + + def to_nd(arr: jax.Array, n: int) -> jax.Array: if arr.ndim > n: arr = arr.reshape(-1, *arr.shape[arr.ndim - n + 1:]) @@ -99,4 +102,49 @@ def affine_transform( return jax.vmap( lambda a: jax.scipy.ndimage.map_coordinates(a, tuple(coords), order=order, mode=jax_mode, cval=cval), - )(to_nd(input, n_axes + 1)).reshape((*input.shape[:-n_axes], *output_shape)) \ No newline at end of file + )(to_nd(input, n_axes + 1)).reshape((*input.shape[:-n_axes], *output_shape)) + + +def get_devices() -> t.Tuple[Device, ...]: + devices = [] + + for backend in ('gpu', 'tpu', 'cpu'): + try: + devices.extend(jax.devices(backend)) + except RuntimeError: + pass + + return tuple(devices) + + +def to_device(device: t.Union[str, Device]) -> Device: + if isinstance(device, jax.Device): + return device + + split = device.rsplit(':', maxsplit=1) + if len(split) == 1: + [backend] = split + index = 0 + else: + [backend, index] = split + index = int(index) + + try: + backend_devices = jax.devices(backend) + except RuntimeError: + raise RuntimeError(f"Can't use device '{device}': jax backend '{backend}' is unavailable") + + try: + return backend_devices[index] + except IndexError: + pass + if len(backend_devices) == 0: + raise RuntimeError(f"Can't use device '{device}': No available devices on jax backend '{backend}'") + raise RuntimeError(f"Can't use device '{device}': Device index {index} not available" + f" ({len(backend_devices)} device(s) on jax backend '{backend}')") + + +def set_default_device(device: Device): + if not isinstance(device, jax.Device): + raise TypeError(f"Invalid device '{device}' for backend jax") + jax.config.update('jax_default_device', device) \ No newline at end of file diff --git a/phaser/utils/_torch_kernels.py b/phaser/utils/_torch_kernels.py new file mode 100644 index 0000000..1817d1d --- /dev/null +++ b/phaser/utils/_torch_kernels.py @@ -0,0 +1,449 @@ +import functools +import itertools +import operator +from types import ModuleType +import typing as t + +import numpy +from numpy.typing import ArrayLike +import torch + +from phaser.utils.num import _PadMode +from phaser.utils.image import _InterpBoundaryMode +from phaser.utils.misc import _MockModule + + +def get_cutouts(obj: torch.Tensor, start_idxs: torch.Tensor, cutout_shape: t.Tuple[int, int]) -> torch.Tensor: + #out_shape = (*start_idxs.shape[:-1], *obj.shape[:-2], *cutout_shape) + ys, xs = torch.arange(cutout_shape[0]), torch.arange(cutout_shape[1]) + yy, xx = torch.meshgrid(ys, xs, indexing='ij') + yy = start_idxs[..., 0][..., None, None] + yy + xx = start_idxs[..., 1][..., None, None] + xx + + out = obj[..., yy, xx] + if obj.ndim > 2: + # oof + out = torch.permute(out, (*(i + obj.ndim - 2 for i in range(start_idxs.ndim - 1)), *range(obj.ndim - 2), -2, -1)) + #assert out.shape == out_shape + return out + + +class _MockTensor(torch.Tensor): + #@property + #def dtype(self) -> t.Type[numpy.generic]: + # return to_numpy_dtype(super().dtype) + + @property + def T(self) -> '_MockTensor': # pyright: ignore[reportIncompatibleVariableOverride] + if self.ndim <= 2: + return _MockTensor(super().T) + return t.cast(_MockTensor, self.permute(*range(self.ndim - 1, -1, -1))) + + def astype(self, dtype: t.Union[str, torch.dtype, t.Type[numpy.generic]]) -> '_MockTensor': + return t.cast(_MockTensor, self.to(to_torch_dtype(dtype))) + + +_TORCH_TO_NUMPY_DTYPE: t.Dict[torch.dtype, t.Type[numpy.generic]] = { + torch.bool : numpy.bool, + torch.uint8 : numpy.uint8, + torch.int8 : numpy.int8, + torch.int16 : numpy.int16, + torch.int32 : numpy.int32, + torch.int64 : numpy.int64, + torch.float16 : numpy.float16, + torch.float32 : numpy.float32, + torch.float64 : numpy.float64, + torch.complex64 : numpy.complex64, + torch.complex128 : numpy.complex128, +} + +_NUMPY_TO_TORCH_DTYPE: t.Dict[t.Type[numpy.generic], torch.dtype] = { + numpy.bool : torch.bool, + numpy.uint8 : torch.uint8, + numpy.int8 : torch.int8, + numpy.int16 : torch.int16, + numpy.int32 : torch.int32, + numpy.int64 : torch.int64, + numpy.float16 : torch.float16, + numpy.float32 : torch.float32, + numpy.float64 : torch.float64, + numpy.complex64 : torch.complex64, + numpy.complex128 : torch.complex128, +} + + +def to_torch_dtype(dtype: t.Union[str, torch.dtype, numpy.dtype, t.Type[numpy.generic]]) -> torch.dtype: + if isinstance(dtype, torch.dtype): + return dtype + if isinstance(dtype, numpy.dtype): + dtype = dtype.type + elif not isinstance(dtype, type) or not issubclass(dtype, numpy.generic): + dtype = numpy.dtype(dtype).type + + try: + return _NUMPY_TO_TORCH_DTYPE[dtype] + except KeyError: + raise ValueError(f"Can't convert dtype '{dtype}' to a PyTorch dtype") + + +def to_numpy_dtype(dtype: t.Union[str, torch.dtype, numpy.dtype, t.Type[numpy.generic]]) -> t.Type[numpy.generic]: + if isinstance(dtype, str): + return numpy.dtype(dtype).type + if isinstance(dtype, numpy.dtype): + return dtype.type + if isinstance(dtype, torch.dtype): + return _TORCH_TO_NUMPY_DTYPE[dtype] + return dtype + + +def _mirror(idx: torch.Tensor, size: int) -> torch.Tensor: + s = size -1 + return torch.abs((idx + s) % (2 * s) - s) + + +_BOUNDARY_FNS: t.Dict[str, t.Callable[[torch.Tensor, int], torch.Tensor]] = { + 'nearest': lambda idx, size: torch.clip(idx, 0, size - 1), + 'grid-wrap': lambda idx, size: idx % size, + 'reflect': lambda idx, size: torch.floor_divide(_mirror(2*idx+1, 2*size+1), 2), + 'mirror': _mirror, +} + +_PAD_MODE_MAP: t.Dict[_PadMode, str] = { + 'constant': 'constant', + 'edge': 'replicate', + 'reflect': 'reflect', + 'wrap': 'circular', +} + +def min( + arr: torch.Tensor, axis: t.Union[int, t.Tuple[int, ...], None] = None, *, + keepdims: bool = False +) -> torch.Tensor: + if axis is None: + if keepdims: + return torch.min(arr).reshape((1,) * arr.ndim) + return torch.min(arr) + return torch.amin(arr, axis, keepdim=keepdims) + + +def max( + arr: torch.Tensor, axis: t.Union[int, t.Tuple[int, ...], None] = None, *, + keepdims: bool = False +) -> torch.Tensor: + if axis is None: + if keepdims: + return torch.max(arr).reshape((1,) * arr.ndim) + return torch.max(arr) + return torch.amax(arr, axis, keepdim=keepdims) + + +def nanmin( + arr: torch.Tensor, axis: t.Union[int, t.Tuple[int, ...], None] = None, *, + keepdims: bool = False +) -> torch.Tensor: + return min(torch.nan_to_num(arr, nan=torch.inf), axis, keepdims=keepdims) + + +def nanmax( + arr: torch.Tensor, axis: t.Union[int, t.Tuple[int, ...], None] = None, *, + keepdims: bool = False +) -> torch.Tensor: + return max(torch.nan_to_num(arr, nan=-torch.inf), axis, keepdims=keepdims) + + +def minimum( + x1: ArrayLike, x2: ArrayLike +) -> torch.Tensor: + if not isinstance(x1, torch.Tensor): + x1 = _MockTensor(torch.asarray(x1)) + if not isinstance(x2, torch.Tensor): + x2 = _MockTensor(torch.asarray(x2)) + + return torch.minimum(x1, x2) + + +def maximum( + x1: ArrayLike, x2: ArrayLike +) -> torch.Tensor: + if not isinstance(x1, torch.Tensor): + x1 = _MockTensor(torch.asarray(x1)) + if not isinstance(x2, torch.Tensor): + x2 = _MockTensor(torch.asarray(x2)) + + return torch.maximum(x1, x2) + + +def split( + arr: torch.Tensor, sections: int, *, axis: int = 0 +) -> t.Tuple[torch.Tensor, ...]: + if arr.shape[axis] % sections != 0: + raise ValueError("array split does not result in an equal division") + return torch.split(arr, arr.shape[axis] // sections, axis) + + +def pad( + arr: torch.Tensor, pad_width: t.Union[int, t.Tuple[int, int], t.Sequence[t.Tuple[int, int]]], /, *, + mode: _PadMode = 'constant', cval: float = 0. +) -> torch.Tensor: + if mode not in ('constant', 'edge', 'reflect', 'wrap'): + raise ValueError(f"Unsupported padding mode '{mode}'") + + pad = (pad_width, pad_width) if isinstance(pad_width, int) else pad_width + + if isinstance(pad[0], int): + pad = (pad,) + + if len(pad) == 1: + pad = tuple(pad) * arr.ndim + elif len(pad) != arr.ndim: + raise ValueError(f"Invalid `pad_width` '{pad_width}'.") + + pad = tuple(itertools.chain.from_iterable(t.cast(t.Sequence[t.Tuple[int, int]], reversed(pad)))) + + kwargs = {'value': cval} if mode == 'constant' else {} + return _MockTensor(torch.nn.functional.pad(arr, pad, mode=_PAD_MODE_MAP[mode], **kwargs)) + + +def unwrap(arr: torch.Tensor, discont: t.Optional[float] = None, axis: int = -1, *, + period: float = 2.*numpy.pi) -> torch.Tensor: + if discont is None: + discont = period / 2 + + diff = torch.diff(arr, dim=axis) + dtype = torch.result_type(diff, period) + + if dtype.is_floating_point: + interval_high = period / 2 + boundary_ambiguous = True + else: + interval_high, rem = divmod(period, 2) + boundary_ambiguous = rem == 0 + + interval_low = -interval_high + diffmod = torch.remainder(diff - interval_low, period) + interval_low + if boundary_ambiguous: + diffmod[(diffmod == interval_low) & (diff > 0)] = interval_high + + phase_correct = diffmod - diff + phase_correct[abs(diff) < discont] = 0. + + prepend_shape = list(arr.shape) + prepend_shape[axis] = 1 + return arr + torch.cat([torch.zeros(prepend_shape, dtype=dtype), torch.cumsum(phase_correct, axis)], dim=axis) + + +def indices( + shape: t.Tuple[int, ...], dtype: t.Union[str, None, t.Type[numpy.generic], torch.dtype] = None, sparse: bool = False +) -> t.Union[torch.Tensor, t.Tuple[torch.Tensor, ...]]: + dtype = to_torch_dtype(dtype) if dtype is not None else torch.int64 + + n = len(shape) + + if sparse: + return tuple( + _MockTensor(torch.arange(s, dtype=dtype).reshape((1,) * i + (s,) + (1,) * (n - i - 1))) + for (i, s) in enumerate(shape) + ) + + arrs = tuple(torch.arange(s, dtype=dtype) for s in shape) + return _MockTensor(torch.stack(torch.meshgrid(*arrs, indexing='ij'), dim=0)) + + +def size(arr: torch.Tensor, axis: t.Optional[int]) -> int: + return arr.size(axis) if axis is not None else arr.numel() + + +def asarray( + arr: t.Any, dtype: t.Union[str, torch.dtype, numpy.dtype, t.Type[numpy.generic], None] = None, *, + copy: t.Optional[bool] = None, +) -> _MockTensor: + dtype = to_torch_dtype(dtype) if dtype is not None else None + requires_grad = arr.requires_grad if isinstance(arr, torch.Tensor) else False + + if isinstance(arr, numpy.ndarray) and arr.flags['WRITEABLE'] and not copy: + device = torch.get_default_device() + if device.type == 'cuda': + return _MockTensor(torch.from_numpy(arr).to(device=device, dtype=dtype, non_blocking=True)) + + return _MockTensor(torch.asarray(arr, dtype=dtype, requires_grad=requires_grad, copy=copy)) + + +def affine_transform( + input: torch.Tensor, matrix: ArrayLike, + offset: t.Optional[ArrayLike] = None, + output_shape: t.Optional[t.Tuple[int, ...]] = None, + order: int = 1, mode: _InterpBoundaryMode = 'grid-constant', + cval: ArrayLike = 0.0, +) -> torch.Tensor: + + if output_shape is None: + output_shape = input.shape + n_axes = len(output_shape) # num axes to transform over + + idxs = t.cast(torch.Tensor, indices(output_shape, dtype=torch.float64)) + + matrix = asarray(matrix) + if matrix.size() == (n_axes + 1, n_axes + 1): + # homogenous transform matrix + coords = torch.tensordot( + matrix, torch.stack((*idxs, torch.ones_like(idxs[0])), dim=0), dims=1 + )[:-1] + elif matrix.size() == (n_axes,): + coords = (idxs.T * matrix + asarray(offset)).T + else: + raise ValueError(f"Expected matrix of shape ({n_axes + 1}, {n_axes + 1}) or ({n_axes},), instead got shape {matrix.shape}") + + return _MockTensor(torch.vmap( + lambda a: map_coordinates(a, coords, order=order, mode=mode, cval=cval) + )(input.reshape(-1, *input.shape[-n_axes:])).reshape((*input.shape[:-n_axes], *output_shape))) + + +def map_coordinates( + arr: torch.Tensor, coordinates: torch.Tensor, + order: int = 1, mode: _InterpBoundaryMode = 'grid-constant', + cval: ArrayLike = 0.0 +) -> torch.Tensor: + from phaser.utils.num import to_real_dtype + if arr.ndim != coordinates.shape[0]: + raise ValueError("invalid shape for coordinate array") + + if order not in (0, 1): + raise ValueError(f"Interpolation order {order} not supported (torch currently only supports order=0, 1)") + + if mode == 'grid-constant': + return _map_coordinates_constant( + arr, coordinates, order=order, cval=cval + ) + + remap_fn = _BOUNDARY_FNS.get(mode) + if remap_fn is None: + raise ValueError(f"Interpolation mode '{mode}' not supported (torch supports one of " + "('constant', 'nearest', 'reflect', 'mirror', 'grid-wrap'))") + + weight_dtype = to_torch_dtype(to_real_dtype(to_numpy_dtype(arr.dtype))) + + ax_nodes: t.List[t.Tuple[t.Tuple[torch.Tensor, torch.Tensor], ...]] = [] + + for ax_coords, size in zip(coordinates, arr.shape): + if order == 1: + lower = torch.floor(ax_coords) + upper_weight = ax_coords - lower + lower_idx = lower.type(torch.int32) + ax_nodes.append(( + (remap_fn(lower_idx, size), 1.0 - upper_weight), + (remap_fn(lower_idx + 1, size), upper_weight), + )) + else: + idx = torch.round(ax_coords).type(torch.int32) + ax_nodes.append(((remap_fn(idx, size), torch.ones((), dtype=weight_dtype)),)) + + outputs = [] + for corner in itertools.product(*ax_nodes): + idxs, weights = zip(*corner) + outputs.append(arr[idxs] * functools.reduce(operator.mul, weights)) + + result = functools.reduce(operator.add, outputs) + return _MockTensor(result.type(arr.dtype)) + + +def _map_coordinates_constant( + arr: torch.Tensor, coordinates: torch.Tensor, + order: int = 1, cval: ArrayLike = 0.0 +) -> torch.Tensor: + from phaser.utils.num import to_real_dtype + weight_dtype = to_torch_dtype(to_real_dtype(to_numpy_dtype(arr.dtype))) + cval = torch.tensor(cval) + + is_valid = lambda idx, size: (0 <= idx) & (idx < size) # noqa: E731 + clip = lambda idx, size: torch.clip(idx, 0, size - 1) # noqa: E731 + + ax_nodes: t.List[t.Tuple[t.Tuple[torch.Tensor, torch.Tensor, torch.Tensor], ...]] = [] + + for ax_coords, size in zip(coordinates, arr.shape): + if order == 1: + lower = torch.floor(ax_coords) + upper_weight = ax_coords - lower + lower_idx = lower.type(torch.int32) + ax_nodes.append(( + (clip(lower_idx, size), is_valid(lower_idx, size), 1.0 - upper_weight), + (clip(lower_idx + 1, size), is_valid(lower_idx + 1, size), upper_weight), + )) + else: + idx = torch.round(ax_coords).type(torch.int32) + ax_nodes.append(((clip(idx, size), is_valid(idx, size), torch.ones((), dtype=weight_dtype)),)) + + outputs = [] + for corner in itertools.product(*ax_nodes): + idxs, valids, weights = zip(*corner) + val = torch.where(functools.reduce(operator.and_, valids), arr[idxs], cval) + outputs.append(val * functools.reduce(operator.mul, weights)) + + result = functools.reduce(operator.add, outputs) + return result.type(arr.dtype) + + +def get_devices() -> t.Tuple[torch.device, ...]: + devices = [] + devices.extend(f'cuda:{i}' for i in range(torch.cuda.device_count())) + + if torch.backends.mps.is_available(): + devices.append('mps') + + return tuple(map(torch.device, devices)) + + +def to_device(device: t.Union[str, torch.device]) -> torch.device: + if isinstance(device, torch.device): + return device + return torch.device(device) + + +def set_default_device(device: torch.device): + if not isinstance(device, torch.device): + raise TypeError(f"Invalid device '{device}' for backend torch") + torch.set_default_device(device) + + +def _wrap_call(f, *args: t.Any, **kwargs: t.Any) -> t.Any: + try: + kwargs['dtype'] = to_torch_dtype(kwargs['dtype']) + except KeyError: + pass + + try: + kwargs['dim'] = kwargs.pop('axes') + except KeyError: + try: + kwargs['dim'] = kwargs.pop('axis') + except KeyError: + pass + + if f is torch.asarray and isinstance(args[0], numpy.ndarray): + if not args[0].flags['W']: + raise ValueError() + + result = f(*args, **kwargs) + # TODO: deal with tuples of output, pytrees, etc. here + # this will result in some nasty bugs + if isinstance(result, torch.Tensor): + return _MockTensor(result) + return result + + +mock_torch = _MockModule(torch, { + 'torch.array': functools.update_wrapper(lambda *args, **kwargs: _MockTensor(_wrap_call(torch.asarray, *args, **kwargs)), torch.asarray), # type: ignore + 'torch.asarray': asarray, + 'torch.mod': functools.update_wrapper(lambda *args, **kwargs: _MockTensor(_wrap_call(torch.remainder, *args, **kwargs)), torch.remainder), # type: ignore + 'torch.split': split, + 'torch.pad': pad, + 'torch.min': min, 'torch.max': max, + 'torch.nanmin': nanmin, 'torch.nanmax': nanmax, + 'torch.minimum': minimum, 'torch.maximum': maximum, + 'torch.unwrap': unwrap, + 'torch.indices': indices, + 'torch.size': size, + 'torch.iscomplexobj': lambda arr: torch.is_complex(arr), + 'torch.isrealobj': lambda arr: not torch.is_complex(arr), +}, _wrap_call) + +mock_torch._MockTensor = _MockTensor # type: ignore \ No newline at end of file diff --git a/phaser/utils/image.py b/phaser/utils/image.py index 45c1655..6b92ada 100644 --- a/phaser/utils/image.py +++ b/phaser/utils/image.py @@ -8,7 +8,7 @@ import numpy from numpy.typing import ArrayLike, NDArray -from .num import get_array_module, get_scipy_module, to_numpy, at, is_jax, abs2 +from .num import get_array_module, get_scipy_module, to_numpy, at, abs2, xp_is_jax, xp_is_torch NumT = t.TypeVar('NumT', bound=numpy.number) @@ -131,7 +131,7 @@ def scale_to_integral_type( return (xp.clip((imax + 1) / (vmax - vmin) * (arr - vmin), 0, imax)).astype(dtype) -_BoundaryMode: t.TypeAlias = t.Literal['constant', 'nearest', 'mirror', 'reflect', 'wrap', 'grid-mirror', 'grid-wrap', 'grid-constant'] +_InterpBoundaryMode: t.TypeAlias = t.Literal['constant', 'nearest', 'mirror', 'reflect', 'wrap', 'grid-mirror', 'grid-wrap', 'grid-constant'] def to_affine_matrix(arr: ArrayLike, ndim: int = 2) -> NDArray[numpy.floating]: @@ -182,19 +182,24 @@ def affine_transform( offset: t.Optional[ArrayLike] = None, output_shape: t.Optional[t.Tuple[int, ...]] = None, order: int = 1, - mode: _BoundaryMode = 'grid-constant', + mode: _InterpBoundaryMode = 'grid-constant', cval: t.Union[NumT, float] = 0.0, ) -> NDArray[NumT]: if mode in ('constant', 'wrap'): # these modes aren't supported by jax raise ValueError(f"Resampling mode '{mode}' not supported (try 'grid-constant' or 'grid-wrap' instead)") - xp = get_array_module(input, matrix, offset) - scipy = get_scipy_module(input, matrix, offset) - if is_jax(input): - if order > 1: + if xp_is_torch(xp): + from ._torch_kernels import affine_transform, torch + return t.cast(NDArray[NumT], affine_transform( + t.cast(torch.Tensor, input), matrix, offset, + output_shape, order, mode, cval + )) + + if xp_is_jax(xp): + if order not in (0, 1): raise ValueError(f"Interpolation order {order} not supported (jax currently only supports order=0, 1)") from ._jax_kernels import affine_transform, jax return t.cast(NDArray[NumT], affine_transform( @@ -202,6 +207,8 @@ def affine_transform( output_shape, order, mode, cval )) + scipy = get_scipy_module(input, matrix, offset) + if offset is None: offset = 0. if output_shape is None: diff --git a/phaser/utils/io.py b/phaser/utils/io.py index 700432a..be5948d 100644 --- a/phaser/utils/io.py +++ b/phaser/utils/io.py @@ -208,10 +208,10 @@ def hdf5_write_object_state(state: ObjectState, group: h5py.Group): assert state.data.ndim == 3 assert state.thicknesses.ndim == 1 n_z = state.data.shape[0] - assert state.thicknesses.ndim == 1 - assert state.thicknesses.size == n_z if n_z > 1 else state.thicknesses.size in (0, 1) thick = to_numpy(state.thicknesses) + assert thick.ndim == 1 + assert thick.size == n_z if n_z > 1 else thick.size in (0, 1) group.create_dataset('thicknesses', data=thick) zs = group.create_dataset('zs', data=to_numpy(state.zs())) zs.make_scale("z") diff --git a/phaser/utils/misc.py b/phaser/utils/misc.py index 0c5467a..cdd118f 100644 --- a/phaser/utils/misc.py +++ b/phaser/utils/misc.py @@ -1,11 +1,11 @@ -import dataclasses +import functools import math +from types import ModuleType import typing as t import numpy from numpy.typing import NDArray from numpy.random import SeedSequence, PCG64, BitGenerator, Generator -from typing_extensions import dataclass_transform T = t.TypeVar('T') @@ -217,79 +217,57 @@ def __eq__(self, other: t.Any) -> bool: round(self, 5) == round(other, 5) -@t.overload -@dataclass_transform(kw_only_default=False, frozen_default=False) -def jax_dataclass(cls: t.Type[T], /, *, - init: bool = True, kw_only: bool = False, frozen: bool = False, - static_fields: t.Sequence[str] = (), drop_fields: t.Sequence[str] = (), -) -> t.Type[T]: - ... - -@t.overload -@dataclass_transform(kw_only_default=False, frozen_default=False) -def jax_dataclass(*, - init: bool = True, kw_only: bool = False, frozen: bool = False, - static_fields: t.Sequence[str] = (), drop_fields: t.Sequence[str] = (), -) -> t.Callable[[t.Type[T]], t.Type[T]]: - ... - -def jax_dataclass(cls: t.Optional[t.Type[T]] = None, /, *, - init: bool = True, kw_only: bool = False, frozen: bool = False, - static_fields: t.Sequence[str] = (), drop_fields: t.Sequence[str] = (), -) -> t.Union[t.Type[T], t.Callable[[t.Type[T]], t.Type[T]]]: - if cls is None: - return lambda cls: jax_dataclass(cls, init=init, kw_only=kw_only, frozen=frozen, - static_fields=static_fields, drop_fields=drop_fields) - - cls = dataclasses.dataclass(init=init, kw_only=kw_only, frozen=frozen)(cls) - _register_dataclass(cls, static_fields=static_fields, drop_fields=drop_fields) - return cls - +def unwrap(val: t.Optional[T]) -> T: + assert val is not None + return val -def _register_dataclass(cls: type, static_fields: t.Sequence[str], drop_fields: t.Sequence[str]): - try: - from jax.tree_util import register_pytree_with_keys - except ImportError: - return - fields = dataclasses.fields(cls) - field_names = {field.name for field in fields} +class _MockModule: + def __init__(self, module: ModuleType, rewrites: t.Dict[str, t.Callable], wrap: t.Callable): + self._inner: ModuleType = module + self._rewrites: t.Dict[str, t.Callable] = rewrites + self._wrap: t.Callable = wrap - if (extra := set(static_fields).difference(field_names)): - raise ValueError(f"Unknown field(s) passed to 'static_fields': {', '.join(map(repr, extra))}") - if (extra := set(drop_fields).difference(field_names)): - raise ValueError(f"Unknown field(s) passed to 'drop_fields': {', '.join(map(repr, extra))}") + self.__name__ = module.__name__ + """ + self.__spec__ = module.__spec__ + self.__package__ = module.__package__ + self.__loader__ = module.__loader__ + self.__path__ = module.__path__ + self.__doc__ = module.__doc__ + self.__annotations__ = module.__annotations__ + if hasattr(module, '__file__') and hasattr(module, '__cached__'): + self.__file__ = module.__file__ + self.__cached__ = module.__cached__ + """ - data_fields = tuple(field_names.difference(static_fields).difference(drop_fields)) + self.__setattr__ = lambda name, val: setattr(self._inner, name, val) - def flatten_with_keys(x: t.Any, /) -> tuple[t.Iterable[tuple[str, t.Any]], t.Hashable]: - meta = tuple(getattr(x, name) for name in static_fields) - trees = tuple((name, getattr(x, name)) for name in data_fields) - return trees, meta + def __getattr__(self, name: t.Any) -> t.Any: + fullpath = f"{self.__name__}.{name}" + if (rewrite := self._rewrites.get(fullpath, None)): + if (val := getattr(self._inner, name, None)) is not None: + return functools.update_wrapper(rewrite, val) + return rewrite - def unflatten(meta: t.Hashable, trees: t.Iterable[t.Any], /) -> t.Any: - if not isinstance(meta, tuple): - raise TypeError - static_args = dict(zip(static_fields, meta, strict=True)) - data_args = dict(zip(data_fields, trees, strict=True)) - return cls(**static_args, **data_args) + val = getattr(self._inner, name) - def flatten(x: t.Any, /) -> tuple[t.Iterable[t.Any], t.Hashable]: - hashed = tuple(getattr(x, name) for name in static_fields) - trees = tuple(getattr(x, name) for name in data_fields) - return trees, hashed + if isinstance(val, ModuleType): + return _MockModule(val, self._rewrites, self._wrap) - register_pytree_with_keys(cls, flatten_with_keys, unflatten, flatten) + if hasattr(val, '__call__') and not isinstance(val, type): + def inner(*args, **kwargs): + return self._wrap(val, *args, **kwargs) + return inner + return functools.update_wrapper(inner, val) -def unwrap(val: t.Optional[T]) -> T: - assert val is not None - return val + return val __all__ = [ 'create_rng', 'create_rng_group', 'create_sparse_groupings', 'create_compact_groupings', 'mask_fraction_of_groups', 'FloatKey', - 'jax_dataclass', 'unwrap', + 'unwrap', ] diff --git a/phaser/utils/num.py b/phaser/utils/num.py index db97103..bbddf9a 100644 --- a/phaser/utils/num.py +++ b/phaser/utils/num.py @@ -3,21 +3,25 @@ """ import functools +from itertools import chain import logging import warnings +from types import ModuleType, EllipsisType import typing as t +import sys import numpy from numpy.typing import ArrayLike, DTypeLike, NDArray from phaser.types import BackendName -from .misc import jax_dataclass +from .tree import tree_dataclass if t.TYPE_CHECKING: - from phaser.utils.image import _BoundaryMode + from phaser.utils.image import _InterpBoundaryMode +Device: t.TypeAlias = t.Any Float: t.TypeAlias = t.Union[float, numpy.floating] NumT = t.TypeVar('NumT', bound=numpy.number) FloatT = t.TypeVar('FloatT', bound=numpy.floating) @@ -27,98 +31,220 @@ P = t.ParamSpec('P') IndexLike: t.TypeAlias = t.Union[ - int, + int, slice, EllipsisType, NDArray[numpy.integer[t.Any]], NDArray[numpy.bool_], - t.Tuple[t.Union[int, NDArray[numpy.integer[t.Any]], NDArray[numpy.bool_]], ...], + t.Tuple[t.Union[int, slice, EllipsisType, NDArray[numpy.integer[t.Any]], NDArray[numpy.bool_]], ...], ] - logger = logging.getLogger(__name__) -try: + +def _load_cupy() -> ModuleType: + from ._cuda_kernels import mock_cupy + + with warnings.catch_warnings(): + # https://github.com/cupy/cupy/issues/8718 + warnings.filterwarnings(action='ignore', message=r"cupyx\.jit\.rawkernel is experimental", category=FutureWarning) + import cupyx.scipy.signal # pyright: ignore[reportMissingImports,reportUnusedImport] + import cupyx.scipy.ndimage # pyright: ignore[reportMissingImports,reportUnusedImport] # noqa: F401 + + return t.cast(ModuleType, mock_cupy) + +def _load_jax() -> ModuleType: import jax jax.config.update('jax_enable_x64', jax.default_backend() != 'METAL') - #jax.config.update('jax_log_compiles', True) - #jax.config.update('jax_debug_nans', True) -except ImportError: - pass + import jax.scipy + return jax.numpy -def get_backend_module(backend: t.Optional[BackendName] = None): - """Get the module `xp` associated with a compute backend""" - if backend is None: - return get_default_backend_module() +def _load_torch() -> ModuleType: + from ._torch_kernels import mock_torch + return t.cast(ModuleType, mock_torch) - backend = t.cast(BackendName, backend.lower()) - if backend not in ('cuda', 'cupy', 'jax', 'cpu', 'numpy'): - raise ValueError(f"Unknown backend '{backend}'") - if not t.TYPE_CHECKING: +_NAME_REMAP: t.Dict[BackendName, BackendName] = {} + +_LOAD_FNS: t.Dict[BackendName, t.Callable[[], ModuleType]] = { + 'cupy': _load_cupy, + 'jax': _load_jax, + 'torch': _load_torch, +} + + +class _BackendLoader: + def __init__(self): + self.inner: t.Dict[BackendName, t.Optional[ModuleType]] = {} + + def _normalize(self, backend: BackendName) -> BackendName: + name = t.cast(BackendName, backend.lower()) + name = _NAME_REMAP.get(name, name) + + if name not in ('cupy', 'jax', 'numpy', 'torch'): + raise ValueError(f"Unknown backend '{backend}'") + return name + + def _load(self, name: BackendName): try: - if backend == 'jax': - import jax.numpy - return jax.numpy - if backend in ('cupy', 'cuda'): - import cupy - return cupy + self.inner[name] = _LOAD_FNS[name]() except ImportError: - raise ValueError(f"Backend '{backend}' is not available") + self.inner[name] = None - return numpy + def get(self, name: BackendName): + name = self._normalize(name) + if name == 'numpy': + return numpy + if name not in self.inner: + self._load(name) -def detect_supported_backends() -> t.Dict[BackendName, t.Tuple[str, ...]]: - backends: t.Dict[BackendName, t.Tuple[str, ...]] = {'numpy': ('cpu',)} + return None if t.TYPE_CHECKING else self.inner[name] - try: - import jax.numpy # type: ignore - devices = jax.devices() - backends['jax'] = tuple(f"{device.platform}:{device.id}" for device in devices) - except ImportError: - pass + def __getitem__(self, name: BackendName): + if (backend := self.get(name)) is not None: + return backend - try: - import cupy # type: ignore - n_devices = cupy.cuda.runtime.getDeviceCount() - backends['cupy'] = tuple(f'cuda:{i}' for i in range(n_devices)) - except ImportError: - pass + raise ValueError(f"Backend '{name}' is not available") + +_BACKEND_LOADER = _BackendLoader() + + +def get_backend_module(backend: t.Optional[BackendName] = None): + """Get the module `xp` associated with a compute backend""" + if backend is None: + backend = get_default_backend() + + return _BACKEND_LOADER[backend] - return backends +def get_backend_scipy(backend: BackendName): + """Get the scipy module associated with a compute backend""" + + name = _BACKEND_LOADER._normalize(backend) + # ensure backend is loadable + _BACKEND_LOADER[backend] -def get_default_backend_module(): if not t.TYPE_CHECKING: + if name == 'torch': + raise ValueError("`get_backend_scipy` is not supported for the PyTorch backend") + if name == 'jax': + return sys.modules['jax.scipy'] + if name == 'cupy': + return sys.modules['cupyx.scipy'] + + import scipy + return scipy + + +def get_default_backend() -> BackendName: + # check for jax or torch GPUs first + if _BACKEND_LOADER.get('jax') is not None: + import jax try: - import jax.numpy - return jax.numpy - except ImportError: + if len(jax.devices('gpu')): + return 'jax' + except RuntimeError: pass - try: - import cupy - return cupy - except ImportError: + if len(jax.devices('tpu')): + return 'jax' + except RuntimeError: pass - - return numpy + if _BACKEND_LOADER.get('torch') is not None: + import torch + if torch.get_default_device().type != 'cpu': + return 'torch' + + for backend in ('jax', 'torch', 'cupy'): + if _BACKEND_LOADER.get(backend) is not None: + return backend + return 'numpy' + + +def get_devices() -> t.Tuple[t.Tuple[str, Device], ...]: + devices: t.List[t.Tuple[str, Device]] = [] + + if _BACKEND_LOADER.get('jax') is not None: + from ._jax_kernels import get_devices + devices.extend(('jax', device) for device in get_devices()) + if _BACKEND_LOADER.get('torch') is not None: + from ._torch_kernels import get_devices + devices.extend(('torch', device) for device in get_devices()) + if _BACKEND_LOADER.get('cupy') is not None: + from ._cuda_kernels import get_devices + devices.extend(('cupy', device) for device in get_devices()) + devices.append(('numpy', 'cpu')) + + return tuple(devices) + + +def to_device(device: t.Union[str, Device], xp: t.Any) -> Device: + if xp_is_torch(xp): + from ._torch_kernels import to_device + return to_device(device) + if xp_is_cupy(xp): + from ._cuda_kernels import to_device + return to_device(device) + if xp_is_jax(xp): + from ._jax_kernels import to_device + return to_device(device) + if xp is not numpy: + raise TypeError(f"Expected an array backend, got '{xp}'") + if device != 'cpu': + raise ValueError(f"Invalid device '{device}' for backend 'numpy'") + return device + + +def get_backend_devices(xp: t.Any) -> t.Tuple[Device, ...]: + if xp_is_torch(xp): + from ._torch_kernels import get_devices + return get_devices() + if xp_is_cupy(xp): + from ._cuda_kernels import get_devices + return get_devices() + if xp_is_jax(xp): + from ._jax_kernels import get_devices + return get_devices() + if xp is not numpy: + raise TypeError(f"Expected an array backend, got '{xp}'") + + return ('cpu',) + + +def set_default_device(device: Device, xp: t.Any): + if xp_is_torch(xp): + from ._torch_kernels import set_default_device + set_default_device(device) + elif xp_is_cupy(xp): + from ._cuda_kernels import set_default_device + set_default_device(device) + elif xp_is_jax(xp): + from ._jax_kernels import set_default_device + set_default_device(device) + elif xp is not numpy: + raise TypeError(f"Expected an array backend, got '{xp}'") + elif device != 'cpu': + raise ValueError(f"Invalid device '{device}' for backend 'numpy'") def get_array_module(*arrs: t.Optional[ArrayLike]): - try: - import jax - if any(isinstance(arr, jax.Array) for arr in arrs) \ - and not t.TYPE_CHECKING: - return jax.numpy - except ImportError: - pass - try: - from cupy import get_array_module as f # type: ignore - if not t.TYPE_CHECKING: - return f(*arrs) - except ImportError: - pass + if (xp := _BACKEND_LOADER.get('jax')) is not None: + import jax.tree + if any( + isinstance(arr, xp.ndarray) + for arr in chain.from_iterable(map(jax.tree.leaves, arrs)) + ): + return xp + if (xp := _BACKEND_LOADER.get('torch')) is not None: + from torch.utils._pytree import tree_leaves + if any( + isinstance(arr, (xp._MockTensor, xp._C.TensorBase)) # type: ignore + for arr in chain.from_iterable(map(tree_leaves, arrs)) + ): + return xp + if (xp := _BACKEND_LOADER.get('cupy')) is not None: + if any(isinstance(arr, xp.ndarray) for arr in arrs): + return xp return numpy @@ -131,33 +257,22 @@ def cast_array_module(xp: t.Any): def get_scipy_module(*arrs: t.Optional[ArrayLike]): # pyright: ignore[reportMissingImports,reportUnusedImport] - import scipy - - try: - import jax - if any(isinstance(arr, jax.Array) for arr in arrs) \ - and not t.TYPE_CHECKING: - return jax.scipy - except ImportError: - pass - try: - with warnings.catch_warnings(): - # https://github.com/cupy/cupy/issues/8718 - warnings.filterwarnings(action='ignore', message=r"cupyx\.jit\.rawkernel is experimental", category=FutureWarning) - - import cupyx.scipy.signal # pyright: ignore[reportMissingImports] - import cupyx.scipy.ndimage # pyright: ignore[reportMissingImports] # noqa: F401 - from cupyx.scipy import get_array_module as f # pyright: ignore[reportMissingImports] - - if not t.TYPE_CHECKING: + if not t.TYPE_CHECKING: + if (xp := _BACKEND_LOADER.get('jax')) is not None: + if any(isinstance(arr, xp.ndarray) for arr in arrs): + return sys.modules['jax.scipy'] + if (xp := _BACKEND_LOADER.get('torch')) is not None: + if any(isinstance(arr, (xp._MockTensor, xp._C.TensorBase)) for arr in arrs): # type: ignore + raise ValueError("`get_scipy_module` is not supported for the PyTorch backend") + if (xp := _BACKEND_LOADER.get('cupy')) is not None: + f = sys.modules['cupyx.scipy'].get_array_module return f(*arrs) - except ImportError: - pass + import scipy return scipy -def to_numpy(arr: t.Union[DTypeT, NDArray[DTypeT]], stream=None) -> NDArray[DTypeT]: +def to_numpy(arr: t.Union[DTypeT, NDArray[DTypeT], float, DTypeT], stream=None) -> NDArray[DTypeT]: """ Convert an array to numpy. For cupy backend, this is equivalent to `cupy.asnumpy`. @@ -165,7 +280,8 @@ def to_numpy(arr: t.Union[DTypeT, NDArray[DTypeT]], stream=None) -> NDArray[DTyp if not t.TYPE_CHECKING: if is_jax(arr): return numpy.array(arr) - + if is_torch(arr): + return arr.numpy(force=True) if is_cupy(arr): return arr.get(stream) @@ -180,7 +296,8 @@ def as_numpy(arr: ArrayLike, stream=None) -> NDArray: if not t.TYPE_CHECKING: if is_jax(arr): return numpy.array(arr) - + if is_torch(arr): + return arr.numpy(force=True) if is_cupy(arr): return arr.get(stream) @@ -201,46 +318,57 @@ def as_array(arr: ArrayLike, xp: t.Any = None) -> numpy.ndarray: return numpy.asarray(arr) -def is_cupy(arr: NDArray[DTypeT]) -> bool: - try: - import cupy # pyright: ignore[reportMissingImports] - except ImportError: +def is_cupy(arr: NDArray[numpy.generic]) -> bool: + if (cupy := _BACKEND_LOADER.get('cupy')) is None: return False return isinstance(arr, cupy.ndarray) def is_jax(arr: t.Any) -> bool: - try: - import jax # pyright: ignore[reportMissingImports] - except ImportError: + if (jnp := _BACKEND_LOADER.get('jax')) is None: return False + import jax # pyright[ignoreMissingImports] + return any( - isinstance(arr, jax.Array) for arr in jax.tree_util.tree_leaves(arr) + isinstance(arr, jnp.ndarray) + for arr in jax.tree_util.tree_leaves(arr) ) -def xp_is_cupy(xp: t.Any) -> bool: - try: - import cupy # pyright: ignore[reportMissingImports] - return xp is cupy - except ImportError: +def is_torch(arr: t.Any) -> bool: + if (torch := t.cast(ModuleType, _BACKEND_LOADER.get('torch'))) is None: return False + return any( + isinstance(arr, (torch._MockTensor, torch._C.TensorBase)) + for arr in torch.utils._pytree.tree_leaves(arr) + ) + + +def xp_is_cupy(xp: t.Any) -> bool: + return xp is sys.modules.get('cupy') def xp_is_jax(xp: t.Any) -> bool: - try: - import jax.numpy # pyright: ignore[reportMissingImports] - return xp is jax.numpy - except ImportError: + return xp is sys.modules.get('jax.numpy') + +def xp_is_torch(xp: t.Any) -> bool: + if (torch := _BACKEND_LOADER.get('torch')) is None: return False + return xp is torch def block_until_ready(arr: NDArray[DTypeT]) -> NDArray[DTypeT]: if hasattr(arr, 'block_until_ready'): # jax return arr.block_until_ready() # type: ignore + if is_torch(arr): + import torch + device = torch.get_default_device() + if device.type == 'cuda': + torch.cuda.synchronize(device) + if is_cupy(arr): - import cupy # pyright: ignore[reportMissingImports] + cupy = sys.modules['cupy'] stream = cupy.cuda.get_current_stream() stream.synchronize() @@ -261,20 +389,17 @@ def __init__( self.inner = f functools.update_wrapper(self, f) - if cupy_fuse: - try: - import cupy # pyright: ignore[reportMissingImports] - self.inner = cupy.fuse()(self.inner) - except ImportError: - pass + if cupy_fuse and (cupy := _BACKEND_LOADER.get('cupy')): + self.inner = cupy.fuse()(self.inner) # type: ignore # in jax: self.__call__ -> jax.jit -> jax_f -> f # otherwise: self.__call__ -> f - try: - import jax - except ImportError: - self.jax_jit = None - else: + if _BACKEND_LOADER.get('jax') is not None: + if t.TYPE_CHECKING: + import jax + else: + jax = sys.modules['jax'] + @functools.wraps(f) def jax_f(*args: P.args, **kwargs: P.kwargs) -> T: logger.info(f"JIT-compiling kernel '{self.__qualname__}'...") @@ -285,6 +410,8 @@ def jax_f(*args: P.args, **kwargs: P.kwargs) -> T: donate_argnums=donate_argnums, donate_argnames=donate_argnames, inline=inline, #compiler_options=compiler_options ) + else: + self.jax_jit = None def __call__(self, *args: P.args, **kwargs: P.kwargs) -> T: @@ -316,12 +443,8 @@ def fuse(*args, **kwargs) -> t.Callable[[T], T]: """ Equivalent to `cupy.fuse`, if supported. """ - try: - import cupy # pyright: ignore[reportMissingImports] - if not t.TYPE_CHECKING: - return cupy.fuse(*args, **kwargs) - except ImportError: - pass + if (xp := _BACKEND_LOADER.get('cupy')): + return xp.fuse(*args, **kwargs) # type: ignore return lambda x: x @@ -333,6 +456,17 @@ def debug_callback(callback: t.Callable[P, None], *args: P.args, **kwargs: P.kwa callback(*args, **kwargs) +def assert_dtype(arr: numpy.ndarray, dtype: t.Type[numpy.generic]): + if is_torch(arr): + from ._torch_kernels import to_torch_dtype, to_numpy_dtype + + if arr.dtype != to_torch_dtype(dtype): + raise TypeError(f"Expected array to be dtype {dtype}, got dtype {to_numpy_dtype(arr.dtype)} instead") + else: + if arr.dtype != dtype: + raise TypeError(f"Expected array to be dtype {dtype}, got dtype {arr.dtype} instead") + + _COMPLEX_MAP: t.Dict[t.Type[numpy.floating], t.Type[numpy.complexfloating]] = { numpy.floating: numpy.complexfloating, numpy.float32: numpy.complex64, @@ -367,6 +501,9 @@ def to_complex_dtype(dtype: DTypeLike) -> t.Type[numpy.complexfloating]: """ Convert a floating point dtype to a complex version. """ + if _BACKEND_LOADER.get('torch') is not None: + from ._torch_kernels import to_numpy_dtype + dtype = to_numpy_dtype(dtype) # type: ignore if not (isinstance(dtype, type) and issubclass(dtype, numpy.generic)): dtype = numpy.dtype(dtype).type @@ -399,6 +536,9 @@ def to_real_dtype(dtype: DTypeLike) -> t.Type[numpy.floating]: """ Convert a complex dtype to a plain float version. """ + if _BACKEND_LOADER.get('torch') is not None: + from ._torch_kernels import to_numpy_dtype + dtype = to_numpy_dtype(dtype) # type: ignore if not (isinstance(dtype, type) and issubclass(dtype, numpy.generic)): dtype = numpy.dtype(dtype).type @@ -439,6 +579,8 @@ def ifft2(a: ArrayLike) -> NDArray[numpy.complexfloating]: """ xp = get_array_module(a) + if xp_is_torch(xp): + return xp.fft.fftshift(xp.fft.ifft2(a, norm='ortho'), dim=(-2, -1)) # type: ignore return xp.fft.fftshift(xp.fft.ifft2(a, norm='ortho'), axes=(-2, -1)) @t.overload @@ -465,6 +607,8 @@ def fft2(a: ArrayLike) -> NDArray[numpy.complexfloating]: """ xp = get_array_module(a) + if xp_is_torch(xp): + return xp.fft.fft2(xp.fft.ifftshift(a, dim=(-2, -1)), norm='ortho') # type: ignore return xp.fft.fft2(xp.fft.ifftshift(a, axes=(-2, -1)), norm='ortho') @@ -506,10 +650,51 @@ def abs2(x: ArrayLike) -> NDArray[numpy.floating]: """ Return the squared amplitude of a complex array. - This is cheaper than `abs(x)**2.` + This is cheaper than `abs(x)**2` """ - x = get_array_module(x).array(x) - return x.real**2. + x.imag**2. # type: ignore + xp = get_array_module(x) + x = xp.asarray(x) + + if xp_is_torch(xp): + if not xp.is_complex(x): # type: ignore + return x**2 # type: ignore + else: + if not xp.iscomplexobj(x): + return x**2 # type: ignore + + return x.real**2 + x.imag**2 # type: ignore + + +_PadMode: t.TypeAlias = t.Literal['constant', 'edge', 'reflect', 'wrap'] + + +@t.overload +def pad( + arr: NDArray[DTypeT], pad_width: t.Union[int, t.Tuple[int, int], t.Sequence[t.Tuple[int, int]]], /, *, + mode: _PadMode = 'constant', cval: float = 0., +) -> NDArray[DTypeT]: + ... + +@t.overload +def pad( + arr: ArrayLike, pad_width: t.Union[int, t.Tuple[int, int], t.Sequence[t.Tuple[int, int]]], /, *, + mode: _PadMode = 'constant', cval: float = 0., +) -> numpy.ndarray: + ... + +def pad( + arr: ArrayLike, pad_width: t.Union[int, t.Tuple[int, int], t.Sequence[t.Tuple[int, int]]], /, *, + mode: _PadMode = 'constant', cval: float = 0., +) -> numpy.ndarray: + xp = get_array_module(arr) + + if xp_is_torch(xp): + pass + #from ._torch_kernels import pad + #return pad(arr, pad_width, mode=mode, cval=cval) # type: ignore + + return xp.pad(arr, pad_width, mode=mode, constant_values=cval) + @t.overload @@ -529,6 +714,9 @@ def ufunc_outer(ufunc: numpy.ufunc, x: ArrayLike, y: ArrayLike) -> numpy.ndarray from ._jax_kernels import outer return outer(ufunc, x, y) + if not t.TYPE_CHECKING and is_torch(x): + return ufunc(x[(..., *((None,) * y.ndim))], y[(*((None,) * x.ndim), ...)]) + return ufunc.outer(x, y) @@ -541,7 +729,7 @@ def check_finite(*arrs: NDArray[numpy.inexact], context: t.Optional[str] = None) raise ValueError("NaN or inf encountered") -@jax_dataclass(frozen=True, init=False, drop_fields=('extent',)) +@tree_dataclass(frozen=True, init=False, drop_fields=('extent',)) class Sampling: shape: NDArray[numpy.int_] """Sampling shape (n_y, n_x)""" @@ -714,7 +902,7 @@ def resample( self, arr: NDArray[NumT], new_samp: 'Sampling', *, rotation: float = 0.0, order: int = 1, - mode: '_BoundaryMode' = 'grid-constant', + mode: '_InterpBoundaryMode' = 'grid-constant', cval: t.Union[NumT, float] = 0.0, ) -> NDArray[NumT]: from .image import affine_transform, rotation_matrix @@ -736,7 +924,7 @@ def resample_recip( self, arr: NDArray[NumT], new_samp: 'Sampling', *, rotation: float = 0.0, order: int = 1, - mode: '_BoundaryMode' = 'grid-constant', + mode: '_InterpBoundaryMode' = 'grid-constant', cval: t.Union[NumT, float] = 0.0, fftshift: bool = True, ) -> NDArray[NumT]: @@ -811,7 +999,7 @@ def at(arr: NDArray[DTypeT], idx: IndexLike) -> _AtImpl[DTypeT]: __all__ = [ - 'get_backend_module', 'get_default_backend_module', + 'get_backend_module', 'get_default_backend', 'get_array_module', 'cast_array_module', 'get_scipy_module', 'to_numpy', 'as_numpy', 'as_array', 'is_cupy', 'is_jax', 'xp_is_cupy', 'xp_is_jax', diff --git a/phaser/utils/object.py b/phaser/utils/object.py index cadb136..c211523 100644 --- a/phaser/utils/object.py +++ b/phaser/utils/object.py @@ -12,13 +12,14 @@ from numpy.typing import ArrayLike, DTypeLike, NDArray from typing_extensions import Self -from .num import get_array_module, cast_array_module, to_real_dtype, as_numpy, at +from .num import get_array_module, cast_array_module, is_torch, to_real_dtype, as_numpy, at from .num import as_array, is_cupy, is_jax, NumT, ComplexT, DTypeT -from .misc import create_rng, jax_dataclass +from .tree import tree_dataclass +from .misc import create_rng if t.TYPE_CHECKING: - from phaser.utils.image import _BoundaryMode + from phaser.utils.image import _InterpBoundaryMode @t.overload @@ -49,7 +50,7 @@ def random_phase_object(shape: t.Iterable[int], sigma: float = 1e-6, *, seed: t. rng = create_rng(seed, 'random_phase_object') real_dtype = to_real_dtype(dtype) if dtype is not None else numpy.float64 - obj_angle = xp2.array(rng.normal(0., sigma, tuple(shape)), dtype=real_dtype) + obj_angle = xp2.asarray(rng.normal(0., sigma, tuple(shape)), dtype=real_dtype) return xp2.cos(obj_angle) + xp2.sin(obj_angle) * 1.j @@ -98,7 +99,7 @@ def resample_slices( # TODO more options in this case? new_total_thick = numpy.sum(new_thicknesses) - slice_frac = xp.array((new_thicknesses / new_total_thick)[(slice(None), *repeat(None, obj.ndim - 1))]) + slice_frac = xp.asarray((new_thicknesses / new_total_thick)[(slice(None), *repeat(None, obj.ndim - 1))]) return xp.exp((xp.log(obj) * slice_frac).astype(obj.dtype)) if obj.shape[0] != len(old_thicknesses): @@ -178,7 +179,7 @@ def _interp1d(arr: NDArray[NumT], old_zs: NDArray[numpy.floating], new_zs: NDArr else: slice_i = slice_is[i] # linearly interpolate - t = xp.array(float((new_z - old_zs[slice_i]) / delta_zs[slice_i]), dtype=real_dtype) + t = xp.asarray(float((new_z - old_zs[slice_i]) / delta_zs[slice_i]), dtype=real_dtype) slice = ((1-t)*arr[slice_i] + t*arr[slice_i + 1]).astype(arr.dtype) new_arr = at(new_arr, i).set(slice) @@ -186,7 +187,7 @@ def _interp1d(arr: NDArray[NumT], old_zs: NDArray[numpy.floating], new_zs: NDArr return new_arr -@jax_dataclass(frozen=True, init=False) +@tree_dataclass(frozen=True, init=False) class ObjectSampling: shape: NDArray[numpy.int_] """Sampling shape `(n_y, n_x)`""" @@ -286,19 +287,17 @@ def check_scan(self, scan_positions: NDArray[numpy.floating], pad: ArrayLike = 0 (scan_positions[..., 1] < obj_min[1]) | (scan_positions[..., 1] > obj_max[1]) ) if (n_outside := int(xp.sum(outside))): - raise ValueError(f"{n_outside}/{outside.size} probe positions completely outside object") + raise ValueError(f"{n_outside}/{xp.size(outside)} probe positions completely outside object") def _pos_to_object_idx(self, pos: ArrayLike, cutout_shape: t.Tuple[int, ...]) -> NDArray[numpy.float64]: """Return starting index for the cutout closest to centered around `pos` (`(y, x)`)""" - - if not is_jax(pos): # allow jax tracers to work right - pos = as_numpy(pos) + xp = get_array_module(pos) # for a given cutout, shift to the top left pixel of that cutout # e.g. a 2x2 cutout needs shifted by s/2 - shift = -numpy.maximum(0., (numpy.array(cutout_shape[-2:]) - 1.)) / 2. + shift = -xp.maximum(0., (xp.array(cutout_shape[-2:]) - 1.)) / 2. - return ((pos - self.corner) / self.sampling + shift).astype(numpy.float64) # type: ignore + return ((pos - xp.array(self.corner.copy())) / xp.array(self.sampling.copy()) + shift).astype(numpy.float64) # type: ignore def slice_at_pos(self, pos: ArrayLike, cutout_shape: t.Tuple[int, ...]) -> t.Tuple[slice, slice]: """ @@ -312,9 +311,10 @@ def slice_at_pos(self, pos: ArrayLike, cutout_shape: t.Tuple[int, ...]) -> t.Tup Returns slices which can be used to index into an object. E.g. `obj[slice_at_pos(pos, (32, 32))]` will return an array of shape `(32, 32)`. """ + xp = get_array_module(pos) idxs = self._pos_to_object_idx(pos, cutout_shape) - (start_i, start_j) = map(int, numpy.round(idxs).astype(numpy.int64)) + (start_i, start_j) = map(int, xp.round(idxs).astype(numpy.int64)) assert start_i >= 0 and start_j >= 0 return ( slice(start_i, start_i + cutout_shape[-2]), @@ -327,8 +327,10 @@ def get_subpx_shifts(self, pos: ArrayLike, cutout_shape: t.Tuple[int, ...]) -> N Returns the shift from the rounded position towards the actual position, in length units. """ + xp = get_array_module(pos) + pos = self._pos_to_object_idx(as_array(pos), cutout_shape) - return (pos - get_array_module(pos).round(pos)).astype(numpy.float64) * self.sampling + return (pos - xp.round(pos)).astype(numpy.float64) * xp.asarray(self.sampling, copy=True) @t.overload def cutout( # pyright: ignore[reportOverlappingOverload] @@ -342,7 +344,7 @@ def cutout(self, arr: numpy.ndarray, pos: ArrayLike, shape: t.Tuple[int, ...]) - def cutout(self, arr: numpy.ndarray, pos: ArrayLike, shape: t.Tuple[int, ...]) -> ObjectCutout[t.Any]: xp = get_array_module(arr, pos) - return ObjectCutout(self, xp.array(arr), xp.array(pos), shape) + return ObjectCutout(self, xp.asarray(arr), xp.asarray(pos), shape) def get_view_at_pos(self, arr: NDArray[NumT], pos: ArrayLike, shape: t.Tuple[int, ...]) -> NDArray[NumT]: """ @@ -379,8 +381,8 @@ def get_region_crop(self, pad: ArrayLike = 0.) -> t.Tuple[slice, slice]: def get_region_mask(self, pad: ArrayLike = 0., *, xp: t.Any = None) -> NDArray[numpy.bool_]: xp2 = numpy if xp is None else cast_array_module(xp) - mask = xp2.zeros(self.shape, dtype=numpy.bool_) - mask = at(mask, self.get_region_crop(pad=pad)).set(numpy.bool_(1)) # type: ignore + mask = xp2.zeros(tuple(self.shape), dtype=numpy.bool_) + mask = at(mask, self.get_region_crop(pad=pad)).set(t.cast(numpy.bool_, 1)) return mask def get_region_center(self) -> NDArray[numpy.floating]: @@ -429,7 +431,7 @@ def mpl_extent(self, center: bool = True) -> t.Tuple[float, float, float, float] def resample( self, arr: NDArray[NumT], new_samp: 'ObjectSampling', *, - order: int = 1, mode: '_BoundaryMode' = 'grid-constant', + order: int = 1, mode: '_InterpBoundaryMode' = 'grid-constant', cval: t.Union[NumT, float] = 1.0, rotation: t.Optional[float] = None, affine: t.Optional[ArrayLike] = None, @@ -491,8 +493,8 @@ class ObjectCutout(t.Generic[DTypeT]): _start_idxs: NDArray[numpy.int_] = field(init=False) def __post_init__(self): - self._start_idxs = numpy.round(self.sampling._pos_to_object_idx(self.pos, self.cutout_shape)).astype(numpy.int_) # type: ignore - self._start_idxs = get_array_module(self.obj).array(self._start_idxs) + xp = get_array_module(self.pos) + self._start_idxs = xp.round(self.sampling._pos_to_object_idx(self.pos, self.cutout_shape)).astype(numpy.int_) # type: ignore @property def shape(self) -> t.Tuple[int, ...]: @@ -503,6 +505,10 @@ def get(self) -> NDArray[DTypeT]: from ._jax_kernels import get_cutouts return t.cast(NDArray[DTypeT], get_cutouts(self.obj, self._start_idxs, tuple(self.cutout_shape))) + if is_torch(self.obj): + from ._torch_kernels import get_cutouts + return get_cutouts(self.obj, self._start_idxs, tuple(self.cutout_shape)) # type: ignore + if is_cupy(self.obj): try: from ._cuda_kernels import get_cutouts diff --git a/phaser/utils/optics.py b/phaser/utils/optics.py index e027b29..cdb406c 100644 --- a/phaser/utils/optics.py +++ b/phaser/utils/optics.py @@ -165,7 +165,7 @@ def fourier_shift_filter(ky: NDArray[numpy.floating], kx: NDArray[numpy.floating xp = get_array_module(ky, kx) dtype = to_complex_dtype(ky.dtype) - (y, x) = split_array(xp.array(shifts, dtype=ky.dtype), axis=-1) + (y, x) = split_array(xp.asarray(shifts, dtype=ky.dtype), axis=-1) return xp.exp(xp.array(-2.j*numpy.pi, dtype=dtype) * (ufunc_outer(xp.multiply, x, kx) + ufunc_outer(xp.multiply, y, ky))) diff --git a/phaser/utils/scan.py b/phaser/utils/scan.py index 26d26e8..5350023 100644 --- a/phaser/utils/scan.py +++ b/phaser/utils/scan.py @@ -42,17 +42,17 @@ def make_raster_scan(shape: t.Tuple[int, int], scan_step: ArrayLike, dtype = numpy.float64 # TODO actually center this around (0, 0) - yy = xp2.arange(shape[0], dtype=dtype) - xp2.array(shape[0] / 2., dtype=dtype) - xx = xp2.arange(shape[1], dtype=dtype) - xp2.array(shape[1] / 2., dtype=dtype) + yy = xp2.arange(shape[0], dtype=dtype) - xp2.asarray(shape[0] / 2., dtype=dtype) + xx = xp2.arange(shape[1], dtype=dtype) - xp2.asarray(shape[1] / 2., dtype=dtype) pts = xp2.stack(xp2.meshgrid(yy, xx, indexing='ij'), axis=-1) if rotation != 0.: theta = rotation * numpy.pi/180. - mat = xp2.array([[numpy.cos(theta), -numpy.sin(theta)], [numpy.sin(theta), numpy.cos(theta)]], dtype=dtype) + mat = xp2.asarray([[numpy.cos(theta), -numpy.sin(theta)], [numpy.sin(theta), numpy.cos(theta)]], dtype=dtype) pts = (pts @ mat.T) - return pts * xp2.broadcast_to(xp2.array(scan_step), (2,)).astype(dtype) # type: ignore + return pts * xp2.broadcast_to(xp2.asarray(scan_step), (2,)).astype(dtype) # type: ignore __all__ = [ diff --git a/phaser/utils/tree.py b/phaser/utils/tree.py new file mode 100644 index 0000000..6198c36 --- /dev/null +++ b/phaser/utils/tree.py @@ -0,0 +1,416 @@ +import dataclasses +import functools +import typing as t + +import numpy +from numpy.typing import ArrayLike, DTypeLike, NDArray +from typing_extensions import Self, dataclass_transform + +T = t.TypeVar('T') +Leaf: t.TypeAlias = t.Any +Tree: t.TypeAlias = t.Any + +class TreeSpec(t.Protocol): + @property + def num_leaves(self) -> int: + ... + + @property + def num_nodes(self) -> int: + ... + + def unflatten(self, leaves: t.Iterable[Leaf], /) -> Tree: + ... + + def flatten_up_to(self, xs: Tree, /) -> t.List[Tree]: + ... + + def __eq__(self, other: Self, /) -> bool: # pyright: ignore[reportIncompatibleMethodOverride] + ... + + def __ne__(self, other: Self, /) -> bool: # pyright: ignore[reportIncompatibleMethodOverride] + ... + +class Key(t.Protocol): + def __hash__(self) -> int: + ... + + def __eq__(self, other: object) -> bool: + ... + + def __str__(self) -> str: + ... + +class GetAttrKey(Key, t.Protocol): + @property + def name(self) -> str: + ... + + +KeyPath: t.TypeAlias = t.Tuple[Key, ...] + + +def flatten( + tree: Tree, + is_leaf: t.Optional[t.Callable[..., t.Any]] = None, +) -> t.Tuple[t.List[Leaf], TreeSpec]: + from phaser.utils.num import is_torch + + if is_torch(tree): + from torch.utils._pytree import tree_flatten # type: ignore + return tree_flatten(tree, is_leaf) + + import jax.tree # type: ignore + return jax.tree.flatten(tree, is_leaf) + + +def flatten_with_path( + tree: Tree, + is_leaf: t.Optional[t.Callable[..., t.Any]] = None, +) -> t.Tuple[t.List[t.Tuple[KeyPath, Leaf]], TreeSpec]: + from phaser.utils.num import is_torch + + if is_torch(tree): + from torch.utils._pytree import tree_flatten_with_path # type: ignore + return tree_flatten_with_path(tree, is_leaf) # type: ignore + + from jax.tree_util import tree_flatten_with_path + return tree_flatten_with_path(tree, is_leaf) + + +def unflatten( + leaves: t.Iterable[t.Any], + treespec: TreeSpec +) -> Tree: + try: + from torch.utils._pytree import TreeSpec + if isinstance(treespec, TreeSpec): + return treespec.unflatten(leaves) + except ImportError: + pass + try: + from jax.tree_util import PyTreeDef + if isinstance(treespec, PyTreeDef): + return treespec.unflatten(leaves) + except ImportError: + pass + + raise TypeError( + f"tree_unflatten expected `treespec` to be a TreeSpec, " + f"got item of type {type(treespec)} instead." + ) + + +def map( + f: t.Callable[..., t.Any], + tree: Tree, + *rest: Tree, + is_leaf: t.Optional[t.Callable[..., t.Any]] = None, +) -> t.Any: + from phaser.utils.num import is_torch + + if is_torch(tree): + from torch.utils._pytree import tree_map # type: ignore + return tree_map(f, tree, *rest, is_leaf=is_leaf) + + import jax.tree # type: ignore + return jax.tree.map(f, tree, *rest, is_leaf=is_leaf) + + +def reduce( + f: t.Callable[[T, t.Any], T], tree: Tree, initializer: T, *, + is_leaf: t.Optional[t.Callable[..., t.Any]] = None, +) -> T: + return functools.reduce(f, leaves(tree, is_leaf=is_leaf), initializer) + + +def sum(tree: Tree) -> numpy.ndarray: + from phaser.utils.num import get_array_module + + xp = get_array_module(tree) + sums = map(xp.sum, tree) + return reduce(lambda lhs, rhs: lhs + rhs, sums, initializer=0) + + +def map_with_path( + f: t.Callable[..., t.Any], + tree: Tree, + *rest: Tree, + is_leaf: t.Optional[t.Callable[..., t.Any]] = None, +) -> t.Any: + from phaser.utils.num import is_torch + + if is_torch(tree): + from torch.utils._pytree import tree_map_with_path # type: ignore + + def wrapper(path: KeyPath, *leaves: t.Any): + return f(tuple(path), *leaves) + + return tree_map_with_path(wrapper, tree, *rest, is_leaf=is_leaf) + + from jax.tree_util import tree_map_with_path # type: ignore + return tree_map_with_path(f, tree, *rest, is_leaf=is_leaf) + + +def grad( + f: t.Callable, + argnums: t.Union[int, t.Tuple[int, ...]] = 0, + has_aux: bool = False, *, xp: t.Optional[t.Any] = None, +) -> t.Callable[..., Tree]: + from phaser.utils.num import xp_is_torch, xp_is_jax + + if xp is None or xp_is_jax(xp): + import jax # type: ignore + return jax.grad(f, argnums, has_aux=has_aux) + if xp_is_torch(xp): + import torch.func # type: ignore + return torch.func.grad(f, argnums, has_aux=has_aux) + raise ValueError("`grad` is only supported for backends 'jax' and 'torch'") + + +def value_and_grad( + f: t.Callable, + argnums: t.Union[int, t.Tuple[int, ...]] = 0, + has_aux: bool = False, *, xp: t.Optional[t.Any] = None, + sign: float = 1.0, +) -> t.Callable[..., t.Tuple[Tree, Tree]]: + from phaser.utils.num import xp_is_torch, xp_is_jax + + if xp is None or xp_is_jax(xp): + import jax # type: ignore + f = jax.value_and_grad(f, argnums, has_aux=has_aux) + + @functools.wraps(f) + def wrapper(*args: t.Any, **kwargs: t.Any) -> t.Tuple[Tree, Tree]: + (value, grad) = f(*args, **kwargs) + # conjugate to get Wirtinger derivative, multiply by sign + grad = map(lambda arr: arr.conj() * sign, grad, is_leaf=lambda x: x is None) + return (value, grad) + + return wrapper + + if not xp_is_torch(xp): + raise ValueError("`grad` is only supported for backends 'jax' and 'torch'") + + import torch.func # type: ignore + f = torch.func.grad_and_value(f, argnums, has_aux=has_aux) + + @functools.wraps(f) + def wrapper(*args: t.Any, **kwargs: t.Any) -> t.Tuple[Tree, Tree]: + # flip order of return values + (grad, value) = f(*args, **kwargs) + # multiply by sign + grad = map(lambda arr: arr * sign, grad, is_leaf=lambda x: x is None) + return (value, grad) + + return wrapper + + +def leaves( + tree: Tree, + is_leaf: t.Optional[t.Callable[..., t.Any]] = None, +) -> t.List[Leaf]: + return flatten(tree, is_leaf)[0] + + +def structure( + tree: Tree, + is_leaf: t.Optional[t.Callable[..., t.Any]] = None, +) -> TreeSpec: + return flatten(tree, is_leaf)[1] + + +def leaves_with_path( + tree: Tree, + is_leaf: t.Optional[t.Callable[..., t.Any]] = None, +) -> t.List[t.Tuple[KeyPath, Leaf]]: + return flatten_with_path(tree, is_leaf)[0] + + +def zeros_like( + tree: Tree, dtype: DTypeLike = None, +) -> Tree: + from phaser.utils.num import get_array_module + xp = get_array_module(tree) + kwargs: t.Dict[str, t.Any] = {'dtype': dtype} if dtype is not None else {} + return map(lambda x: xp.zeros_like(x, **kwargs), tree) + + +def ones_like( + tree: Tree, dtype: DTypeLike = None, +) -> Tree: + from phaser.utils.num import get_array_module + xp = get_array_module(tree) + kwargs: t.Dict[str, t.Any] = {'dtype': dtype} if dtype is not None else {} + return map(lambda x: xp.ones_like(x, **kwargs), tree) + + +def full_like( + tree: Tree, fill_value: ArrayLike, + dtype: DTypeLike = None, +) -> Tree: + from phaser.utils.num import get_array_module + xp = get_array_module(tree) + kwargs: t.Dict[str, t.Any] = {'dtype': dtype} if dtype is not None else {} + return map(lambda x: xp.full_like(x, fill_value, **kwargs), tree) + + +def cast( + tree: Tree, dtype: t.Optional[DTypeLike], +) -> Tree: + if dtype is None: + return tree + return map(lambda x: x.astype(dtype), tree) + + +def clip( + tree: Tree, + min_value: t.Optional[ArrayLike] = None, + max_value: t.Optional[ArrayLike] = None, +) -> Tree: + from phaser.utils.num import get_array_module + xp = get_array_module(tree) + return map(lambda x: xp.clip(x, min_value, max_value), tree) + + +def conj( + tree: Tree +) -> Tree: + from phaser.utils.num import get_array_module + xp = get_array_module(tree) + return map(xp.conj, tree) + + +def update_moment(updates: Tree, moments: Tree, decay: float, order: int) -> Tree: + return map( + lambda g, t: ( + (1 - decay) * (g**order) + decay * t if g is not None else None + ), + updates, + moments, + is_leaf=lambda x: x is None, + ) + + +def update_moment_per_elem_norm(updates: Tree, moments: Tree, decay: float, order: int) -> Tree: + from phaser.utils.num import get_array_module, abs2 + xp = get_array_module(updates, moments) + + def orderth_norm(g): + if xp.isrealobj(g): + return g ** order + + half_order = order / 2 + # JAX generates different HLO for int and float `order` + if half_order.is_integer(): + half_order = int(half_order) + return abs2(g) ** half_order + + return map( + lambda g, t: ( + (1 - decay) * orderth_norm(g) + decay * t if g is not None else None + ), + updates, + moments, + is_leaf=lambda x: x is None, + ) + + +def bias_correction(moment: Tree, decay: float, count: t.Union[int, NDArray[numpy.integer]]) -> Tree: + bias_correction = t.cast(NDArray[numpy.floating], 1 - decay**count) + return map(lambda t: t / bias_correction.astype(t.dtype), moment) + + +def scale( + scalar: t.Union[float, numpy.floating, NDArray[numpy.floating]], + tree: Tree +) -> Tree: + return map(lambda x: scalar * x, tree) + + +def squared_norm( + tree: Tree +) -> NDArray[numpy.floating]: + return sum(map(lambda x: x**2, tree)) + + +@t.overload +@dataclass_transform(kw_only_default=False, frozen_default=False) +def tree_dataclass(cls: t.Type[T], /, *, + init: bool = True, kw_only: bool = False, frozen: bool = False, + static_fields: t.Sequence[str] = (), drop_fields: t.Sequence[str] = (), +) -> t.Type[T]: + ... + +@t.overload +@dataclass_transform(kw_only_default=False, frozen_default=False) +def tree_dataclass(*, + init: bool = True, kw_only: bool = False, frozen: bool = False, + static_fields: t.Sequence[str] = (), drop_fields: t.Sequence[str] = (), +) -> t.Callable[[t.Type[T]], t.Type[T]]: + ... + +def tree_dataclass(cls: t.Optional[t.Type[T]] = None, /, *, + init: bool = True, kw_only: bool = False, frozen: bool = False, + static_fields: t.Sequence[str] = (), drop_fields: t.Sequence[str] = (), +) -> t.Union[t.Type[T], t.Callable[[t.Type[T]], t.Type[T]]]: + if cls is None: + return lambda cls: tree_dataclass(cls, init=init, kw_only=kw_only, frozen=frozen, + static_fields=static_fields, drop_fields=drop_fields) + + cls = dataclasses.dataclass(init=init, kw_only=kw_only, frozen=frozen)(cls) + _register_dataclass(cls, static_fields=static_fields, drop_fields=drop_fields) + return cls + + +def _register_dataclass(cls: type, static_fields: t.Sequence[str], drop_fields: t.Sequence[str]): + fields = dataclasses.fields(cls) + field_names = {field.name for field in fields} + + if (extra := set(static_fields).difference(field_names)): + raise ValueError(f"Unknown field(s) passed to 'static_fields': {', '.join(map(repr, extra))}") + if (extra := set(drop_fields).difference(field_names)): + raise ValueError(f"Unknown field(s) passed to 'drop_fields': {', '.join(map(repr, extra))}") + + data_fields = tuple(field_names.difference(static_fields).difference(drop_fields)) + + def make_flatten_with_keys( + key_type: t.Callable[[str], Key] + ) -> t.Callable[[t.Any], t.Tuple[t.List[t.Tuple[Key, t.Any]], t.Hashable]]: + def flatten_with_keys(x: t.Any, /) -> tuple[list[tuple[Key, t.Any]], t.Hashable]: + meta = tuple(getattr(x, name) for name in static_fields) + trees = list((key_type(name), getattr(x, name)) for name in data_fields) + return trees, meta + + return flatten_with_keys + + def unflatten(meta: t.Hashable, trees: t.Iterable[t.Any], /) -> t.Any: + if not isinstance(meta, tuple): + raise TypeError + static_args = dict(zip(static_fields, meta, strict=True)) + data_args = dict(zip(data_fields, trees, strict=True)) + return cls(**static_args, **data_args) + + def flatten(x: t.Any, /) -> tuple[list[t.Any], t.Hashable]: + hashed = tuple(getattr(x, name) for name in static_fields) + trees = list(getattr(x, name) for name in data_fields) + return trees, hashed + + try: + from jax.tree_util import register_pytree_with_keys, GetAttrKey + except ImportError: + pass + else: + flatten_with_keys = make_flatten_with_keys(GetAttrKey) + register_pytree_with_keys(cls, flatten_with_keys, unflatten, flatten) + + try: + from torch.utils._pytree import register_pytree_node, GetAttrKey + except ImportError: + pass + else: + flatten_with_keys = make_flatten_with_keys(GetAttrKey) + register_pytree_node( + cls, flatten, lambda trees, meta: unflatten(meta, trees), + flatten_with_keys_fn=flatten_with_keys, # type: ignore + ) \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index b31e6d0..e744464 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -36,6 +36,7 @@ dependencies = [ "click~=8.1.0", "rich>=12.0.0,<15", "tifffile>=2023.8.25", + "optree>=0.13.0", "py-pane==0.11.3", "typing_extensions~=4.7", ] @@ -60,6 +61,9 @@ jax = [ "jax>=0.4.25,<0.8", "optax>=0.2.2", ] +torch = [ + "torch>=2.8.0", +] web = [ "Quart>=0.20.0", "backoff==2.2.1", @@ -91,9 +95,10 @@ include = ["phaser*"] [tool.pytest.ini_options] testpaths = ["tests"] markers = [ - "cuda: Run on CUDA backend", + "cupy: Run on Cupy backend", "jax: Run on jax backend", - "cpu: Run on CPU backend", + "torch: Run on PyTorch backend", + "numpy: Run on numpy backend", "slow: mark a test as slow", "expected_filename: Filename to load expected result from", diff --git a/tests/test_image.py b/tests/test_image.py index 1316902..a65b6be 100644 --- a/tests/test_image.py +++ b/tests/test_image.py @@ -5,11 +5,11 @@ from numpy.testing import assert_array_almost_equal import pytest -from .utils import with_backends, get_backend_module, check_array_equals_file +from .utils import with_backends, check_array_equals_file -from phaser.utils.num import to_numpy, Sampling +from phaser.utils.num import get_backend_module, BackendName, to_numpy, Sampling from phaser.utils.image import ( - affine_transform, _BoundaryMode + affine_transform, _InterpBoundaryMode ) @@ -21,7 +21,7 @@ def checkerboard() -> t.Tuple[NDArray[numpy.float32], Sampling]: return (checker, Sampling(checker.shape, sampling=(1.0, 1.0))) -@with_backends('cpu', 'jax', 'cuda') +@with_backends('numpy', 'jax', 'cupy', 'torch') @pytest.mark.parametrize(('mode', 'order', 'expected'), [ ('grid-constant', 0, [ 1.0, 1.0, 1.0, 1.0, -2.0, -2.0, -2.0, -1.0, -1.0, 0.0, 0.0, 0.0, 1.0, 1.0, 2.0, 2.0, 2.0, 1.0, 1.0, 1.0, 1.0]), ('nearest' , 0, [-2.0, -2.0, -2.0, -2.0, -2.0, -2.0, -2.0, -1.0, -1.0, 0.0, 0.0, 0.0, 1.0, 1.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0]), @@ -34,19 +34,19 @@ def checkerboard() -> t.Tuple[NDArray[numpy.float32], Sampling]: ('reflect' , 1, [-1.0, -1.4, -1.8, -2.0, -2.0, -2.0, -1.6, -1.2, -0.8, -0.4, -0.0, 0.4, 0.8, 1.2, 1.6, 2.0, 2.0, 2.0, 1.8, 1.4, 1.0]), ('grid-wrap' , 1, [ 1.0, 1.4, 1.8, 1.2, -0.4, -2.0, -1.6, -1.2, -0.8, -0.4, -0.0, 0.4, 0.8, 1.2, 1.6, 2.0, 0.4, -1.2, -1.8, -1.4, -1.0]), ]) -def test_affine_transform_1d(mode: str, order: int, expected: ArrayLike, backend: str): +def test_affine_transform_1d(mode: _InterpBoundaryMode, order: int, expected: ArrayLike, backend: BackendName): xp = get_backend_module(backend) in_ys = numpy.array([-2., -1., 0., 1., 2.]) # interpolates at coords `numpy.linspace(-2., 6., 21, endpoint=True)` assert_array_almost_equal(numpy.array(expected), to_numpy(affine_transform( - xp.array(in_ys), [0.4], -2.0, - mode=t.cast(_BoundaryMode, mode), order=order, cval=1.0, output_shape=(21,) - )), decimal=8) + xp.asarray(in_ys), [0.4], -2.0, + mode=mode, order=order, cval=1.0, output_shape=(21,) + )), decimal=6) -@with_backends('cpu', 'jax', 'cuda') +@with_backends('numpy', 'jax', 'cupy', 'torch') @pytest.mark.parametrize(('name', 'order', 'rotation', 'sampling'), [ ('identity', 1, 0.0, Sampling((16, 16), sampling=(1.0, 1.0))), ('pad', 0, 0.0, Sampling((32, 32), sampling=(1.0, 1.0))), @@ -59,15 +59,16 @@ def test_affine_transform_1d(mode: str, order: int, expected: ArrayLike, backend ]) @check_array_equals_file('resample_{name}_order{order}_rot{rotation:03.1f}.tiff', out_name='resample_{name}_order{order}_rot{rotation:03.1f}_{backend}.tiff') def test_resample( - backend: str, + backend: BackendName, checkerboard: t.Tuple[NDArray[numpy.float32], Sampling], name: str, order: int, rotation: float, sampling: Sampling, ): - if (name, order, rotation, backend) == ('upsample', 0, 0.0, 'jax'): - pytest.xfail("JAX rounding bug?") + if (name, order, rotation) == ('upsample', 0, 0.0) and backend in ('jax', 'torch'): + # TODO: check intermediate dtypes here? + pytest.xfail("Rounding bug?") xp = get_backend_module(backend) diff --git a/tests/test_num.py b/tests/test_num.py index 410ce68..b60756c 100644 --- a/tests/test_num.py +++ b/tests/test_num.py @@ -3,41 +3,50 @@ from numpy.testing import assert_array_almost_equal, assert_array_equal import pytest -from .utils import with_backends, get_backend_module, get_backend_scipy, mock_importerror +from .utils import with_backends # mock_importerror from phaser.utils.num import ( - get_array_module, get_scipy_module, + BackendName, + get_backend_module, to_real_dtype, to_complex_dtype, fft2, ifft2, abs2, to_numpy, as_array, - ufunc_outer + ufunc_outer, ) -@with_backends('cpu', 'jax', 'cuda') -def test_get_array_module(backend: str): +# TODO: this is broken, probably needs to run in a separate process +# the problem is we need to clear the _BackendLoader() cache to get +# proper behavior, but torch can only be imported once +""" +@with_backends('numpy', 'jax', 'cupy', 'torch') +def test_get_array_module(backend: BackendName, monkeypatch: pytest.MonkeyPatch): expected = get_backend_module(backend) mocked_imports = { - # on cpu, pretend cupy and jax don't exist - 'cpu': {'cupy', 'jax'}, + # on numpy, pretend cupy and jax don't exist + 'numpy': {'cupy', 'jax', 'torch'}, 'jax': {}, - 'cuda': {}, + 'cupy': {}, + 'torch': {}, }[backend] - assert get_array_module() is numpy + # re-load backend loader so the effect of mocking takes place + monkeypatch.setattr(phaser.utils.num, '_BACKEND_LOADER', _BackendLoader()) with mock_importerror(mocked_imports): + assert get_array_module() is numpy + assert get_array_module( numpy.array([1., 2., 3.]), - expected.array([1, 2, 3]), + expected.asarray([1, 2, 3]), None, numpy.array([1., 2., 3.]), ) is expected -@with_backends('cpu', 'jax', 'cuda') -def test_get_scipy_module(backend: str): +@with_backends('numpy', 'jax', 'cupy') +def test_get_scipy_module(backend: BackendName, monkeypatch: pytest.MonkeyPatch): import scipy xp = get_backend_module(backend) @@ -45,20 +54,24 @@ def test_get_scipy_module(backend: str): mocked_imports = { # on cpu, pretend cupyx doesn't exist - 'cpu': {'cupyx'}, + 'numpy': {'cupyx'}, 'jax': {}, - 'cuda': {}, + 'cupy': {}, }[backend] - assert get_scipy_module() is scipy + # re-load backend loader so the effect of mocking takes place + # monkeypatch.setattr(phaser.utils.num, '_BACKEND_LOADER', _BackendLoader()) with mock_importerror(mocked_imports): + assert get_scipy_module() is scipy + assert get_scipy_module( numpy.array([1., 2., 3.]), - xp.array([1, 2, 3]), + xp.asarray([1, 2, 3]), None, numpy.array([1., 2., 3.]), ) is expected +""" @pytest.mark.parametrize(('input', 'expected'), [ @@ -99,12 +112,12 @@ def test_to_complex_dtype_invalid(): to_complex_dtype(numpy.int_) -@with_backends('cpu', 'jax', 'cuda') -def test_fft2(backend: str): +@with_backends('numpy', 'jax', 'cupy', 'torch') +def test_fft2(backend: BackendName): xp = get_backend_module(backend) # point input, f = 5 delta(x) delta(y) - a = xp.pad(xp.array([[5.]], dtype=numpy.float32), ((2, 2), (2, 2))) + a = xp.asarray(numpy.pad([[5.]], (2, 2)).astype(numpy.float32)) # even input, so output is real # delta function input, so output is constant @@ -122,16 +135,16 @@ def test_fft2(backend: str): # zero frequency is cornered assert_array_almost_equal( to_numpy(fft2(a)), - numpy.pad([[5.+5.j]], ((0, 4), (0, 4))).astype(numpy.complex64) + numpy.pad([[5.+5.j]], (0, 4)).astype(numpy.complex64) ) -@with_backends('cpu', 'jax', 'cuda') -def test_ifft2(backend: str): +@with_backends('numpy', 'jax', 'cupy', 'torch') +def test_ifft2(backend: BackendName): xp = get_backend_module(backend) # point input, F = delta(k_x) delta(k_y) - a = xp.pad(xp.array([[5.]], dtype=numpy.float32), ((0, 4), (0, 4))) + a = xp.asarray(numpy.pad([[5.]], (0, 4)).astype(numpy.float32)) # even input, so output is real # delta function input, so output is constant @@ -155,30 +168,30 @@ def test_ifft2(backend: str): ) -@with_backends('cpu', 'jax', 'cuda') -def test_abs2(backend: str): +@with_backends('numpy', 'jax', 'cupy', 'torch') +def test_abs2(backend: BackendName): xp = get_backend_module(backend) - if backend == 'cpu': + if backend == 'numpy': assert_array_almost_equal(abs2([1.+1.j, 1.-1.j]), numpy.array([2., 2.])) assert_array_almost_equal( - to_numpy(abs2(xp.array([1.+1.j, 1.-1.j]))), + to_numpy(abs2(xp.asarray([1.+1.j, 1.-1.j]))), numpy.array([2., 2.]), ) assert_array_almost_equal( - to_numpy(abs2(xp.array([1., -2., 5.], dtype=numpy.float32))), + to_numpy(abs2(xp.asarray([1., -2., 5.], dtype=numpy.float32))), numpy.array([1, 4., 25.], dtype=numpy.float32), decimal=5 # this is pretty poor performance ) -@with_backends('cpu', 'jax', 'cuda') -def test_to_numpy(backend: str): +@with_backends('numpy', 'jax', 'cupy', 'torch') +def test_to_numpy(backend: BackendName): xp = get_backend_module(backend) - arr = xp.array([1., 2., 3., 4.]) + arr = xp.asarray([1., 2., 3., 4.]) assert_array_almost_equal( to_numpy(arr), @@ -186,11 +199,11 @@ def test_to_numpy(backend: str): ) -@with_backends('cpu', 'jax', 'cuda') -def test_to_array(backend: str): +@with_backends('numpy', 'jax', 'cupy', 'torch') +def test_to_array(backend: BackendName): xp = get_backend_module(backend) - arr = xp.array([1., 2., 3., 4.]) + arr = xp.asarray([1., 2., 3., 4.]) assert as_array(arr) is arr arr = as_array([1., 2., 3., 4.]) @@ -201,8 +214,8 @@ def test_to_array(backend: str): ) -@with_backends('cpu', 'jax', 'cuda') -def test_ufunc_outer(backend: str): +@with_backends('numpy', 'jax', 'cupy') +def test_ufunc_outer(backend: BackendName): xp = get_backend_module(backend) xs = numpy.arange(12).reshape(4, 3) diff --git a/tests/test_object.py b/tests/test_object.py index 0cca451..f07778c 100644 --- a/tests/test_object.py +++ b/tests/test_object.py @@ -3,19 +3,19 @@ from numpy.testing import assert_array_almost_equal, assert_array_equal import pytest -from .utils import with_backends, get_backend_module, check_array_equals_file +from .utils import with_backends, check_array_equals_file -from phaser.utils.num import to_numpy, abs2 +from phaser.utils.num import get_backend_module, BackendName, to_numpy, abs2 from phaser.utils.object import random_phase_object, ObjectSampling -@with_backends('cpu', 'jax', 'cuda') -def test_random_phase_object(backend: str): +@with_backends('numpy', 'jax', 'cupy', 'torch') +def test_random_phase_object(backend: BackendName): xp = get_backend_module(backend) obj = random_phase_object((8, 8), 1e-4, seed=2620771887, dtype=numpy.complex64, xp=xp) - assert obj.dtype == numpy.complex64 + assert obj.dtype == xp.complex64 assert_array_almost_equal(to_numpy(obj), numpy.array([ [1.-1.5272086e-05j, 1.+1.0225522e-04j, 1.-8.0865902e-05j, 1.-1.7328106e-05j, 1.-1.2898073e-04j, 1.+2.2908196e-05j, 1.+8.1173976e-06j, 1.+2.1377344e-05j], [1.+7.4363430e-05j, 1.-9.1323782e-05j, 1.-2.0272582e-04j, 1.-4.8823396e-05j, 1.+9.3021641e-05j, 1.+1.0718761e-04j, 1.+5.0221975e-06j, 1.-5.5743083e-05j], @@ -144,10 +144,10 @@ def test_object_slicing(): ) -@with_backends('cpu', 'jax', 'cuda') +@with_backends('numpy', 'jax', 'cupy', 'torch') @pytest.mark.parametrize('dtype', ('float', 'complex', 'uint8')) @check_array_equals_file('object_get_views_{dtype}.npy', out_name='object_get_views_{dtype}_{backend}.npy') -def test_get_cutouts(backend: str, dtype: str) -> numpy.ndarray: +def test_get_cutouts(backend: BackendName, dtype: str) -> numpy.ndarray: samp = ObjectSampling((200, 200), (1.0, 1.0)) cutout_shape = (64, 64) @@ -174,25 +174,25 @@ def test_get_cutouts(backend: str, dtype: str) -> numpy.ndarray: return to_numpy(samp.cutout(obj, pos, cutout_shape).get()) -@with_backends('cpu', 'jax', 'cuda') +@with_backends('numpy', 'jax', 'cupy', 'torch') @pytest.mark.parametrize('dtype', ('float', 'complex', 'uint8')) @check_array_equals_file('object_add_views_{dtype}.tiff', out_name='object_add_views_{dtype}_{backend}.tiff', decimal=5) -def test_add_view_at_pos(backend: str, dtype: str) -> numpy.ndarray: +def test_add_view_at_pos(backend: BackendName, dtype: str) -> numpy.ndarray: samp = ObjectSampling((200, 200), (1.0, 1.0)) cutout_shape = (64, 64) xp = get_backend_module(backend) if dtype == 'uint8': - obj = xp.zeros(samp.shape, dtype=numpy.uint8) + obj = xp.zeros(tuple(samp.shape), dtype=numpy.uint8) cutouts = xp.full((30, *cutout_shape), 15, dtype=numpy.uint8) mag = 15 elif dtype == 'float': - obj = xp.zeros(samp.shape, dtype=numpy.float32) + obj = xp.zeros(tuple(samp.shape), dtype=numpy.float32) cutouts = xp.full((30, *cutout_shape), 10., dtype=numpy.float32) mag = 10. elif dtype == 'complex': - obj = xp.zeros(samp.shape, dtype=numpy.complex64) + obj = xp.zeros(tuple(samp.shape), dtype=numpy.complex64) phases = xp.array([ 4.30015617, 5.15367214, 6.13496658, 4.9268498 , 3.60960355, 0.42680191, 5.12820671, 1.3260991 , 2.2065813 , 5.1417133 , @@ -247,13 +247,13 @@ def test_add_view_at_pos(backend: str, dtype: str) -> numpy.ndarray: return to_numpy(obj) -@with_backends('cpu', 'jax', 'cuda') -def test_cutout_2d(backend: str): +@with_backends('numpy', 'jax', 'cupy', 'torch') +def test_cutout_2d(backend: BackendName): samp = ObjectSampling((200, 200), (1.0, 1.0)) cutout_shape = (64, 64) xp = get_backend_module(backend) - obj = xp.zeros(samp.shape, dtype=numpy.float32) + obj = xp.zeros(tuple(samp.shape), dtype=numpy.float32) cutouts = samp.cutout(obj, [[0., 0.], [2., 2.], [4., 4.], [-2., -2.]], cutout_shape) assert cutouts.get().shape == (4, *cutout_shape) @@ -263,8 +263,8 @@ def test_cutout_2d(backend: str): cutouts.set(cutouts.get()) -@with_backends('cpu', 'jax', 'cuda') -def test_cutout_multidim(backend: str): +@with_backends('numpy', 'jax', 'cupy', 'torch') +def test_cutout_multidim(backend: BackendName): samp = ObjectSampling((200, 200), (1.0, 1.0)) cutout_shape = (80, 100) @@ -296,25 +296,25 @@ def test_cutout_multidim(backend: str): cutouts.set(cutouts.get()) -@with_backends('cpu', 'jax', 'cuda') +@with_backends('numpy', 'jax', 'cupy', 'torch') @pytest.mark.parametrize('dtype', ('float', 'complex', 'uint8')) @check_array_equals_file('object_set_views_{dtype}.tiff', out_name='object_set_views_{dtype}_{backend}.tiff') -def test_set_view_at_pos(backend: str, dtype: str) -> numpy.ndarray: +def test_set_view_at_pos(backend: BackendName, dtype: str) -> numpy.ndarray: samp = ObjectSampling((200, 200), (1.0, 1.0)) cutout_shape = (64, 64) xp = get_backend_module(backend) if dtype == 'uint8': - obj = xp.zeros(samp.shape, dtype=numpy.uint8) + obj = xp.zeros(tuple(samp.shape), dtype=numpy.uint8) cutouts = xp.full((30, *cutout_shape), 15, dtype=numpy.uint8) mag = 15 elif dtype == 'float': - obj = xp.zeros(samp.shape, dtype=numpy.float32) + obj = xp.zeros(tuple(samp.shape), dtype=numpy.float32) cutouts = xp.full((30, *cutout_shape), 10., dtype=numpy.float32) mag = 10. elif dtype == 'complex': - obj = xp.zeros(samp.shape, dtype=numpy.complex64) + obj = xp.zeros(tuple(samp.shape), dtype=numpy.complex64) cutouts = xp.full((30, *cutout_shape), 10. + 15.j, dtype=numpy.complex64) mag = abs2(10. + 15.j) else: diff --git a/tests/test_optics.py b/tests/test_optics.py index caeb980..cc85354 100644 --- a/tests/test_optics.py +++ b/tests/test_optics.py @@ -1,26 +1,26 @@ import numpy -from .utils import with_backends, get_backend_module, check_array_equals_file +from .utils import with_backends, check_array_equals_file -from phaser.utils.num import Sampling, to_numpy, fft2, ifft2 +from phaser.utils.num import get_backend_module, BackendName, Sampling, to_numpy, fft2, ifft2 from phaser.utils.optics import make_focused_probe, fresnel_propagator -@with_backends('cpu', 'jax', 'cuda') +@with_backends('numpy', 'jax', 'cupy', 'torch') @check_array_equals_file('probe_10mrad_focused_mag.tiff', decimal=5) -def test_focused_probe(backend: str) -> numpy.ndarray: +def test_focused_probe(backend: BackendName) -> numpy.ndarray: xp = get_backend_module(backend) sampling = Sampling((1024, 1024), extent=(25., 25.)) probe = make_focused_probe(*sampling.recip_grid(dtype=numpy.float32, xp=xp), wavelength=0.0251, aperture=10.) - return to_numpy(numpy.abs(probe)) + return to_numpy(xp.abs(probe)) -@with_backends('cpu', 'jax', 'cuda') +@with_backends('numpy', 'jax', 'cupy', 'torch') @check_array_equals_file('probe_10mrad_20over.tiff', decimal=5) -def test_defocused_probe(backend: str) -> numpy.ndarray: +def test_defocused_probe(backend: BackendName) -> numpy.ndarray: xp = get_backend_module(backend) sampling = Sampling((1024, 1024), extent=(25., 25.)) @@ -29,9 +29,9 @@ def test_defocused_probe(backend: str) -> numpy.ndarray: return to_numpy(probe) -@with_backends('cpu', 'jax', 'cuda') -@check_array_equals_file('fresnel_200kV_1nm_phase.tiff', decimal=8) -def test_fresnel_propagator(backend: str) -> numpy.ndarray: +@with_backends('numpy', 'jax', 'cupy', 'torch') +@check_array_equals_file('fresnel_200kV_1nm_phase.tiff', decimal=5) +def test_fresnel_propagator(backend: BackendName) -> numpy.ndarray: xp = get_backend_module(backend) sampling = Sampling((1024, 1024), extent=(100., 100.)) @@ -41,9 +41,9 @@ def test_fresnel_propagator(backend: str) -> numpy.ndarray: )) -@with_backends('cpu', 'jax', 'cuda') +@with_backends('numpy', 'jax', 'cupy', 'torch') @check_array_equals_file('probe_10mrad_focused_mag.tiff', decimal=5) -def test_propagator_sign(backend: str) -> numpy.ndarray: +def test_propagator_sign(backend: BackendName) -> numpy.ndarray: xp = get_backend_module(backend) sampling = Sampling((1024, 1024), extent=(25., 25.)) @@ -55,4 +55,4 @@ def test_propagator_sign(backend: str) -> numpy.ndarray: prop = fresnel_propagator(ky, kx, wavelength=0.0251, delta_z=200.) probe = ifft2(fft2(probe) * prop) - return to_numpy(numpy.abs(probe)) \ No newline at end of file + return to_numpy(xp.abs(probe)) diff --git a/tests/utils.py b/tests/utils.py index fcb8d08..2cd7bb8 100644 --- a/tests/utils.py +++ b/tests/utils.py @@ -137,42 +137,6 @@ def wrapper(*args, file_contents_array: numpy.ndarray, **kwargs): return decorator -def get_backend_module(backend: str): - """Get the module `xp` associated with a compute backend""" - backend = backend.lower() - if backend not in ('cuda', 'jax', 'cpu'): - raise ValueError(f"Unknown backend '{backend}'") - - if not t.TYPE_CHECKING: - if backend == 'jax': - import jax.numpy - return jax.numpy - if backend == 'cuda': - import cupy - return cupy - - import numpy - return numpy - - -def get_backend_scipy(backend: str): - """Get the scipy module associated with a compute backend""" - backend = backend.lower() - if backend not in ('cuda', 'jax', 'cpu'): - raise ValueError(f"Unknown backend '{backend}'") - - if not t.TYPE_CHECKING: - if backend == 'jax': - import jax.scipy - return jax.scipy - if backend == 'cuda': - import cupyx.scipy - return cupyx.scipy - - import scipy - return scipy - - _import = builtins.__import__ From 45b571339902f7ae47fd3210f77a35bd584651cc Mon Sep 17 00:00:00 2001 From: Colin Gilgenbach Date: Fri, 5 Sep 2025 14:54:14 -0400 Subject: [PATCH 03/19] Preliminary Dm4 support (#32) * Fix drop_nan_patterns with tilt * initial setup * dm4 data at least loading, may need flips, etc * add flips after gatan read-in will need to move if in metadat * turned off memmap on loading for improved performance * fixed flipped (done by reader) * adding an offset hook * fixed an error * including a transpose * need to keep the mask * issue fix with scan shape * reading in the e- calibrations and appying to patterns * line cleanup * cleanup --------- Co-authored-by: jmlebeau@gmail.com Co-authored-by: subangstrom --- phaser/execute.py | 1 + phaser/hooks/__init__.py | 19 +++ phaser/hooks/io/gatan.py | 97 +++++++++++ phaser/hooks/preprocessing.py | 20 ++- phaser/io/gatan.py | 297 ++++++++++++++++++++++++++++++++++ 5 files changed, 433 insertions(+), 1 deletion(-) create mode 100644 phaser/hooks/io/gatan.py create mode 100644 phaser/io/gatan.py diff --git a/phaser/execute.py b/phaser/execute.py index 00d8b9b..4ffb24d 100644 --- a/phaser/execute.py +++ b/phaser/execute.py @@ -333,6 +333,7 @@ def initialize_reconstruction( obj.data = obj.data.astype(cdtype) else: logging.info("Initializing object...") + obj = (plan.init.object or pane.from_data('random', ObjectHook))({ 'sampling': obj_sampling, 'slices': plan.slices, 'wavelength': wavelength, 'dtype': dtype, 'seed': seed, 'xp': xp diff --git a/phaser/hooks/__init__.py b/phaser/hooks/__init__.py index e8d38a5..c326aa0 100644 --- a/phaser/hooks/__init__.py +++ b/phaser/hooks/__init__.py @@ -35,6 +35,13 @@ class LoadEmpadProps(Dataclass): adu: t.Optional[float] = None det_flips: t.Optional[t.Tuple[bool, bool, bool]] = None +class LoadGatanProps(Dataclass): + path: Path + + diff_step: t.Optional[float] = None + kv: t.Optional[float] = None + adu: t.Optional[float] = None + class LoadManualProps(Dataclass, kw_only=True): path: Path @@ -65,10 +72,13 @@ class LoadManualProps(Dataclass, kw_only=True): class RawDataHook(Hook[None, RawData]): known = { 'empad': ('phaser.hooks.io.empad:load_empad', LoadEmpadProps), + 'gatan': ('phaser.hooks.io.gatan:load_gatan', LoadGatanProps), 'manual': ('phaser.hooks.io.manual:load_manual', LoadManualProps), } + + class ProbeHookArgs(t.TypedDict): sampling: 'Sampling' wavelength: float @@ -163,6 +173,13 @@ class PostInitArgs(t.TypedDict): class ScaleProps(Dataclass): scale: float +class OffsetProps(Dataclass): + offset: float + +class BinProps(Dataclass): + bin: int + + class CropDataProps(Dataclass): crop: t.Tuple[ @@ -189,6 +206,8 @@ class PostLoadHook(Hook[RawData, RawData]): 'crop_data': ('phaser.hooks.preprocessing:crop_data', CropDataProps), 'poisson': ('phaser.hooks.preprocessing:add_poisson_noise', PoissonProps), 'scale': ('phaser.hooks.preprocessing:scale_patterns', ScaleProps), + 'offset': ('phaser.hooks.preprocessing:offset_patterns', OffsetProps), + 'bin': ('phaser.hooks.preprocessing:bin_patterns', BinProps), } diff --git a/phaser/hooks/io/gatan.py b/phaser/hooks/io/gatan.py new file mode 100644 index 0000000..76e460c --- /dev/null +++ b/phaser/hooks/io/gatan.py @@ -0,0 +1,97 @@ + +from pathlib import Path +import warnings +import logging +import typing as t + +import numpy + +from phaser.utils.num import Sampling +from phaser.utils.physics import Electron +from phaser.io.gatan import load_4d, GatanMetadata +from phaser.types import cast_length +from rsciio import digitalmicrograph as dm +from .. import LoadGatanProps, RawData + + +def load_gatan(args: None, props: LoadGatanProps) -> RawData: + logger = logging.getLogger(__name__) + + path = Path(props.path).expanduser() + + # file = dm.file_reader(path, lazy=True) + + # if path.suffix.lower() == '.json': # load as metadata + # pass # stub for now, not implemented + + # else: # grab from dm4 file + metadata = GatanMetadata.from_dm4(path) + + assert metadata.path is not None + + # path = metadata.path / metadata.gatan_filename + + voltage = props.kv * 1e3 if props.kv is not None else metadata.voltage + diff_step = props.diff_step or metadata.diff_step + scan_shape = metadata.scan_shape + + + print(f"Scan shape: {scan_shape}, Step size: {metadata.scan_step}") + adu = 1 #props.adu or meta.adu + needs_scale = not metadata.is_simulated() + + probe_hook = { + 'type': 'focused', + 'conv_angle': metadata.conv_angle, + 'defocus': metadata.defocus * 1e10 if metadata.defocus is not None else None, + } + # TODO: handle explicit scan_positions here + scan_hook = { + 'type': 'raster', + # [x, y] -> [y, x] + 'shape': tuple(reversed(metadata.scan_shape)), + 'step_size': tuple(s*1e10 for s in reversed(metadata.scan_step)), # m to A + 'affine': metadata.scan_correction[::-1, ::-1] if metadata.scan_correction is not None else None, + } + + + + if metadata.voltage is None: + raise ValueError("'kv'/'voltage' must be specified by metadata or passed to 'raw_data'") + if metadata.diff_step is None: + raise ValueError("'diff_step' must be specified by metadata or passed to 'raw_data'") + + wavelength = Electron(voltage).wavelength + + if not path.exists(): + raise ValueError(f"Couldn't find gatan data at path {path}") + + patterns = numpy.fft.ifftshift(load_4d(path, scan_shape, memmap=False), axes=(-1, -2)).astype(numpy.float32) + + if needs_scale: + if metadata.e_scaling is None: + warnings.warn("ADU not supplied for experimental dataset. This is not recommended.") + else: + logger.info(f"Offsetting patterns by {metadata.background_offset:.3e} and scaling by {metadata.e_scaling:.5e}") + patterns -= metadata.background_offset + patterns *= metadata.e_scaling + + # patterns = numpy.transpose(patterns, (1, 0, 2, 3)) + + a = float(wavelength / (diff_step * 1e-3)) # recip. pixel size -> 1 / real space extent + + sampling = Sampling(cast_length(patterns.shape[-2:], 2), extent=(a, a)) + + mask = numpy.zeros_like(patterns, shape=patterns.shape[-2:]).astype(numpy.float32) + + mask[2:-2, 2:-2] = 1. + + return { + 'patterns': patterns, + 'mask': numpy.fft.ifftshift(mask, axes=(-1, -2)).astype(numpy.float32), + 'sampling': sampling, + 'wavelength': wavelength, + 'probe_hook': probe_hook, + 'scan_hook': scan_hook, + 'seed': None, + } \ No newline at end of file diff --git a/phaser/hooks/preprocessing.py b/phaser/hooks/preprocessing.py index 20bd6fe..5fc6dd3 100644 --- a/phaser/hooks/preprocessing.py +++ b/phaser/hooks/preprocessing.py @@ -10,7 +10,7 @@ from phaser.utils.misc import create_rng, create_sparse_groupings from phaser.utils.image import affine_transform from phaser.state import Patterns, ReconsState -from . import RawData, PostInitArgs, PoissonProps, ScaleProps, DropNanProps, CropDataProps +from . import RawData, PostInitArgs, PoissonProps, ScaleProps, DropNanProps, CropDataProps, OffsetProps, BinProps logger = logging.getLogger(__name__) @@ -38,6 +38,24 @@ def scale_patterns(raw_data: RawData, props: ScaleProps) -> RawData: raw_data['patterns'] *= props.scale return raw_data +def offset_patterns(raw_data: RawData, props: OffsetProps) -> RawData: + raw_data['patterns'] -= props.offset + return raw_data + +def bin_patterns(raw_data: RawData, props: BinProps) -> RawData: + xp = get_array_module(raw_data['patterns']) + bin_factor = props.bin + patterns = raw_data['patterns'] + Ny, Nx = patterns.shape[-2:] + patterns = patterns.reshape(*patterns.shape[:-2], + Ny // bin_factor, bin_factor, + Nx // bin_factor, bin_factor).sum(axis=(-1, -3)) + + print(patterns.shape) # (120, 45, 128, 128) + + raw_data['patterns'] = patterns + return raw_data + def add_poisson_noise(raw_data: RawData, props: PoissonProps) -> RawData: xp = get_array_module(raw_data['patterns']) diff --git a/phaser/io/gatan.py b/phaser/io/gatan.py new file mode 100644 index 0000000..033a9c3 --- /dev/null +++ b/phaser/io/gatan.py @@ -0,0 +1,297 @@ + +from pathlib import Path +import re +import typing as t + +import numpy +import pane +import pane.io +from numpy.typing import NDArray +from pane.annotations import shape +from pane.convert import IntoConverterHandlers, from_data +from typing_extensions import Self +from rsciio import digitalmicrograph as dm + +from numpy import flip +import numpy as np + + +from phaser.utils.physics import Electron + +from phaser.types import IsVersion + + +def _get_dir(f: pane.io.FileOrPath) -> t.Optional[Path]: + if isinstance(f, (str, Path)): + return Path(f).parent + + name = getattr(f, 'name', None) + if name in (None, '', ''): + return None + path = Path(name) + return path.parent if path.exists() else None + + +class GatanMetadata(pane.PaneBase, frozen=False, kw_only=True, allow_extra=True): + file_type: t.Literal['gatan_file'] = 'gatan_file' + + @classmethod + def from_dm4(cls, f: pane.io.FileOrPath, *, + custom: t.Optional[IntoConverterHandlers] = None) -> Self: + + path = _get_dir(f) + + file = dm.file_reader(f, lazy=True) + + + + metadata = {'file_type':'gatan_file', + 'name':str(f.stem), + 'gatan_filename':str(f.stem), + 'raw':str(f.suffix.removeprefix('.')), + 'orig_path':str(f.parent.absolute()), + 'author': None, + 'voltage': 0.0, + 'conv_angle': 0.0, + 'defocus': 1.0e-10, + 'camera_length': 0.0, + 'diff_step': 0.0, + 'e-scaling': 1.0, + 'background_offset': 0.0, + 'scan_rotation': 0.0, + 'detector_shape': [0, 0], + 'scan_shape': [0, 0], + 'scan_fov': [0, 0], + 'scan_step': [0, 0], + 'exposure_time': 0.0, + 'post_exposure_time': 0.0, + 'beam_current': 0.0, + 'scan_correction': None, + 'diff_transpose': [False, False, False], #diagonal, horizontal, vertical + 'scan_transpose': [False, False, False], #diagonal, horizontal, vertical + 'notes': None, + 'crop': None + } + + gatan_metadata = file[0]['original_metadata']['ImageList']['TagGroup0']['ImageTags'] # first image metadata + imagedata_metadata = file[0]['original_metadata']['ImageList']['TagGroup0']['ImageData'] + + e_calibration = imagedata_metadata['Calibrations']['Brightness'] + metadata['e_scaling'] = e_calibration['Scale'] + metadata['background_offset'] = e_calibration['Origin'] + + calibrations = list(imagedata_metadata['Calibrations']['Dimension'].values()) + + diff_calibrations = calibrations[0:2] + real_calibrations = calibrations[2:4] + data_dim = list(imagedata_metadata['Dimensions'].values()) + + cam_acq = gatan_metadata['Acquisition'] + microscope = gatan_metadata['Microscope Info'] + + metadata['diff_transpose'] = [bool(s) for s in cam_acq['Device']['Configuration']['Transpose'].values()] + + SI_info = gatan_metadata['SI'] + + metadata['time'] = SI_info['Acquisition']['Date'] + metadata['scan_shape'] = [int(s) for s in SI_info['Acquisition']['Spatial Sampling'].values()] + metadata['exposure_time'] = SI_info['Acquisition']['Pixel time (s)'] + + metadata['camera_length'] = microscope['STEM Camera Length'] + metadata['voltage'] = microscope['Voltage'] + + # diffraction step + + units = diff_calibrations[0]['Units'] + + diff_scale = 1 + + wavelength = float(Electron(metadata['voltage']).wavelength*1e-10) + + + if units == '1/nm': + diff_scale = 1e9 + elif units == '1/um': + diff_scale = 1e6 + elif units == '1/pm': + diff_scale = 1e12 + + metadata['diff_step'] = diff_calibrations[0]['Scale']*diff_scale*wavelength*1e3 # to mrad + + scan_steps = [real_calibrations[0]['Scale'], real_calibrations[1]['Scale']] + + # Need to implement error handling, not sure what dm might record as units + units = real_calibrations[0]['Units'] + scan_scale = 1 + + + if units == 'nm': + scan_scale = float(1e-9) + elif units == 'um': + scan_scale = 1e-6 + elif units == 'pm': + scan_scale = float(1e-12) + + + + metadata['scan_step'] = [scan_scale*scan_step for scan_step in scan_steps] + + + metadata['detector_shape'] = [data_dim[1], data_dim[0]] + metadata['scan_shape'] = [data_dim[2], data_dim[3]] + metadata['scan_fov'] = [metadata['scan_shape'][0]*metadata['scan_step'][0], metadata['scan_shape'][1]*metadata['scan_step'][1]] + + self = from_data(metadata, cls, custom=custom) + + object.__setattr__(self, 'path', path) + return self + + + def __post_init__(self): + object.__setattr__(self, 'path', None) + + name: str + """Experiment name""" + + version: t.Annotated[str, IsVersion(exactly="1.0")] = "1.0" + """Gatan Metadata version""" + + gatan_filename: str + # """Gatan 4DSTEM data filename, relative to metadata location.""" + + path: t.Optional[Path] = pane.field(init=False, exclude=True) + """Current path to experimental folder (based on metadata loading)""" + + voltage: float + """Accelerating voltage (V).""" + conv_angle: t.Optional[float] = None + """Convergence angle (mrad).""" + defocus: t.Optional[float] = None + """Defocus (m). Positive is overfocus.""" + camera_length: t.Optional[float] = None + """Camera length (m).""" + diff_step: t.Optional[float] = None + """Diffraction pixel size (mrad/px).""" + + scan_rotation: float + """Scan rotation (degrees).""" + scan_shape: t.Tuple[int, int] + """Scan shape (x, y).""" + scan_fov: t.Tuple[float, float] + """Scan field of view (m).""" + scan_step: t.Tuple[float, float] + """Scan step (m/px).""" + + exposure_time: t.Optional[float] = None + """Pixel exposure time (s).""" + # post_exposure_time: t.Optional[float] = None + # """Pixel post-exposure time (s).""" + beam_current: t.Optional[float] = None + """Approx. beam current (A).""" + e_scaling:t.Optional[float] = 1.0 + + """Single-electron scaling ).""" + background_offset:t.Optional[float] = 0.0 + + scan_correction: t.Optional[t.Annotated[NDArray[numpy.floating], shape((2, 2))]] = None + """Scan correction matrix, [x', y'] = scan_correction @ [x, y]""" + + scan_positions: t.Optional[t.List[t.Tuple[float, float]]] = None + """ + Scan position override (m). + Should be specified as a 1d list of (x, y) positions, in scan order. `scan_correction` is applied to these positions (if present). + """ + + notes: t.Optional[str] = None + + crop: t.Optional[t.Tuple[int, int, int, int]] = None + """Region scan is valid within, (min_y, max_y, min_x, max_x). Python-style slicing.""" + + def is_simulated(self) -> bool: + return self.file_type == "pyMultislicer_metadata" + + +def load_4d(path: t.Union[str, Path], scan_shape: t.Optional[t.Tuple[int, int]] = None, + memmap: bool = False) -> NDArray[numpy.float32]: + """ + Load a gatan dm4 dataset into memory. + + The file is loaded so the dimensions are: (scan_y, scan_x, k_y, k_x), with y decreasing downwards. + + Patterns are not fftshifted or normalized upon loading. + + # Parameters + + - `path`: Path to file to load + - `scan_shape`: Scan shape of dataset. Will be inferred from the filename if not specified. + - `memmap`: If specified, memmap the file as opposed to loading it eagerly. + + Returns a numpy array (or `numpy.memmap`) + """ + path = Path(path) + + n_y, n_x = scan_shape + + if memmap: + a = dm.file_reader(path, lazy=True)[0]['data'] + else: + a = dm.file_reader(path, lazy=False)[0]['data'] + + if a.shape[0]*a.shape[1] != n_x * n_y: + raise ValueError(f"Got {a.shape[0]*a.shape[1]} probes, expected {n_x}x{n_y} = {n_x * n_y}.") + + return a.astype(numpy.float32) + + +@t.overload +def save_4d(arr: NDArray[numpy.float32], *, path: t.Union[str, Path], folder: None = None, name: None = None): + ... + +@t.overload +def save_4d(arr: NDArray[numpy.float32], *, path: None = None, folder: t.Union[str, Path], name: t.Optional[str] = None): + ... + +def save_4d(arr: NDArray[numpy.float32], *, path: t.Union[str, Path, None] = None, + folder: t.Union[str, Path, None] = None, name: t.Optional[str] = None): #): + """ + Save a raw EMPAD dataset. + + Either `path` or `folder` can be specified. If `folder` is specified, + `name` will be used as a format string to determine the filename. + `path` and `folder` cannot be specified simultaneously. + + Patterns are not fftshifted or normalized upon saving. + + Parameters: + - `arr`: Array to save + - `path`: Path to save dataset to. + - `folder`: Folder to save dataset inside. + - `name`: When `folder` is specified, format to use to determine filename. Defaults to `"scan_x{x}_y{y}.raw"`. + Will be formatted using the scan shape `{'x': n_x, 'y': n_y}`. + """ + + try: + assert len(arr.shape) == 4 + assert arr.shape[2:] == (128, 128) + except AssertionError as e: + raise ValueError("Invalid data format") from e + + if folder is not None: + if path is not None: + raise ValueError("Cannot specify both 'path' and 'folder'") + + n_y, n_x = arr.shape[:2] + path = Path(folder) / (name or "scan_x{x}_y{y}.raw").format(x=n_x, y=n_y) + elif path is not None: + path = Path(path) + else: + raise ValueError("Must specify either 'path' or 'folder'") + + out_shape = list(arr.shape) + out_shape[2] = 130 # dead rows + + out = numpy.zeros(out_shape, dtype=numpy.float32) + out[..., 127::-1, :] = arr.astype(numpy.float32) + + with open(path, 'wb') as f: + out.tofile(f) From c562aa981a7931d1d5bcd3b3f197f1456986c61f Mon Sep 17 00:00:00 2001 From: Colin Gilgenbach Date: Mon, 25 Aug 2025 13:46:16 -0400 Subject: [PATCH 04/19] First pass at dependencies --- phaser/hooks/_dependencies.py | 46 +++++++++++++++++++++++++++++++++++ phaser/hooks/hook.py | 23 +++++++++++++----- 2 files changed, 63 insertions(+), 6 deletions(-) create mode 100644 phaser/hooks/_dependencies.py diff --git a/phaser/hooks/_dependencies.py b/phaser/hooks/_dependencies.py new file mode 100644 index 0000000..2793c61 --- /dev/null +++ b/phaser/hooks/_dependencies.py @@ -0,0 +1,46 @@ +import abc +import importlib +import typing as t + +class Dependency(abc.ABC): + @abc.abstractmethod + def check(self): + ... + + @abc.abstractmethod + def install_instructions(self) -> str: + ... + + +class ImportDependency(Dependency): + def __init__(self, ref: str, install: str) -> None: + self.ref = ref + self.install = install + + def check(self): + importlib.import_module(self.ref) + + def install_instructions(self) -> str: + return self.install + + +def check_dependencies(dependencies: t.Sequence[str], hook: str): + if isinstance(dependencies, str): + dependencies = (dependencies,) + + for dependency in dependencies: + if (dep := _DEPENDENCIES.get(dependency)) is None: + raise RuntimeError(f"Unknown dependency '{dependency}'. This is likely a bug in the hook declaration.") + + try: + dep.check() + except Exception as e: + raise RuntimeError( + f"Missing dependency '{dependency}' requried by hook '{hook}'.\n" + f"To install: {dep.install_instructions()}" + ) from e + + +_DEPENDENCIES = { + 'rsciio': ImportDependency('rsciio', "'pip install rosettasciio' or 'conda install rosettasciio'"), +} \ No newline at end of file diff --git a/phaser/hooks/hook.py b/phaser/hooks/hook.py index f89827a..9b3a459 100644 --- a/phaser/hooks/hook.py +++ b/phaser/hooks/hook.py @@ -4,7 +4,6 @@ import importlib import typing as t -import pane from pane.convert import ConverterHandlers, DataType from pane.converters import Converter, make_converter from pane.errors import ErrorNode, WrongTypeError, ParseInterrupt, ProductErrorNode @@ -13,15 +12,17 @@ U = t.TypeVar('U') class Hook(t.Generic[T, U], abc.ABC): - known: t.ClassVar[t.Dict[str, t.Tuple[str, type]]] = {} + known: t.ClassVar[t.Dict[str, t.Union[t.Tuple[str, type], t.Tuple[str, type, t.Tuple[str, ...]]]]] = {} def __init__( self, ref: str, props: t.Optional[t.Any] = None, type: t.Optional[str] = None, + dependencies: t.Tuple[str, ...] = () ): self.ref: str = ref self.type: t.Optional[str] = type self.f: t.Optional[t.Callable[..., U]] = None self.props: t.Optional[t.Any] = props + self.dependencies: t.Tuple[str, ...] = () def func_ref(self) -> str: if self.type is not None: @@ -42,10 +43,16 @@ def _resolve_ref(self) -> t.Callable: raise try: - return getattr(module, func_name) + f = getattr(module, func_name) except AttributeError: raise AttributeError(f"No function '{func_name}' found in module '{module_path}'") + if self.dependencies is not None: + from ._dependencies import check_dependencies + check_dependencies(self.dependencies, self.func_ref()) + + return f + def resolve(self) -> t.Callable[..., U]: if self.f is None: self.f = self._resolve_ref() @@ -114,9 +121,13 @@ def try_convert(self, val: t.Any) -> Hook[T, U]: ref = str(val.pop('type')) props = val + dependencies = () + if ref in self.cls.known: ty = ref - (ref, props_ty) = self.cls.known[ty] + (ref, props_ty, *dep) = self.cls.known[ty] + if len(dep): + dependencies = dep[0] converter = make_converter(props_ty) props = converter.try_convert(props) @@ -125,7 +136,7 @@ def try_convert(self, val: t.Any) -> Hook[T, U]: else: ty = None - return self.cls(ref, props, ty) + return self.cls(ref, props, ty, dependencies=dependencies) def collect_errors(self, val: t.Any) -> t.Optional[ErrorNode]: try: @@ -143,7 +154,7 @@ def collect_errors(self, val: t.Any) -> t.Optional[ErrorNode]: if ref in self.cls.known: ty = ref - (ref, props_ty) = self.cls.known[ty] + (ref, props_ty, *dep) = self.cls.known[ty] converter = make_converter(props_ty) try: From f28ea573c9a73d1dc5fcd2585180c84dea68eb8c Mon Sep 17 00:00:00 2001 From: Colin Gilgenbach Date: Fri, 5 Sep 2025 16:01:21 -0400 Subject: [PATCH 05/19] 'rsciio' dependency for gatan --- phaser/hooks/__init__.py | 7 +++---- phaser/hooks/hook.py | 10 +++++----- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/phaser/hooks/__init__.py b/phaser/hooks/__init__.py index c326aa0..a77fa63 100644 --- a/phaser/hooks/__init__.py +++ b/phaser/hooks/__init__.py @@ -72,13 +72,11 @@ class LoadManualProps(Dataclass, kw_only=True): class RawDataHook(Hook[None, RawData]): known = { 'empad': ('phaser.hooks.io.empad:load_empad', LoadEmpadProps), - 'gatan': ('phaser.hooks.io.gatan:load_gatan', LoadGatanProps), + 'gatan': ('phaser.hooks.io.gatan:load_gatan', LoadGatanProps, ('rsciio',)), 'manual': ('phaser.hooks.io.manual:load_manual', LoadManualProps), } - - class ProbeHookArgs(t.TypedDict): sampling: 'Sampling' wavelength: float @@ -173,14 +171,15 @@ class PostInitArgs(t.TypedDict): class ScaleProps(Dataclass): scale: float + class OffsetProps(Dataclass): offset: float + class BinProps(Dataclass): bin: int - class CropDataProps(Dataclass): crop: t.Tuple[ # y_i, y_f, x_i, x_f diff --git a/phaser/hooks/hook.py b/phaser/hooks/hook.py index 9b3a459..ccbdc67 100644 --- a/phaser/hooks/hook.py +++ b/phaser/hooks/hook.py @@ -22,7 +22,7 @@ def __init__( self.type: t.Optional[str] = type self.f: t.Optional[t.Callable[..., U]] = None self.props: t.Optional[t.Any] = props - self.dependencies: t.Tuple[str, ...] = () + self.dependencies: t.Tuple[str, ...] = dependencies def func_ref(self) -> str: if self.type is not None: @@ -35,6 +35,10 @@ def _resolve_ref(self) -> t.Callable: return globals()[self.ref] raise ValueError(f"Can't resolve function reference '{self.ref}'.") + if self.dependencies is not None: + from ._dependencies import check_dependencies + check_dependencies(self.dependencies, self.func_ref()) + (module_path, func_name) = self.ref.split(':') try: module = importlib.import_module(module_path) @@ -47,10 +51,6 @@ def _resolve_ref(self) -> t.Callable: except AttributeError: raise AttributeError(f"No function '{func_name}' found in module '{module_path}'") - if self.dependencies is not None: - from ._dependencies import check_dependencies - check_dependencies(self.dependencies, self.func_ref()) - return f def resolve(self) -> t.Callable[..., U]: From 58f2e41fcbe08b63ae0b57735189f91a1cba529d Mon Sep 17 00:00:00 2001 From: Colin Gilgenbach Date: Wed, 10 Sep 2025 09:43:16 -0400 Subject: [PATCH 06/19] Fixes for torch backend --- phaser/engines/gradient/solvers.py | 2 +- phaser/utils/_torch_kernels.py | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/phaser/engines/gradient/solvers.py b/phaser/engines/gradient/solvers.py index a9adc4c..4ddccdd 100644 --- a/phaser/engines/gradient/solvers.py +++ b/phaser/engines/gradient/solvers.py @@ -186,7 +186,7 @@ def update_fn(updates: Updates, state: Updates, params=None, **extra_args: t.Any new_trace = tree.map( lambda g, t: None if g is None else f(g, t), updates, - state.trace, + state, is_leaf=lambda g: g is None, ) updates = tree.map(f, updates, new_trace) if nesterov else new_trace diff --git a/phaser/utils/_torch_kernels.py b/phaser/utils/_torch_kernels.py index 1817d1d..d8d2675 100644 --- a/phaser/utils/_torch_kernels.py +++ b/phaser/utils/_torch_kernels.py @@ -44,7 +44,7 @@ def astype(self, dtype: t.Union[str, torch.dtype, t.Type[numpy.generic]]) -> '_M _TORCH_TO_NUMPY_DTYPE: t.Dict[torch.dtype, t.Type[numpy.generic]] = { - torch.bool : numpy.bool, + torch.bool : numpy.bool_, torch.uint8 : numpy.uint8, torch.int8 : numpy.int8, torch.int16 : numpy.int16, @@ -58,7 +58,7 @@ def astype(self, dtype: t.Union[str, torch.dtype, t.Type[numpy.generic]]) -> '_M } _NUMPY_TO_TORCH_DTYPE: t.Dict[t.Type[numpy.generic], torch.dtype] = { - numpy.bool : torch.bool, + numpy.bool_ : torch.bool, numpy.uint8 : torch.uint8, numpy.int8 : torch.int8, numpy.int16 : torch.int16, @@ -446,4 +446,4 @@ def _wrap_call(f, *args: t.Any, **kwargs: t.Any) -> t.Any: 'torch.isrealobj': lambda arr: not torch.is_complex(arr), }, _wrap_call) -mock_torch._MockTensor = _MockTensor # type: ignore \ No newline at end of file +mock_torch._MockTensor = _MockTensor # type: ignore From 0998a1de1a737995f57e12b8db11b560b70d84cc Mon Sep 17 00:00:00 2001 From: Colin Gilgenbach Date: Wed, 10 Sep 2025 09:50:34 -0400 Subject: [PATCH 07/19] Ensure exceptions are passed to Observer.close() --- phaser/execute.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/phaser/execute.py b/phaser/execute.py index 4ffb24d..af8b9b8 100644 --- a/phaser/execute.py +++ b/phaser/execute.py @@ -2,6 +2,7 @@ import itertools import logging import math +import sys import typing as t import numpy @@ -42,7 +43,8 @@ def execute_plan( recons.observer.finish_recons(recons.state) logging.info("Reconstruction finished!") finally: - recons.observer.close() + # pass any excpetion info to observers + recons.observer.close(sys.exc_info()[1]) def execute_engine( From acb527f0e8e890e6c3e932efbe6d44bd948657a0 Mon Sep 17 00:00:00 2001 From: Colin Gilgenbach Date: Mon, 15 Sep 2025 14:56:49 -0400 Subject: [PATCH 08/19] Add Py4DSTEM structure to default search path for HDF5 files --- phaser/hooks/io/manual.py | 1 + 1 file changed, 1 insertion(+) diff --git a/phaser/hooks/io/manual.py b/phaser/hooks/io/manual.py index 73c513c..c24d11f 100644 --- a/phaser/hooks/io/manual.py +++ b/phaser/hooks/io/manual.py @@ -124,6 +124,7 @@ def _normalize_key(key: str) -> t.Tuple[str, ...]: _HDF5_KNOWN_KEYS: t.List[t.Tuple[str, ...]] = [ ('dp',), ('data',), + ('datacube_root', 'datacube', 'data'), ] From d19e03838bfd0177d65a6bacccfd99474e2d7669 Mon Sep 17 00:00:00 2001 From: Colin Gilgenbach Date: Mon, 15 Sep 2025 14:57:47 -0400 Subject: [PATCH 09/19] Fix backend/device display with new interface --- phaser/utils/num.py | 13 +- .../web/dist/6dbbfc1fd1a453b71bec.module.wasm | Bin 0 -> 4298376 bytes phaser/web/dist/bundle-dashboard.js | 510 ++++++++-------- phaser/web/dist/bundle-manager.js | 550 +++++++++--------- ...s-node_modules_wasm-array_wasm_array_js.js | 4 +- .../dist/bundle-wasm-array_wasm_array_js.js | 106 ++++ phaser/web/src/manager.tsx | 11 +- phaser/web/src/types.tsx | 2 +- phaser/web/types.py | 4 +- phaser/web/worker.py | 5 +- 10 files changed, 659 insertions(+), 546 deletions(-) create mode 100644 phaser/web/dist/6dbbfc1fd1a453b71bec.module.wasm create mode 100644 phaser/web/dist/bundle-wasm-array_wasm_array_js.js diff --git a/phaser/utils/num.py b/phaser/utils/num.py index bbddf9a..6e13374 100644 --- a/phaser/utils/num.py +++ b/phaser/utils/num.py @@ -161,8 +161,8 @@ def get_default_backend() -> BackendName: return 'numpy' -def get_devices() -> t.Tuple[t.Tuple[str, Device], ...]: - devices: t.List[t.Tuple[str, Device]] = [] +def get_devices() -> t.Tuple[t.Tuple[BackendName, Device], ...]: + devices: t.List[t.Tuple[BackendName, Device]] = [] if _BACKEND_LOADER.get('jax') is not None: from ._jax_kernels import get_devices @@ -178,6 +178,14 @@ def get_devices() -> t.Tuple[t.Tuple[str, Device], ...]: return tuple(devices) +def repr_device(device: Device) -> str: + s = str(device) + + return { + 'TFRT_CPU_0': 'cpu', + }.get(s, s) + + def to_device(device: t.Union[str, Device], xp: t.Any) -> Device: if xp_is_torch(xp): from ._torch_kernels import to_device @@ -1000,6 +1008,7 @@ def at(arr: NDArray[DTypeT], idx: IndexLike) -> _AtImpl[DTypeT]: __all__ = [ 'get_backend_module', 'get_default_backend', + 'get_devices', 'repr_device', 'to_device', 'get_backend_devices', 'set_default_device', 'get_array_module', 'cast_array_module', 'get_scipy_module', 'to_numpy', 'as_numpy', 'as_array', 'is_cupy', 'is_jax', 'xp_is_cupy', 'xp_is_jax', diff --git a/phaser/web/dist/6dbbfc1fd1a453b71bec.module.wasm b/phaser/web/dist/6dbbfc1fd1a453b71bec.module.wasm new file mode 100644 index 0000000000000000000000000000000000000000..62c4c8cd9967a15f5c11a9242ff730d2296ead4d GIT binary patch literal 4298376 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%0AN-N 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 z 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

?z1=)egfGWtZ^ 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 _Ys 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%0AB~Aan|CKLuXvqgtT{I>&m4jjVVdZt1B8R1 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