The the-cost-of-nothing Reference Manual
Table of Contents
The the-cost-of-nothing Reference Manual
This is the the-cost-of-nothing Reference Manual,
generated automatically by Declt version 3.0 "Montgomery Scott"
on Tue Dec 22 15:14:57 2020 GMT+0.
1 Introduction
#+BEGIN_QUOTE
A LISP programmer knows the value of everything, but the cost of nothing.
--- Alan Perlis
#+END_QUOTE
This library is a toolbox for measuring the run time of Common Lisp code.
It provides macros and functions for accurate benchmarking and lightweight
monitoring. Furthermore, it provides predefined benchmarks to determine
the cost of certain actions on a given platform and implementation.
I hope you find it useful. If you have new ideas for benchmarks, or
suggestions on how to improve existing ones, feel free to contact me.
** Benchmarking
To run all predefined benchmarks, simply execute
#+BEGIN_SRC lisp :results output
(asdf:test-system :the-cost-of-nothing)
#+END_SRC
To obtain the execution time of an expression as a double-float in seconds,
execute
#+BEGIN_SRC lisp
(benchmark EXPRESSION)
#+END_SRC
To have said execution time immediately and human-readably written to
*trace-output* (much like CL:TIME), execute
#+BEGIN_SRC lisp
(bench EXPRESSION)
#+END_SRC
** Monitoring
Coming soon.
** Remember
#+BEGIN_QUOTE
There are lies, damned lies, and benchmarks.
#+END_QUOTE
2 Systems
The main system appears first, followed by any subsystem dependency.
2.1 the-cost-of-nothing
- Author
Marco Heisig <marco.heisig@fau.de>
- License
MIT
- Description
Determine the cost of things in Common Lisp.
- Long Description
This library provides portable and sophisticated benchmark functions. It
comes bundled with an extensive test suite that describes the performance
of the currently used Lisp implementation, e.g. with respect to garbage
collection, sequence traversal, CLOS and floating-point performance.
- Dependencies
- alexandria
- closer-mop
- local-time
- trivial-garbage
- Source
the-cost-of-nothing.asd (file)
- Components
-
3 Modules
Modules are listed depth-first from the system components tree.
3.1 the-cost-of-nothing/core
- Parent
the-cost-of-nothing (system)
- Location
core/
- Components
-
3.2 the-cost-of-nothing/benchmarks
- Parent
the-cost-of-nothing (system)
- Location
benchmarks/
- Components
-
4 Files
Files are sorted by type and then listed depth-first from the systems
components trees.
4.1 Lisp
4.1.1 the-cost-of-nothing.asd
- Location
the-cost-of-nothing.asd
- Systems
the-cost-of-nothing (system)
4.1.2 the-cost-of-nothing/core/packages.lisp
- Parent
core (module)
- Location
core/packages.lisp
- Packages
the-cost-of-nothing
4.1.3 the-cost-of-nothing/core/utilities.lisp
- Dependency
packages.lisp (file)
- Parent
core (module)
- Location
core/utilities.lisp
- Exported Definitions
-
- Internal Definitions
-
4.1.4 the-cost-of-nothing/core/timestamps.lisp
- Dependency
utilities.lisp (file)
- Parent
core (module)
- Location
core/timestamps.lisp
- Internal Definitions
-
4.1.5 the-cost-of-nothing/core/monitoring.lisp
- Dependency
timestamps.lisp (file)
- Parent
core (module)
- Location
core/monitoring.lisp
- Exported Definitions
-
- Internal Definitions
-
4.1.6 the-cost-of-nothing/core/benchmarking.lisp
- Dependency
monitoring.lisp (file)
- Parent
core (module)
- Location
core/benchmarking.lisp
- Exported Definitions
-
- Internal Definitions
-
4.1.7 the-cost-of-nothing/core/time-series.lisp
- Dependency
benchmarking.lisp (file)
- Parent
core (module)
- Location
core/time-series.lisp
- Internal Definitions
-
4.1.8 the-cost-of-nothing/benchmarks/memory-management.lisp
- Parent
benchmarks (module)
- Location
benchmarks/memory-management.lisp
- Exported Definitions
-
- Internal Definitions
-
4.1.9 the-cost-of-nothing/benchmarks/functions.lisp
- Dependency
memory-management.lisp (file)
- Parent
benchmarks (module)
- Location
benchmarks/functions.lisp
- Exported Definitions
funcall-cost (function)
- Internal Definitions
print-functions-report (function)
4.1.10 the-cost-of-nothing/benchmarks/numerics.lisp
- Dependency
functions.lisp (file)
- Parent
benchmarks (module)
- Location
benchmarks/numerics.lisp
- Exported Definitions
flops (function)
- Internal Definitions
print-numerics-report (function)
4.1.11 the-cost-of-nothing/benchmarks/report.lisp
- Dependency
numerics.lisp (file)
- Parent
benchmarks (module)
- Location
benchmarks/report.lisp
- Exported Definitions
print-report (function)
- Internal Definitions
y-intersection-and-slope (function)
5 Packages
Packages are listed by definition order.
5.1 the-cost-of-nothing
- Source
packages.lisp (file)
- Use List
closer-common-lisp
- Exported Definitions
-
- Internal Definitions
-
6 Definitions
Definitions are sorted by export status, category, package, and then by
lexicographic order.
6.1 Exported definitions
6.1.1 Macros
- Macro: bench FORM &rest ARGS &key MAX-SAMPLES MIN-SAMPLE-TIME TIMEOUT OVERHEAD
-
Evaluate FORM multiple times and print the averaged execution time to
*TRACE-OUTPUT*.
Examples:
(bench nil) => 0.00 nanoseconds
(bench (make-hash-table)) => 247.03 nanoseconds
- Package
the-cost-of-nothing
- Source
benchmarking.lisp (file)
- Macro: benchmark FORM &rest ARGS &key MAX-SAMPLES MIN-SAMPLE-TIME TIMEOUT OVERHEAD
-
Execute BODY multiple times to accurately measure its execution time in
seconds. The returned values are literally the same as those from an
invocation of MEASURE-EXECUTION-TIME with suitable lambdas.
Examples:
(benchmark (cons nil nil)) -> 3.3d-9 1.0 36995264
(benchmark (gc :full t)) -> 0.031 0.9 90
- Package
the-cost-of-nothing
- Source
benchmarking.lisp (file)
- Macro: monitor FORM &key NAME
-
Monitor VALUE by storing a measurement in *MEASUREMENTS*. If
*MEASUREMENTS* is NIL, no measurement is recorded.
The keyword argument NAME can be used to describe the nature of the
measurement. The default name of an measurement is the VALUE form that is
the first argument of this macro.
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Macro: with-monitoring-region (NAME) &body BODY
-
Execute BODY in a region monitoring NAME. This entails the following things:
1. The special variable *MEASUREMENTS* is bound to itself, to ensure that
it has the same value throughout the entire monitoring block.
1. An MONITORING-REGION-START measurement is stored right before executing BODY.
Its value is NIL initially, but later set to the corresponding
MONITORING-REGION-END measurement.
2. For the dynamic extent of BODY, NAME is prepended to the context of all
measurements.
3. A MONITORING-REGION-END measurement is stored once control is transferred
outside of BODY. Its value is the corresponding MONITORING-REGION-START
measurement.
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
6.1.2 Functions
- Function: benchmark-thunk THUNK &key TIMEOUT MIN-SAMPLE-TIME MAX-SAMPLES OVERHEAD
-
- Package
the-cost-of-nothing
- Source
benchmarking.lisp (file)
- Function: cons-cost ()
-
- Package
the-cost-of-nothing
- Source
memory-management.lisp (file)
- Function: flops &key ELEMENT-TYPE
-
- Package
the-cost-of-nothing
- Source
numerics.lisp (file)
- Function: funcall-cost &key MANDATORY-ARGUMENTS OPTIONAL-ARGUMENTS KEYWORD-ARGUMENTS REST-ARGUMENTS
-
- Package
the-cost-of-nothing
- Source
functions.lisp (file)
- Function: gc-cost &key FULL
-
- Package
the-cost-of-nothing
- Source
memory-management.lisp (file)
- Function: make-list-cost SIZE &key INITIAL-ELEMENT
-
- Package
the-cost-of-nothing
- Source
memory-management.lisp (file)
- Function: make-measurement VALUE NAME
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: make-sequence-cost RESULT-TYPE LENGTH &key INITIAL-ELEMENT
-
- Package
the-cost-of-nothing
- Source
memory-management.lisp (file)
- Function: measurement-context INSTANCE
-
- Function: (setf measurement-context) VALUE INSTANCE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: measurement-name INSTANCE
-
- Function: (setf measurement-name) VALUE INSTANCE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: measurement-timestamp INSTANCE
-
- Function: (setf measurement-timestamp) VALUE INSTANCE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: measurement-value INSTANCE
-
- Function: (setf measurement-value) VALUE INSTANCE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: measurementp OBJECT
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: print-report &optional STREAM
-
- Package
the-cost-of-nothing
- Source
report.lisp (file)
- Function: print-time TIME &optional STREAM
-
- Package
the-cost-of-nothing
- Source
utilities.lisp (file)
- Function: touch OBJECT
-
Protect OBJECT from compiler optimization.
- Package
the-cost-of-nothing
- Source
benchmarking.lisp (file)
- Function: write-si-unit QUANTITY UNIT STREAM
-
- Package
the-cost-of-nothing
- Source
utilities.lisp (file)
6.1.3 Structures
- Structure: measurement ()
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Direct superclasses
structure-object (structure)
- Direct subclasses
-
- Direct methods
print-object (method)
- Direct slots
- Slot: value
-
- Readers
measurement-value (function)
- Writers
(setf measurement-value) (function)
- Slot: name
-
- Readers
measurement-name (function)
- Writers
(setf measurement-name) (function)
- Slot: context
-
- Initform
the-cost-of-nothing::*context*
- Readers
measurement-context (function)
- Writers
(setf measurement-context) (function)
- Slot: timestamp
-
- Initform
(the-cost-of-nothing::make-timestamp)
- Readers
measurement-timestamp (function)
- Writers
(setf measurement-timestamp) (function)
- Structure: monitoring-region-end ()
-
A measurement that is only emitted when leaving a monitoring region.
Its value is the corresponding monitoring region start.
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Direct superclasses
measurement (structure)
- Direct methods
print-object (method)
- Structure: monitoring-region-start ()
-
A measurement that is only emitted when entering a monitoring
region. Its value is the corresponding monitoring region end, or NIL, when
the region is still active.
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Direct superclasses
measurement (structure)
- Direct methods
print-object (method)
6.2 Internal definitions
6.2.1 Special variables
- Special Variable: *context*
-
A list of the names of all surrounding monitoring regions.
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Special Variable: *default-min-sample-time*
-
- Package
the-cost-of-nothing
- Source
benchmarking.lisp (file)
- Special Variable: *default-overhead*
-
- Package
the-cost-of-nothing
- Source
benchmarking.lisp (file)
- Special Variable: *measurements*
-
An object suitable as a second argument to STORE-MEASUREMENT.
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Special Variable: *si-prefix-alist*
-
- Package
the-cost-of-nothing
- Source
utilities.lisp (file)
- Special Variable: *timestamp-function*
-
- Package
the-cost-of-nothing
- Source
timestamps.lisp (file)
6.2.2 Macros
- Macro: define-memo-function NAME LAMBDA-LIST &body BODY
-
- Package
the-cost-of-nothing
- Source
utilities.lisp (file)
- Macro: with-fuzzy-timestamps (&key FUZZINESS) &body BODY
-
Set the timestamp fuzziness for the dynamic extent of BODY. This can be
useful for profiling performance critical regions of code, where the cost
of measuring the time would otherwise dominate the execution.
A timestamp fuzziness of zero means that each call to MAKE-TIMESTAMP
produces a new timestamp. Values bigger than zero mean that MAKE-TIMESTAMP
returns the same timestamp for the given number of consecutive calls.
- Package
the-cost-of-nothing
- Source
timestamps.lisp (file)
- Macro: with-memoization KEY-FORM &body BODY
-
- Package
the-cost-of-nothing
- Source
utilities.lisp (file)
6.2.3 Functions
- Function: %monitor VALUE NAME
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: call-with-fuzzy-timestamps THUNK FUZZINESS
-
- Package
the-cost-of-nothing
- Source
timestamps.lisp (file)
- Function: call-with-memoization KEY TABLE THUNK
-
- Package
the-cost-of-nothing
- Source
utilities.lisp (file)
- Function: call-with-monitoring-region NAME THUNK
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: compiled-lambda LAMBDA-LIST &rest BODY
-
- Package
the-cost-of-nothing
- Source
utilities.lisp (file)
- Function: copy-measurement INSTANCE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: copy-monitoring-region-end INSTANCE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: copy-monitoring-region-start INSTANCE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: execution-time-of-thunk THUNK
-
Execute THUNK and return the execution time of THUNK in seconds as a
double-float.
- Package
the-cost-of-nothing
- Source
benchmarking.lisp (file)
- Function: lambda-list-bindings LAMBDA-LIST
-
- Package
the-cost-of-nothing
- Source
utilities.lisp (file)
- Function: make-argument-list &key MANDATORY-ARGUMENTS OPTIONAL-ARGUMENTS KEYWORD-ARGUMENTS REST-ARGUMENTS
-
- Package
the-cost-of-nothing
- Source
utilities.lisp (file)
- Function: make-instance-cost &key NUMBER-OF-SLOTS
-
- Package
the-cost-of-nothing
- Source
memory-management.lisp (file)
- Function: make-lambda-list &key MANDATORY-ARGUMENTS OPTIONAL-ARGUMENTS KEYWORD-ARGUMENTS REST-ARGUMENTS
-
- Package
the-cost-of-nothing
- Source
utilities.lisp (file)
- Function: make-monitoring-region-end NAME VALUE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: make-monitoring-region-start NAME
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: make-struct-cost &key NUMBER-OF-SLOTS
-
- Package
the-cost-of-nothing
- Source
memory-management.lisp (file)
- Function: make-timestamp ()
-
- Package
the-cost-of-nothing
- Source
timestamps.lisp (file)
- Function: monitoring-region-end-context INSTANCE
-
- Function: (setf monitoring-region-end-context) VALUE INSTANCE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: monitoring-region-end-name INSTANCE
-
- Function: (setf monitoring-region-end-name) VALUE INSTANCE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: monitoring-region-end-p OBJECT
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: monitoring-region-end-timestamp INSTANCE
-
- Function: (setf monitoring-region-end-timestamp) VALUE INSTANCE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: monitoring-region-end-value INSTANCE
-
- Function: (setf monitoring-region-end-value) VALUE INSTANCE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: monitoring-region-start-context INSTANCE
-
- Function: (setf monitoring-region-start-context) VALUE INSTANCE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: monitoring-region-start-name INSTANCE
-
- Function: (setf monitoring-region-start-name) VALUE INSTANCE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: monitoring-region-start-p OBJECT
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: monitoring-region-start-timestamp INSTANCE
-
- Function: (setf monitoring-region-start-timestamp) VALUE INSTANCE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: monitoring-region-start-value INSTANCE
-
- Function: (setf monitoring-region-start-value) VALUE INSTANCE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Function: nth-keyword-name N
-
- Package
the-cost-of-nothing
- Source
utilities.lisp (file)
- Function: print-functions-report &optional STREAM
-
- Package
the-cost-of-nothing
- Source
functions.lisp (file)
- Function: print-memory-management-report &optional STREAM
-
- Package
the-cost-of-nothing
- Source
memory-management.lisp (file)
- Function: print-numerics-report &optional STREAM
-
- Package
the-cost-of-nothing
- Source
numerics.lisp (file)
- Function: sample-execution-time-of-thunk THUNK MIN-SAMPLE-TIME
-
Measure the execution time of invoking THUNK more and more often, until
the execution time exceeds MIN-SAMPLE-TIME.
- Package
the-cost-of-nothing
- Source
benchmarking.lisp (file)
- Function: y-intersection-and-slope X0 Y0 X1 Y1
-
- Package
the-cost-of-nothing
- Source
report.lisp (file)
6.2.4 Generic functions
- Generic Function: measurements OBJECT
-
- Generic Function: (setf measurements) NEW-VALUE OBJECT
-
- Package
the-cost-of-nothing
- Methods
- Method: measurements (TIME-SERIES time-series)
-
automatically generated reader method
- Source
time-series.lisp (file)
- Method: (setf measurements) NEW-VALUE (TIME-SERIES time-series)
-
automatically generated writer method
- Source
time-series.lisp (file)
- Generic Function: store-measurement MEASUREMENT STORAGE
-
- Package
the-cost-of-nothing
- Source
monitoring.lisp (file)
- Methods
- Method: store-measurement MEASUREMENT (NULL null)
-
6.2.5 Classes
- Class: time-series ()
-
- Package
the-cost-of-nothing
- Source
time-series.lisp (file)
- Direct superclasses
standard-object (class)
- Direct methods
-
- Direct slots
- Slot: %measurements
-
- Initform
(quote nil)
- Readers
measurements (generic function)
- Writers
(setf measurements) (generic function)
Appendix A Indexes
A.1 Concepts
| Index Entry | | Section |
|
F | | |
| File, Lisp, the-cost-of-nothing.asd: | | The the-cost-of-nothing․asd file |
| File, Lisp, the-cost-of-nothing/benchmarks/functions.lisp: | | The the-cost-of-nothing/benchmarks/functions․lisp file |
| File, Lisp, the-cost-of-nothing/benchmarks/memory-management.lisp: | | The the-cost-of-nothing/benchmarks/memory-management․lisp file |
| File, Lisp, the-cost-of-nothing/benchmarks/numerics.lisp: | | The the-cost-of-nothing/benchmarks/numerics․lisp file |
| File, Lisp, the-cost-of-nothing/benchmarks/report.lisp: | | The the-cost-of-nothing/benchmarks/report․lisp file |
| File, Lisp, the-cost-of-nothing/core/benchmarking.lisp: | | The the-cost-of-nothing/core/benchmarking․lisp file |
| File, Lisp, the-cost-of-nothing/core/monitoring.lisp: | | The the-cost-of-nothing/core/monitoring․lisp file |
| File, Lisp, the-cost-of-nothing/core/packages.lisp: | | The the-cost-of-nothing/core/packages․lisp file |
| File, Lisp, the-cost-of-nothing/core/time-series.lisp: | | The the-cost-of-nothing/core/time-series․lisp file |
| File, Lisp, the-cost-of-nothing/core/timestamps.lisp: | | The the-cost-of-nothing/core/timestamps․lisp file |
| File, Lisp, the-cost-of-nothing/core/utilities.lisp: | | The the-cost-of-nothing/core/utilities․lisp file |
|
L | | |
| Lisp File, the-cost-of-nothing.asd: | | The the-cost-of-nothing․asd file |
| Lisp File, the-cost-of-nothing/benchmarks/functions.lisp: | | The the-cost-of-nothing/benchmarks/functions․lisp file |
| Lisp File, the-cost-of-nothing/benchmarks/memory-management.lisp: | | The the-cost-of-nothing/benchmarks/memory-management․lisp file |
| Lisp File, the-cost-of-nothing/benchmarks/numerics.lisp: | | The the-cost-of-nothing/benchmarks/numerics․lisp file |
| Lisp File, the-cost-of-nothing/benchmarks/report.lisp: | | The the-cost-of-nothing/benchmarks/report․lisp file |
| Lisp File, the-cost-of-nothing/core/benchmarking.lisp: | | The the-cost-of-nothing/core/benchmarking․lisp file |
| Lisp File, the-cost-of-nothing/core/monitoring.lisp: | | The the-cost-of-nothing/core/monitoring․lisp file |
| Lisp File, the-cost-of-nothing/core/packages.lisp: | | The the-cost-of-nothing/core/packages․lisp file |
| Lisp File, the-cost-of-nothing/core/time-series.lisp: | | The the-cost-of-nothing/core/time-series․lisp file |
| Lisp File, the-cost-of-nothing/core/timestamps.lisp: | | The the-cost-of-nothing/core/timestamps․lisp file |
| Lisp File, the-cost-of-nothing/core/utilities.lisp: | | The the-cost-of-nothing/core/utilities․lisp file |
|
M | | |
| Module, the-cost-of-nothing/benchmarks: | | The the-cost-of-nothing/benchmarks module |
| Module, the-cost-of-nothing/core: | | The the-cost-of-nothing/core module |
|
T | | |
| the-cost-of-nothing.asd: | | The the-cost-of-nothing․asd file |
| the-cost-of-nothing/benchmarks: | | The the-cost-of-nothing/benchmarks module |
| the-cost-of-nothing/benchmarks/functions.lisp: | | The the-cost-of-nothing/benchmarks/functions․lisp file |
| the-cost-of-nothing/benchmarks/memory-management.lisp: | | The the-cost-of-nothing/benchmarks/memory-management․lisp file |
| the-cost-of-nothing/benchmarks/numerics.lisp: | | The the-cost-of-nothing/benchmarks/numerics․lisp file |
| the-cost-of-nothing/benchmarks/report.lisp: | | The the-cost-of-nothing/benchmarks/report․lisp file |
| the-cost-of-nothing/core: | | The the-cost-of-nothing/core module |
| the-cost-of-nothing/core/benchmarking.lisp: | | The the-cost-of-nothing/core/benchmarking․lisp file |
| the-cost-of-nothing/core/monitoring.lisp: | | The the-cost-of-nothing/core/monitoring․lisp file |
| the-cost-of-nothing/core/packages.lisp: | | The the-cost-of-nothing/core/packages․lisp file |
| the-cost-of-nothing/core/time-series.lisp: | | The the-cost-of-nothing/core/time-series․lisp file |
| the-cost-of-nothing/core/timestamps.lisp: | | The the-cost-of-nothing/core/timestamps․lisp file |
| the-cost-of-nothing/core/utilities.lisp: | | The the-cost-of-nothing/core/utilities․lisp file |
|
A.2 Functions
| Index Entry | | Section |
|
% | | |
| %monitor : | | Internal functions |
|
( | | |
| (setf measurement-context) : | | Exported functions |
| (setf measurement-name) : | | Exported functions |
| (setf measurement-timestamp) : | | Exported functions |
| (setf measurement-value) : | | Exported functions |
| (setf measurements) : | | Internal generic functions |
| (setf measurements) : | | Internal generic functions |
| (setf monitoring-region-end-context) : | | Internal functions |
| (setf monitoring-region-end-name) : | | Internal functions |
| (setf monitoring-region-end-timestamp) : | | Internal functions |
| (setf monitoring-region-end-value) : | | Internal functions |
| (setf monitoring-region-start-context) : | | Internal functions |
| (setf monitoring-region-start-name) : | | Internal functions |
| (setf monitoring-region-start-timestamp) : | | Internal functions |
| (setf monitoring-region-start-value) : | | Internal functions |
|
B | | |
| bench : | | Exported macros |
| benchmark : | | Exported macros |
| benchmark-thunk : | | Exported functions |
|
C | | |
| call-with-fuzzy-timestamps : | | Internal functions |
| call-with-memoization : | | Internal functions |
| call-with-monitoring-region : | | Internal functions |
| compiled-lambda : | | Internal functions |
| cons-cost : | | Exported functions |
| copy-measurement : | | Internal functions |
| copy-monitoring-region-end : | | Internal functions |
| copy-monitoring-region-start : | | Internal functions |
|
D | | |
| define-memo-function : | | Internal macros |
|
E | | |
| execution-time-of-thunk : | | Internal functions |
|
F | | |
| flops : | | Exported functions |
| funcall-cost : | | Exported functions |
| Function, %monitor : | | Internal functions |
| Function, (setf measurement-context) : | | Exported functions |
| Function, (setf measurement-name) : | | Exported functions |
| Function, (setf measurement-timestamp) : | | Exported functions |
| Function, (setf measurement-value) : | | Exported functions |
| Function, (setf monitoring-region-end-context) : | | Internal functions |
| Function, (setf monitoring-region-end-name) : | | Internal functions |
| Function, (setf monitoring-region-end-timestamp) : | | Internal functions |
| Function, (setf monitoring-region-end-value) : | | Internal functions |
| Function, (setf monitoring-region-start-context) : | | Internal functions |
| Function, (setf monitoring-region-start-name) : | | Internal functions |
| Function, (setf monitoring-region-start-timestamp) : | | Internal functions |
| Function, (setf monitoring-region-start-value) : | | Internal functions |
| Function, benchmark-thunk : | | Exported functions |
| Function, call-with-fuzzy-timestamps : | | Internal functions |
| Function, call-with-memoization : | | Internal functions |
| Function, call-with-monitoring-region : | | Internal functions |
| Function, compiled-lambda : | | Internal functions |
| Function, cons-cost : | | Exported functions |
| Function, copy-measurement : | | Internal functions |
| Function, copy-monitoring-region-end : | | Internal functions |
| Function, copy-monitoring-region-start : | | Internal functions |
| Function, execution-time-of-thunk : | | Internal functions |
| Function, flops : | | Exported functions |
| Function, funcall-cost : | | Exported functions |
| Function, gc-cost : | | Exported functions |
| Function, lambda-list-bindings : | | Internal functions |
| Function, make-argument-list : | | Internal functions |
| Function, make-instance-cost : | | Internal functions |
| Function, make-lambda-list : | | Internal functions |
| Function, make-list-cost : | | Exported functions |
| Function, make-measurement : | | Exported functions |
| Function, make-monitoring-region-end : | | Internal functions |
| Function, make-monitoring-region-start : | | Internal functions |
| Function, make-sequence-cost : | | Exported functions |
| Function, make-struct-cost : | | Internal functions |
| Function, make-timestamp : | | Internal functions |
| Function, measurement-context : | | Exported functions |
| Function, measurement-name : | | Exported functions |
| Function, measurement-timestamp : | | Exported functions |
| Function, measurement-value : | | Exported functions |
| Function, measurementp : | | Exported functions |
| Function, monitoring-region-end-context : | | Internal functions |
| Function, monitoring-region-end-name : | | Internal functions |
| Function, monitoring-region-end-p : | | Internal functions |
| Function, monitoring-region-end-timestamp : | | Internal functions |
| Function, monitoring-region-end-value : | | Internal functions |
| Function, monitoring-region-start-context : | | Internal functions |
| Function, monitoring-region-start-name : | | Internal functions |
| Function, monitoring-region-start-p : | | Internal functions |
| Function, monitoring-region-start-timestamp : | | Internal functions |
| Function, monitoring-region-start-value : | | Internal functions |
| Function, nth-keyword-name : | | Internal functions |
| Function, print-functions-report : | | Internal functions |
| Function, print-memory-management-report : | | Internal functions |
| Function, print-numerics-report : | | Internal functions |
| Function, print-report : | | Exported functions |
| Function, print-time : | | Exported functions |
| Function, sample-execution-time-of-thunk : | | Internal functions |
| Function, touch : | | Exported functions |
| Function, write-si-unit : | | Exported functions |
| Function, y-intersection-and-slope : | | Internal functions |
|
G | | |
| gc-cost : | | Exported functions |
| Generic Function, (setf measurements) : | | Internal generic functions |
| Generic Function, measurements : | | Internal generic functions |
| Generic Function, store-measurement : | | Internal generic functions |
|
L | | |
| lambda-list-bindings : | | Internal functions |
|
M | | |
| Macro, bench : | | Exported macros |
| Macro, benchmark : | | Exported macros |
| Macro, define-memo-function : | | Internal macros |
| Macro, monitor : | | Exported macros |
| Macro, with-fuzzy-timestamps : | | Internal macros |
| Macro, with-memoization : | | Internal macros |
| Macro, with-monitoring-region : | | Exported macros |
| make-argument-list : | | Internal functions |
| make-instance-cost : | | Internal functions |
| make-lambda-list : | | Internal functions |
| make-list-cost : | | Exported functions |
| make-measurement : | | Exported functions |
| make-monitoring-region-end : | | Internal functions |
| make-monitoring-region-start : | | Internal functions |
| make-sequence-cost : | | Exported functions |
| make-struct-cost : | | Internal functions |
| make-timestamp : | | Internal functions |
| measurement-context : | | Exported functions |
| measurement-name : | | Exported functions |
| measurement-timestamp : | | Exported functions |
| measurement-value : | | Exported functions |
| measurementp : | | Exported functions |
| measurements : | | Internal generic functions |
| measurements : | | Internal generic functions |
| Method, (setf measurements) : | | Internal generic functions |
| Method, measurements : | | Internal generic functions |
| Method, store-measurement : | | Internal generic functions |
| monitor : | | Exported macros |
| monitoring-region-end-context : | | Internal functions |
| monitoring-region-end-name : | | Internal functions |
| monitoring-region-end-p : | | Internal functions |
| monitoring-region-end-timestamp : | | Internal functions |
| monitoring-region-end-value : | | Internal functions |
| monitoring-region-start-context : | | Internal functions |
| monitoring-region-start-name : | | Internal functions |
| monitoring-region-start-p : | | Internal functions |
| monitoring-region-start-timestamp : | | Internal functions |
| monitoring-region-start-value : | | Internal functions |
|
N | | |
| nth-keyword-name : | | Internal functions |
|
P | | |
| print-functions-report : | | Internal functions |
| print-memory-management-report : | | Internal functions |
| print-numerics-report : | | Internal functions |
| print-report : | | Exported functions |
| print-time : | | Exported functions |
|
S | | |
| sample-execution-time-of-thunk : | | Internal functions |
| store-measurement : | | Internal generic functions |
| store-measurement : | | Internal generic functions |
|
T | | |
| touch : | | Exported functions |
|
W | | |
| with-fuzzy-timestamps : | | Internal macros |
| with-memoization : | | Internal macros |
| with-monitoring-region : | | Exported macros |
| write-si-unit : | | Exported functions |
|
Y | | |
| y-intersection-and-slope : | | Internal functions |
|
A.3 Variables
| Index Entry | | Section |
|
% | | |
| %measurements : | | Internal classes |
|
* | | |
| *context* : | | Internal special variables |
| *default-min-sample-time* : | | Internal special variables |
| *default-overhead* : | | Internal special variables |
| *measurements* : | | Internal special variables |
| *si-prefix-alist* : | | Internal special variables |
| *timestamp-function* : | | Internal special variables |
|
C | | |
| context : | | Exported structures |
|
N | | |
| name : | | Exported structures |
|
S | | |
| Slot, %measurements : | | Internal classes |
| Slot, context : | | Exported structures |
| Slot, name : | | Exported structures |
| Slot, timestamp : | | Exported structures |
| Slot, value : | | Exported structures |
| Special Variable, *context* : | | Internal special variables |
| Special Variable, *default-min-sample-time* : | | Internal special variables |
| Special Variable, *default-overhead* : | | Internal special variables |
| Special Variable, *measurements* : | | Internal special variables |
| Special Variable, *si-prefix-alist* : | | Internal special variables |
| Special Variable, *timestamp-function* : | | Internal special variables |
|
T | | |
| timestamp : | | Exported structures |
|
V | | |
| value : | | Exported structures |
|
A.4 Data types