matmul_ozaki — DRIVE ozaki op

• Datenarten: matrix × matrix → matrix

• Aufruf: import fullseye as fs; fs.ledger.matmul_ozaki(A, B, n_slices=None, scheme: 'str' = 'ozaki1', tol: 'float' = 1.1102230246251565e-16, on_insufficient: 'str' = 'raise', return_info: 'bool' = False) (die Implementierung direkt: import ozakimm; ozakimm.matmul_ozaki(A, B, n_slices=None, scheme: 'str' = 'ozaki1', tol: 'float' = 1.1102230246251565e-16, on_insufficient: 'str' = 'raise', return_info: 'bool' = False); aus dem Register: opsdrive.get("matmul_ozaki"))

Verwendung

Setzt ein Matrixprodukt A @ B mit FP64-Genauigkeit aus exakten Teilprodukten niedriger Genauigkeit zusammen (Ozaki-I / Ozaki-II).

scheme="ozaki1": teilt in n_slices Scheiben (n(n+1)/2 Produkte). Bei n_slices=None wird automatisch die kleinste Scheibenzahl (1–16) gewählt, bei der die garantierte Fehlerschranke höchstens tol · (|A||B|)_ij beträgt. Wird sie nicht erreicht, löst on_insufficient="raise" ValueError aus, "fallback" gibt ein gewöhnliches float64-Produkt zurück (nur in diesem Fall entfällt das Reproduzierbarkeitsversprechen; erkennbar an return_info=True bei fallback). scheme="ozaki2": Die Anzahl der Moduln muss immer mit n_slices (2–20) angegeben werden (n Produkte). Es gibt keine automatische Auswahl. Mit return_info=True (C, info) (n_slices, n_products, scheme, fallback).

Bei beiden Verfahren liefert dieselbe Eingabe dieselben Bits, unabhängig von interner Umordnung oder der Anzahl der BLAS-Threads. Auf der CPU 1–2 Größenordnungen langsamer als DGEMM (zur Wahl siehe den Docstring des Moduls).

Referenzen (Beispieldaten, Literatur)

• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).

• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.

• Der kanonische Algorithmus (Autor, Jahr) und seine Anwendungen stehen im Familienleitfaden oben.

Ausführbare Beispiele (verifizierte Samples, die diesen Operator wirklich aufrufen)

• poc_reproducible_icp — py -3.11 examples/poc_reproducible_icp.py

Typkompatible Folge-Operatoren (nehmen matrix als Eingabe)

world_camera · lidar_scan · relative_motion · foe_from_motion · flow_from_depth_motion · ttc_truth · world_materials · mesh_signed_volume

Gleiche Kategorie (ozaki)

matmul_reproducible · ozaki_error_bound · cross_covariance_reproducible · kabsch_reproducible · fp64_emulation_probe


*Provenance: ozakimm.py — DRIVE Operator-Registry. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.