RunMat
  • Pricing
RunMat
GitHub
GitHub
DownloadSign InTry in Browser
DesktopRuntimeServer
RunMat

Run math blazing fast

GitHubX (Twitter)LinkedIn

Company

  • About
  • Pricing
  • Contact

Explore

  • RunMat for academia
  • RunMat vs MATLAB Online
  • Benchmarks

Get product updates and release notes from the RunMat team.

© 2026 Dystr · Made withfor the scientific community.

RunMat™ is a registered trademark of Dystr, Inc. MATLAB® is a registered trademark of The MathWorks, Inc. RunMat is not affiliated with, endorsed by, or sponsored by The MathWorks, Inc.

LicensePrivacy
/
See all docs
Builtin Reference
    • addprop
    • assignin
    • class
    • clear
    • clearAllMemoizedCaches
    • clearCache
    • clearvars
    • dbclear
    • dbstack
    • dbstatus
    • dbtype
    • evalc
    • feval
    • findprop
    • getcallinfo
    • inputParser
    • isa
    • ischar
    • isdeployed
    • iskeyword
    • ismethod
    • isobject
    • isstring
    • isUnderlyingType
    • keyboard
    • matlab.metadata.DynamicProperty.delete
    • memoize
    • metaclass
    • mislocked
    • mlock
    • munlock
    • namelengthmax
    • narginchk
    • nargoutchk
    • notify
    • onCleanup
    • stats
    • str2func
    • superclasses
    • underlyingType
    • verLessThan
    • version
    • which
    • who
    • whos

stats — Return cache entries and hit/miss counters for a MemoizedFunction object.

S = stats(memoizedFcn) inspects a MemoizedFunction object and returns its cached input/output entries plus hit and miss counters. The argument itself must be a memoized-function object, so integers are not a direct input class. Integer values stored inside cached arguments or results remain opaque payloads and are returned without numeric conversion.

Syntax

S = stats(memoizedFcn)

Inputs

NameTypeRequiredDefaultDescription
memoizedFcnAnyYes—MemoizedFunction object.

Returns

NameTypeDescription
statsAnyStructure with cache entries and hit/miss counters.

Errors

IdentifierWhenMessage
RunMat:memoize:InvalidObjectA memoized-function method receives a non-MemoizedFunction object.memoize: expected MemoizedFunction object
RunMat:memoize:InvalidCacheSizeCacheSize is not a positive finite integer scalar.memoize: CacheSize must be a positive integer scalar
RunMat:memoize:GcFailureThe memoized object target cannot be allocated or accessed.memoize: internal object storage failed

How stats works

  • S.Cache.Inputs is a cell row vector whose entries are cell arrays of cached input arguments.
  • S.Cache.Nargout is a numeric row vector containing the requested output count for each cache entry.
  • S.Cache.Outputs is a cell row vector whose entries are cell arrays of cached outputs.
  • S.Cache.HitCount is a numeric row vector with per-entry hit counts.
  • S.Cache.TotalHits and S.Cache.TotalMisses report aggregate counters.
  • If CacheSize has been reduced, stats trims old entries before reporting the cache.
  • Cached integer arguments and outputs preserve their native class and exact payload. Counter fields describe cache metadata and are not derived from cached numeric storage.

Example

Inspect memoized-function cache state

f = memoize(@sqrt);
f(9);
f(9);
S = stats(f)

Expected output:

% S.Cache.TotalHits is 1 and S.Cache.TotalMisses is 1.

Using stats with coding agents

Open a RunMat example with live inputs, then ask the agent to explain how stats changes the result.

Run a small stats example, explain the result, then change one input and compare the output.

FAQ

Does stats change cache counters?⌄

No. It only reports existing cache state, except that it enforces the current CacheSize by trimming old entries if necessary.

Related Introspection functions

addprop · assignin · class · clear · clearAllMemoizedCaches · clearCache · clearvars · dbclear · dbstack · dbstatus · dbtype · evalc · feval · findprop · getcallinfo · inputParser · isa · ischar · isdeployed · iskeyword · ismethod · isobject · isstring · isUnderlyingType · keyboard · matlab.metadata.DynamicProperty.delete · memoize · metaclass · mislocked · mlock · munlock · namelengthmax · narginchk · nargoutchk · notify · onCleanup · str2func · superclasses · underlyingType · verLessThan · version · which · who · whos

Open-source implementation

Unlike proprietary runtimes, every RunMat function is open-source. Read exactly how stats is executed, line by line, in Rust.

  • View the source for stats in Rust on GitHub
  • Learn how the RunMat runtime works
  • Found a bug? Open an issue with a minimal reproduction.

About RunMat

RunMat is an open-source runtime that executes MATLAB-syntax code blazing on any GPU. It is licensed under the Apache 2.0 license.

  • RunMat automatically optimizes your math for GPU execution on Apple, Nvidia, and AMD hardware. No code changes needed. Simulations that took hours now take minutes.
  • Start running code in seconds. RunMat runs in the browser, on the desktop, or from the CLI. No license server, no IT ticket.

Getting started · Benchmarks · Pricing

Download RunMat

Download RunMat for full performance, or use RunMat in your browser for zero setup.

Download RunMatOpen Sandbox
On this page
  • Syntax
  • Inputs
  • Returns
  • Errors
  • How stats works
  • Example
  • Inspect memoized-function cache state
  • Using stats with coding agents
  • FAQ
  • Related Introspection functions
  • Open-source implementation
  • About RunMat