Skip to main content

GPU data and compute capabilities

This matrix groups the GPU-resident data and analytical capabilities that compose across luma.gl. Return to the capabilities overview for rendering and visualization features.

GPU-native data, compute, and visualization

GPU-resident tables and columnar memory

FeatureStatusBackendPackageDetails
Owned or borrowed GPU chunksExperimentalWebGPU + WebGL2@luma.gl/gpgpu/gpu-dataEach GPUData object owns or borrows exactly one GPU buffer.
Typed GPU vectorsExperimentalWebGPU + WebGL2@luma.gl/gpgpu/gpu-dataGPUVector preserves an ordered list of independent data chunks.
Strided and child viewsExperimentalWebGPU + WebGL2@luma.gl/gpgpu/gpu-dataGPUDataView describes views and struct children without duplicating GPU storage.
GPU record batchesExperimentalWebGPU + WebGL2@luma.gl/experimental/gpu-tablesGPURecordBatch groups aligned named columns without erasing batch identity.
Chunk-preserving tablesExperimentalWebGPU + WebGL2@luma.gl/experimental/gpu-tablesGPUTable keeps streamed record batches instead of implicitly repacking them.
Constant valuesExperimentalWebGPU + WebGL2@luma.gl/gpgpu/gpu-dataGPUConstant represents scalar or row-level constant inputs.
Explicit vector formatsExperimentalWebGPU + WebGL2@luma.gl/gpgpu/gpu-dataGPUVectorFormat describes stored bytes independently of shader value types.
GPU schemasExperimentalWebGPU + WebGL2@luma.gl/experimental/gpu-tablesGPUSchema and input schemas describe column names, formats, and bindings.
Shader binding synthesisExperimentalWebGPU + WebGL2@luma.gl/experimental/gpu-tablesTable-aware helpers connect compatible columns to vertex attributes or storage.
Buffer budget planningExperimentalWebGPU + WebGL2@luma.gl/experimental/gpu-tablesGPUTableBufferPlanner bounds bindings and respects available device limits.
Explicit packingExperimentalWebGPU + WebGL2@luma.gl/experimental/gpu-tablesPacking is an explicit operation, never a hidden side effect of streaming.
Ownership-aware destructionExperimentalWebGPU + WebGL2@luma.gl/experimental/gpu-tablesAggregate destruction does not release buffers borrowed from their original owners.
Table-backed renderingExperimentalWebGPU + WebGL2@luma.gl/experimental/gpu-tablesGPUTableModel and table geometry connect columnar data directly to drawing.
Table transform feedbackExperimentalWebGL2@luma.gl/experimental/gpu-tablesApply supported table transforms through WebGL transform feedback.
Table compute dispatchExperimentalWebGPU@luma.gl/experimental/gpu-tablesCompose typed GPU table inputs and outputs through WebGPU compute.

See GPU table structure and lifecycle.

Apache Arrow, geometry, and text

FeatureStatusBackendPackageDetails
Apache Arrow uploadsExperimentalWebGPU + WebGL2@luma.gl/arrowConvert supported Arrow tables, batches, vectors, and numeric columns into GPU data.
Original batch boundariesExperimentalWebGPU + WebGL2@luma.gl/arrowPreserve source chunks and batch ownership instead of flattening streamed input.
Renderer-independent Arrow analyticsExperimentalWebGPU@luma.gl/arrowUse makeGPUAnalyticsTableFromArrowTable() to create storage-backed analytical tables without renderer-specific shader metadata.
Arrow analytics validity masksExperimentalWebGPU@luma.gl/arrowPreserve compatible Arrow nullability as explicit GPU-resident validity data and independent source batches.
Dictionary-backed analytics categoriesExperimentalWebGPU@luma.gl/arrowPreserve CPU-owned UTF-8 dictionary labels and ordering metadata with signed or unsigned 32-bit GPU category indices.
Fixed-size vector columnsExperimentalWebGPU + WebGL2@luma.gl/arrowAdapt supported fixed-size lists into typed GPU vectors and shader bindings.
Variable-length geometryExperimentalWebGPU + WebGL2@luma.gl/arrowPreserve offsets for paths, polygons, and other row-oriented variable-length data.
Normalized and HDR colorsExperimentalWebGPU + WebGL2@luma.gl/arrowAdapt normalized colors and supported floating-point color inputs without promising universal zero-copy uploads.
Temporal and matrix metadataExperimentalWebGPU + WebGL2@luma.gl/arrowCarry supported timestamps, time origins, and matrix-oriented source metadata.
Arrow path renderingExperimentalWebGPU + WebGL2@luma.gl/arrowDraw Arrow-backed paths with portable attributes or WebGPU storage strategies.
Arrow polygon renderingExperimentalWebGPU + WebGL2@luma.gl/arrowRender supported polygon rows and preserve source-row identity for interaction.
Arrow text renderingExperimentalWebGPU + WebGL2@luma.gl/arrowRender supported string and dictionary-encoded label columns.
Source-row pickingExperimentalWebGPU + WebGL2@luma.gl/arrowMap visible geometry and labels back to their original Arrow rows.
GeoArrow tessellationExperimentalWebGPU + WebGL2@math.gl/geoarrow with @luma.gl/arrow adaptationHandle supported mixed geometry, polygon holes, coordinate layouts, and renderer color expansion.
deck.gl Arrow layersExperimentalWebGPU + WebGL2@deck.gl-community/arrow-layersConnect Arrow-backed paths, polygons, and text to compatible visualization layers.
Text and glyph atlasesExperimentalWebGPU + WebGL2@luma.gl/textRender bitmap, SDF, or MSDF glyphs with supported Unicode layout, kerning, and clipping.
Dictionary-compressed labelsExperimentalWebGPU@luma.gl/textReuse repeated label values through WebGPU storage-based text strategies.
Animated path visualizationExperimentalWebGPU@luma.gl/experimental/modelsRender GPU-resident trips and variable-length paths through storage-backed models.

See supported Arrow types and representations.

Portable data operations

FeatureStatusBackendPackageDetails
Portable data evaluationAvailableCPU + WebGPU + WebGL2@luma.gl/gpgpuEvaluate supported expressions against the most appropriate available execution backend.
Lazy vector evaluationAvailableCPU + WebGPU + WebGL2@luma.gl/gpgpuBuild deferred vector expressions and resolve them when values are needed.
Arithmetic operationsAvailableCPU + WebGPU + WebGL2@luma.gl/gpgpuApply addition, subtraction, multiplication, division, powers, and other supported operations.
Elementary mathAvailableCPU + WebGPU + WebGL2@luma.gl/gpgpuEvaluate supported sine, cosine, tangent, exponential, logarithm, and square-root functions.
Extent and vector reductionsAvailableCPU + WebGPU + WebGL2@luma.gl/gpgpuCalculate supported extents, dot products, lengths, and equality checks.
Gather and selectionAvailableCPU + WebGPU + WebGL2@luma.gl/gpgpuGather indexed values, select elements, and generate index sequences.
Segmented operationsAvailableCPU + WebGPU + WebGL2@luma.gl/gpgpuApply supported segmented mappings without losing source-vector structure.
Swizzle and interleaveAvailableCPU + WebGPU + WebGL2@luma.gl/gpgpuReorder vector components and combine compatible streams.
Result cachingAvailableCPU + WebGPU + WebGL2@luma.gl/gpgpuReuse evaluated values and clean up evaluator-owned temporary resources.
Dynamic backend loadingAvailableCPU + WebGPU + WebGL2@luma.gl/gpgpuSelect compatible implementations without requiring every execution adapter up front.
Custom operation handlersAvailableCPU + WebGPU + WebGL2@luma.gl/gpgpuExtend evaluator behavior through explicit backend-specific operation handlers.

See GPU operations and custom evaluation.

GPU command graphs and execution

FeatureStatusBackendPackageDetails
GPU command-graph compilationExperimentalWebGPU@luma.gl/experimentalCompile explicit compute, rendering, and copy workflows into reusable encodings.
Resource dependency trackingExperimentalWebGPU@luma.gl/experimentalOrder graph nodes around their declared resources and access relationships.
Caller-owned resourcesExperimentalWebGPU@luma.gl/experimentalImport external buffers, textures, and data views without transferring ownership.
Transient buffer reuseExperimentalWebGPU@luma.gl/experimentalAlias compatible graph-owned scratch allocations across nonoverlapping lifetimes.
Transient texture reuseExperimentalWebGPU@luma.gl/experimentalReuse compatible intermediate textures inside the compiled graph.
Typed table integrationExperimentalWebGPU@luma.gl/experimentalImport GPU vectors and chunk-aware data views into command-graph workflows.
Compute-to-render compositionExperimentalWebGPU@luma.gl/experimentalConnect compute passes to rendering without materializing a CPU-side dataset.
Indirect draw commandsExperimentalWebGPU@luma.gl/experimentalGenerate caller-visible draw and indexed-draw arguments on the GPU.
Indirect compute dispatchExperimentalWebGPU@luma.gl/experimentalProduce bounded dispatch arguments for supported graph-driven workloads.
Explicit submissionExperimentalWebGPU@luma.gl/experimentalReturn encoded GPU work without hidden eager submissions.
Render targets and resolveExperimentalWebGPU@luma.gl/experimentalDescribe render attachments and supported multisample resolve targets.
Execution inspectionExperimentalWebGPU@luma.gl/experimentalInspect graph nodes, resource lifetimes, CPU counters, and available GPU timestamps.
Small-result readbackExperimentalWebGPU@luma.gl/experimentalReturn bounded interaction results or aggregates rather than copying every source row.

See GPU command graphs.

Parallel algorithms and GPU-native queries

FeatureStatusBackendPackageDetails
Prefix scanExperimentalWebGPU@luma.gl/experimentalPerform inclusive, exclusive, and supported segmented prefix operations.
Stable compactionExperimentalWebGPU@luma.gl/experimentalPreserve original row order while removing records outside the current selection.
Indexed range generationExperimentalWebGPU@luma.gl/experimentalBuild bounded index ranges for compatible visibility and selection workflows.
Chunked indexed scatterExperimentalWebGPU@luma.gl/experimentalGPUChunkedIndexedScatter routes selected source identifiers into bounded destination chunks and publishes GPU-resident counts, offsets, and indirect dispatches.
Boolean masksExperimentalWebGPU@luma.gl/experimentalCombine selection masks using supported boolean and difference operations.
GPU depth and key sortingExperimentalWebGPU@luma.gl/experimentalSort supported unsigned keys and values through bitonic or radix implementations.
Chunk-preserving batch sortExperimentalWebGPU@luma.gl/experimentalSort source batches without silently merging independently owned buffers.
Minimum and maximum reductionExperimentalWebGPU@luma.gl/experimentalCompute supported sums, extents, minima, and maxima on the GPU.
Uniform histogramsExperimentalWebGPU@luma.gl/experimentalBin supported numeric inputs into configurable uniform histogram buckets.
Irregular-edge histogramsExperimentalWebGPU@luma.gl/experimentalEvaluate custom bin edges with supported GPU or literal edge buffers.
Grouped aggregatesExperimentalWebGPU@luma.gl/experimentalCalculate supported group count, sum, minimum, maximum, and mean values.
Spatial grid binningExperimentalWebGPU@luma.gl/experimentalAssign compatible rows to bounded two-dimensional grid cells.
Spatial grid indexesExperimentalWebGPU@luma.gl/experimentalIndex supported two-dimensional or three-dimensional points for spatial queries.
Grid aggregatesExperimentalWebGPU@luma.gl/experimentalProduce supported spatial cell sums, minima, maxima, and means.
Hash indexesExperimentalWebGPU@luma.gl/experimentalBuild and query supported bounded unsigned-key hash indexes.
Hash joinsExperimentalWebGPU@luma.gl/experimentalExecute capacity-bounded sparse inner joins for supported unsigned keys.
Batch-preserving joinsExperimentalWebGPU@luma.gl/experimentalPreserve independent left-side batch capacities and expose bounded overflow.
Spatial bounds queriesExperimentalWebGPU@luma.gl/experimentalQuery compatible point, radius, and bounds relationships in GPU spatial indexes.
Bounding-volume hierarchiesExperimentalWebGPU@luma.gl/experimentalBuild or refit fixed-topology hierarchies for supported spatial queries and object-level ray traversal.
Graph traversalExperimentalWebGPU@luma.gl/experimentalTraverse supported incoming, outgoing, or bidirectional hierarchical relationships.
Hierarchy layoutExperimentalWebGPU@luma.gl/experimentalDerive stable hierarchical layout and ancestor-projection data.
Frustum visibilityExperimentalWebGPU@luma.gl/experimentalCull compatible GPU-resident scene records against the current viewing volume.
GPU scene draw generationExperimentalWebGPU@luma.gl/experimentalGroup visible scene resources and generate bounded indirect rendering commands.
Async picking readbackExperimentalWebGPU@luma.gl/experimentalResolve supported selection and picking results through an asynchronous readback ring.
Two-dimensional FFTExperimentalWebGPU@luma.gl/experimentalTransform bounded complex fields for spectral simulation and related data workflows.

See GPU primitive documentation.

GPU dataframe analytics

FeatureStatusBackendPackageDetails
GPU-resident dataframesExperimentalWebGPU@luma.gl/experimental/gpu-dataframeGPUDataFrame wraps typed GPU tables without taking implicit ownership of borrowed source buffers.
Immutable query plansExperimentalWebGPU@luma.gl/experimental/gpu-dataframeBuild reusable filter, projection, aggregation, histogram, and ordering plans without eagerly dispatching GPU work.
Chunk-preserving source tablesExperimentalWebGPU@luma.gl/experimental/gpu-dataframeRetain source record-batch boundaries, row identities, ownership, and compatible dictionary metadata.
Typed column expressionsExperimentalWebGPU@luma.gl/experimental/gpu-dataframeCompose supported numeric, comparison, boolean, literal, and parameter expressions over named columns.
Reusable query parametersExperimentalWebGPU@luma.gl/experimental/gpu-dataframeRe-encode compatible parameterized filters and derived computations without rebuilding the source dataframe.
Null-aware filteringExperimentalWebGPU@luma.gl/experimental/gpu-dataframeApply filter() predicates with explicit validity masks and supported null checks.
Column projectionExperimentalWebGPU@luma.gl/experimental/gpu-dataframeUse select() to project ordered source columns without silently copying or repacking their GPU buffers.
Nullable derived columnsExperimentalWebGPU@luma.gl/experimental/gpu-dataframeUse withColumn() to evaluate compatible GPU-resident arithmetic while propagating source validity.
Dense grouped aggregationExperimentalWebGPU@luma.gl/experimental/gpu-dataframeUse groupBy() with dense unsigned categories and dictionary or explicit cardinality; aggregate compatible floating-point values.
Global dataframe reductionsExperimentalWebGPU@luma.gl/experimental/gpu-dataframeUse aggregate() for non-nullable row counts and validity-aware sums, extrema, and means.
Null-aware dataframe histogramsExperimentalWebGPU@luma.gl/experimental/gpu-dataframeUse histogram() with compatible numeric columns, explicit domains, irregular edges, and source validity.
Batch-preserving dataframe inner joinsExperimentalWebGPU@luma.gl/experimental/gpu-dataframeUse innerJoin() with unique-right unsigned keys, stable source-row identifiers, preserved batches, and explicit bounded overflow.
Source-aligned dataframe lookupsExperimentalWebGPU@luma.gl/experimental/gpu-dataframeUse lookup() to publish compatible right-row identifiers and match masks without compacting or repacking left rows.
Stable dataframe sortingExperimentalWebGPU@luma.gl/experimental/gpu-dataframeUse sortBy() independently within each source batch with explicit numeric ordering and null/NaN placement.
Per-batch top-K selectionExperimentalWebGPU@luma.gl/experimental/gpu-dataframeUse topK() to retain a bounded number of stably ordered rows per source batch without flattening independent inputs.
Graph-compiled query executionExperimentalWebGPU@luma.gl/experimental/gpu-dataframeCompile compatible dataframe plans into reusable GPUCommandGraph work while preserving explicit command submission.

The @luma.gl/experimental/gpu-dataframe entry point is private and experimental; its graph-native operations are implemented, but non-unique, outer, or multi-key joins, temporal windows, and cross-batch global ordering remain opportunities. See GPU command graphs and reusable primitives.

GPU graph analytics and layout

FeatureStatusBackendPackageDetails
GPU-resident relationship graphsExperimentalWebGPU@luma.gl/gpgpu/gpu-graphGPUGraph borrows typed source and target columns without materializing a JavaScript edge list.
Chunk-preserving graph inputsExperimentalWebGPU@luma.gl/gpgpu/gpu-graphPreserve independently owned source batches and caller-controlled graph resource lifetimes.
Compressed graph adjacencyExperimentalWebGPU@luma.gl/gpgpu/gpu-graphBuild reusable forward and optional reverse compressed sparse row (CSR) adjacency for supported graph operations.
Directional vertex degreeExperimentalWebGPU@luma.gl/gpgpu/gpu-graphCompute supported incoming or outgoing degree values directly into GPU result columns.
Structural graph core numbersExperimentalWebGPU@luma.gl/gpgpu/gpu-graphFind bounded simple weak-graph k-core values, convergence, and maximum degeneracy without counting loops or duplicate neighbors.
Breadth-first graph searchExperimentalWebGPU@luma.gl/gpgpu/gpu-graphTraverse bounded unweighted neighborhoods and generate deterministic predecessor or selection results.
Weighted single-source shortest pathsExperimentalWebGPU@luma.gl/gpgpu/gpu-graphFind least-cost routes over nonnegative single-precision edge weights with bounded relaxation and deterministic predecessors.
Weakly connected componentsExperimentalWebGPU@luma.gl/gpgpu/gpu-graphLabel supported connected groups within an explicit iteration budget and expose convergence information.
Deterministic graph communitiesExperimentalWebGPU@luma.gl/gpgpu/gpu-graphGPUGraphLabelPropagation assigns communities through bounded unweighted majority votes and deterministic label tie-breaking.
Weighted community modularityExperimentalWebGPU@luma.gl/gpgpu/gpu-graphScore existing directed or undirected community partitions while preserving original edge weights and multiplicity.
Single-level modularity optimizationExperimentalWebGPU@luma.gl/gpgpu/gpu-graphImprove weighted community partitions through bounded best-gain moves, empty-label splits, and stable tie-breaking; weighted floating-point rounding can vary across runs or devices.
Local clustering coefficientsExperimentalWebGPU@luma.gl/gpgpu/gpu-graphMeasure exact weak-neighborhood closure with distinct directed links or optional undirected triangle counts.
GPU PageRankExperimentalWebGPU@luma.gl/gpgpu/gpu-graphRank vertices using iterative GPU execution with supported dangling-node redistribution.
Six Graphalytics workload familiesExperimentalWebGPU@luma.gl/gpgpu/gpu-graphImplement the Graph Data Council's six LDBC Graphalytics algorithms without claiming official validation, certification, or published benchmark results.
Exact force-directed layoutExperimentalWebGPU@luma.gl/gpgpu/gpu-graphGenerate directly renderable graph positions through supported pairwise attraction and repulsion.
Spatially accelerated layoutExperimentalWebGPU@luma.gl/gpgpu/gpu-graphApproximate supported distant forces through a flat GPU spatial grid; this is not hierarchical Barnes-Hut.
Interactive graph explorationExperimentalWebGPU@luma.gl/gpgpu/gpu-graphCoordinate layout, neighborhood highlighting, GPU picking, dragging, and pinned graph vertices.
deck.gl-native graph analyticsExperimentalWebGPU@deck.gl-community/arrow-layersShare supported GPU graph analytics and layout with deck.gl layers while preserving source batches and deck.gl-owned command submission.
CPU and GPU graph benchmarksExperimentalWebGPU@luma.gl/gpgpu/gpu-graphCompare nine bounded reference workloads while separately reporting encoding, completion, setup, and accuracy costs.

Read the GPU-resident graph analytics reference, the interactive GPU Graph explorer, or the deck.gl graph explorer.

The Graph Data Council (GDC), formerly the Linked Data Benchmark Council, maintains the LDBC Graphalytics benchmark. Its formal reference datasets, correctness outputs, driver, and competition rules are separate from GPU Graph's local demonstrations. Structural core numbers, modularity scoring, and single-level community optimization go beyond its six standardized workload families.

GPU raster and satellite analysis

FeatureStatusBackendPackageDetails
GPU-resident raster bandsExperimentalWebGPU@luma.gl/experimental/gpu-rasterGPURaster describes compatible raster dimensions, bands, metadata, coordinate systems, and ownership.
Application-owned raster tile sourcesExperimentalWebGPU@luma.gl/experimental/gpu-rasterValidate caller-owned raster source, transport, decoding, and submission contracts before optional framework-managed upload and caching.
Source-provided raster overviewsExperimentalWebGPU@luma.gl/experimental/gpu-rasterSelect compatible source windows, source-provided overview levels, coordinate metadata, and cancellable tile requests.
Bounded raster tile residencyExperimentalWebGPU@luma.gl/experimental/gpu-rasterGPURasterTileCache controls independently bounded decoded CPU tiles, uploaded GPU buffers, and compatible compiled graphs.
Deterministic raster tile evictionExperimentalWebGPU@luma.gl/experimental/gpu-rasterReuse cache hits and evict eligible unpinned raster tiles and graphs within explicit byte and entry-count budgets.
Cancellation-safe raster tile requestsExperimentalWebGPU@luma.gl/experimental/gpu-rasterDeduplicate compatible in-flight source requests without canceling other waiting callers.
Fence-protected raster tile leasesExperimentalWebGPU@luma.gl/experimental/gpu-rasterPin raster tiles and reusable graphs until an application-owned post-submission completion fence resolves.
Compiled raster graph reuseExperimentalWebGPU@luma.gl/experimental/gpu-rasterReuse shape-compatible compiled analysis graphs while rebinding the current tile's borrowed GPU buffers.
Seam-safe cross-tile raster halosExperimentalWebGPU@luma.gl/experimental/gpu-rasterAssemble real neighboring samples on the GPU, preserve cumulative receptive fields, and publish each half-open tile core exactly once.
Nodata-aware analytical overviewsExperimentalWebGPU@luma.gl/experimental/gpu-rasterGenerate calibrated, valid-sample-weighted floating means with explicit sums, counts, masks, and odd-edge coverage.
Exact categorical raster overviewsExperimentalWebGPU@luma.gl/experimental/gpu-rasterPreserve native signed and unsigned class identifiers with deterministic nearest or valid-label mode policies.
Dataset-wide tiled raster statisticsExperimentalWebGPU@luma.gl/experimental/gpu-rasterMerge valid tile counts, calibrated sums, and extrema into explicitly initialized GPU-resident global accumulators.
Stable-domain global histogram replayExperimentalWebGPU@luma.gl/experimental/gpu-rasterReplay every owned tile core against the finalized dataset-wide value domain before merging compatible bins.
GPU global percentiles and thresholdsExperimentalWebGPU@luma.gl/experimental/gpu-rasterDerive histogram-estimated global percentiles and consistent Otsu thresholds without downloading raster samples.
Overflow-aware global raster reductionsExperimentalWebGPU@luma.gl/experimental/gpu-rasterSaturate global counts and bins, expose sticky overflow flags, and invalidate unsafe percentile results.
Buffer and texture conversionExperimentalWebGPU@luma.gl/experimental/gpu-rasterConvert supported raster bands between GPU buffers and textures without downloading source pixels.
Calibrated raster band mathExperimentalWebGPU@luma.gl/experimental/gpu-rasterCombine supported numeric bands while applying explicit scale, offset, validity, and nodata contracts.
GPU vegetation indexExperimentalWebGPU@luma.gl/experimental/gpu-rasterCompute normalized-difference vegetation index (NDVI) from compatible red and near-infrared bands.
Nodata-aware raster statisticsExperimentalWebGPU@luma.gl/experimental/gpu-rasterCalculate supported valid-pixel counts, sums, means, extrema, and scalar summaries.
Raster histogramsExperimentalWebGPU@luma.gl/experimental/gpu-rasterDerive valid-pixel distributions with supported explicit or GPU-inferred histogram domains.
Automatic Otsu thresholdsExperimentalWebGPU@luma.gl/experimental/gpu-rasterSelect supported image thresholds from GPU-resident histogram distributions.
Raster threshold classificationExperimentalWebGPU@luma.gl/experimental/gpu-rasterClassify compatible pixel values against explicit thresholds without CPU-side source traversal.
Raster contrast adjustmentExperimentalWebGPU@luma.gl/experimental/gpu-rasterApply supported contrast remapping while preserving raster validity and domain semantics.
Neighborhood convolutionExperimentalWebGPU@luma.gl/experimental/gpu-rasterEvaluate bounded kernels with supported raster borders and nodata-aware neighborhood policies.
Gaussian and box smoothingExperimentalWebGPU@luma.gl/experimental/gpu-rasterSmooth compatible raster bands without implicitly filling invalid neighboring pixels.
Sobel and Scharr gradientsExperimentalWebGPU@luma.gl/experimental/gpu-rasterEvaluate supported directional derivatives and edge responses from GPU-resident raster neighborhoods.
Gradient magnitude and LaplacianExperimentalWebGPU@luma.gl/experimental/gpu-rasterDerive gradient magnitude and compatible second-order edge information from valid raster pixels.
Binary and grayscale morphologyExperimentalWebGPU@luma.gl/experimental/gpu-rasterProcess supported binary masks or grayscale raster bands with explicit structuring elements, borders, and nodata policies.
Raster dilation and erosionExperimentalWebGPU@luma.gl/experimental/gpu-rasterExpand or contract compatible raster features through bounded square or Manhattan-diamond neighborhoods.
Raster opening and closingExperimentalWebGPU@luma.gl/experimental/gpu-rasterCompose supported erosion/dilation sequences to remove small features or close compatible raster gaps.
Deterministic raster connected componentsExperimentalWebGPU@luma.gl/experimental/gpu-rasterAssign sparse minimum-root foreground labels with explicit four/eight-neighbor connectivity while preserving valid background and nodata barriers.
Convergence-gated raster component labelsExperimentalWebGPU@luma.gl/experimental/gpu-rasterPublish GPU convergence and optional actual iteration counts; clear all labels and validity when a bounded graph cannot prove convergence.
Dense raster component identifiersExperimentalWebGPU@luma.gl/experimental/gpu-rasterCompact converged sparse representatives into deterministic contiguous row-major region IDs without losing valid background.
Bounded raster region counts and overflowExperimentalWebGPU@luma.gl/experimental/gpu-rasterPublish exact required and capacity-clamped component populations, invalidate truncated foreground, and expose per-execution overflow.
Masked per-region intensity statisticsExperimentalWebGPU@luma.gl/experimental/gpu-rasterPublish separate exact geometric and valid-intensity populations with calibrated floating sums, minima, maxima, and means.
Region centroids and affine areasExperimentalWebGPU@luma.gl/experimental/gpu-rasterRetain mergeable local pixel moments, preserve double-precision world translation, and report area in square CRS coordinate units.
Marching-squares contoursExperimentalWebGPU@luma.gl/experimental/gpu-rasterClassify bounded raster cells and generate supported vector contour segments directly on the GPU.
Indirect contour overlaysExperimentalWebGPU@luma.gl/experimental/gpu-rasterDraw GPU-generated contour geometry without downloading or rebuilding every segment on the CPU.
Device-aware raster dispatchExperimentalWebGPU@luma.gl/experimental/gpu-rasterPlan bounded dispatch stripes against the selected device's actual compute limits.

Start with the GPURaster concepts and execution guide, read the GPURaster API reference, or experiment with the Satellite Raster Lab.

Applied visualization, geospatial, and interaction

FeatureStatusBackendPackageDetails
Linked crossfilteringExperimentalWebGPU@luma.gl/experimental/gpu-crossfilterMaintain linked scalar ranges and two-dimensional brushes over GPU-resident data.
Self-excluding histogramsExperimentalWebGPU@luma.gl/experimental/gpu-crossfilterRecalculate brush histograms without counting the active dimension against itself.
Stable selected row IDsExperimentalWebGPU@luma.gl/experimental/gpu-crossfilterPreserve row identity for linked charts and renderable selection masks.
High-precision projectionExperimentalWebGPU@luma.gl/experimental/gpu-projectBuild local error-bounded projection patches from compatible CPU projection providers.
Binary64 coordinate transportExperimentalWebGPU@luma.gl/experimental/gpu-projectTransport 64-bit source coordinates as integer words and subtract a local origin.
Web Mercator supportExperimentalWebGPU@luma.gl/experimental/gpu-projectProject supported geospatial coordinates while retaining local precision.
Geographic distanceExperimentalWebGPU@luma.gl/experimental/geospatialEvaluate supported Haversine, point, segment, and linestring distances.
Polygon containmentExperimentalWebGPU@luma.gl/experimental/geospatialTest supported polygon boundary and containment relationships.
Hierarchical trace viewsExperimentalWebGPU@luma.gl/experimental/gpu-traceFilter, project, and render supported process, thread, and dependency hierarchies.
GPU-driven timeline pickingExperimentalWebGPU@luma.gl/experimental/gpu-traceLink trace visibility, indirect timeline draws, and GPU-aware picking.
Chunk-aware trace dependenciesExperimentalWebGPU@luma.gl/experimental/gpu-traceRoute visible dependency endpoints across supported independent source-span batches.
Bounded dataset residencyExperimentalWebGPUApplication-owned exampleStream large source corpora with an application-managed bounded GPU-resident working set.
Portable path and polygon modelsExperimentalWebGPU + WebGL2@luma.gl/experimental/modelsRender table-backed paths and polygons using compatible attribute-driven strategies.
Storage-backed path modelsExperimentalWebGPU@luma.gl/experimental/modelsProcess compatible path, polygon, and trip columns directly through storage buffers.

Try Million-Row Crossfilter, Billion-Point Spatial Atlas, GPU data analysis, and GPU sorting. Billion-scale figures describe source corpora; the GPU-resident working set remains bounded.