chainer.function_hooks.TimerHook¶
-
class
chainer.function_hooks.
TimerHook
[source]¶ Function hook for measuring elapsed time of functions.
Example
Code example:
from chainer.function_hooks import TimerHook hook = TimerHook() with hook: trainer.run() hook.print_report()
Output example:
FunctionName ElapsedTime Occurrence LinearFunction 1.24sec 3900 ReLU 593.05ms 2600 SoftmaxCrossEntropy 824.11ms 1300 Accuracy 176.54ms 700
where FunctionName is the name of function that calls the hook, and ElapsedTime is the elapsed time the function consumed, and Occurrence is the number of calls.
Variables: call_history – List of measurement results. It consists of pairs of the function that calls this hook and the elapsed time the function consumes. Methods
-
added
(function=None)[source]¶ Callback function invoked when a function hook is added
Parameters: function (FunctionNode) – Function object to which the function hook is added.
-
backward_postprocess
(function, in_data, out_grad)[source]¶ Callback function invoked after backward propagation.
Parameters: - function (FunctionNode) – Function object to which the function hook is registered.
- in_data (tuple of numpy.ndarray or tuple of cupy.ndarray) – Input of forward propagation.
- out_grad (tuple of numpy.ndarray or tuple of cupy.ndarray) – Gradient data of backward propagation.
-
backward_preprocess
(function, in_data, out_grad)[source]¶ Callback function invoked before backward propagation.
Parameters: - function (FunctionNode) – Function object to which the function hook is registered.
- in_data (tuple of numpy.ndarray or tuple of cupy.ndarray) – Input data of forward propagation.
- out_grad (tuple of numpy.ndarray or tuple of cupy.ndarray) – Gradient data of backward propagation.
-
deleted
(function=None)[source]¶ Callback function invoked when a function hook is deleted
Parameters: function (FunctionNode) – Function object to which the function hook is deleted.
-
forward_postprocess
(function, in_data)[source]¶ Callback function invoked after forward propagation.
Parameters: - function (FunctionNode) – Function object to which the function hook is registered.
- in_data (tuple of numpy.ndarray or tuple of cupy.ndarray) – Input data of forward propagation.
-
forward_preprocess
(function, in_data)[source]¶ Callback function invoked before forward propagation.
Parameters: - function (FunctionNode) – Function object to which the function hook is registered.
- in_data (tuple of numpy.ndarray or tuple of cupy.ndarray) – Input data of forward propagation.
-
print_report
(file=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='UTF-8'>)[source]¶ Prints a summary report of time profiling in functions.
-
summary
()[source]¶ Returns a summary of time profiling in functions.
Returns: A summarized dictionary whose keys are function names and values are dictionaries of elapsed_time and occurrrence.
Attributes
-
name
= 'TimerHook'¶
-