class_docstr: On-demand oneDNN (former MKL-DNN) verbosing functionality.
  
  To make it easier to debug performance issues, oneDNN can dump verbose
  messages containing information like kernel size, input data size and
  execution duration while executing the kernel. The verbosing functionality
  can be invoked via an environment variable named `DNNL_VERBOSE`. However,
  this methodology dumps messages in all steps. Those are a large amount of
  verbose messages. Moreover, for investigating the performance issues,
  generally taking verbose messages for one single iteration is enough.
  This on-demand verbosing functionality makes it possible to control scope
  for verbose message dumping. In the following example, verbose messages
  will be dumped out for the second inference only.
  
  .. highlight:: python
  .. code-block:: python
  
      import torch
      model(data)
      with torch.backends.mkldnn.verbose(torch.backends.mkldnn.VERBOSE_ON):
          model(data)
  
  Args:
      level: Verbose level
          - ``VERBOSE_OFF``: Disable verbosing
          - ``VERBOSE_ON``:  Enable verbosing
          - ``VERBOSE_ON_CREATION``: Enable verbosing, including oneDNN kernel creation
class_docstr_tok: ["On-demand","oneDNN","(","former","MKL-DNN",")","verbosing","functionality",".","To","make","it","easier","to","debug","performance","issues",",","oneDNN","can","dump","verbose","messages","containing","information","like","kernel","size",",","input","data","size","and","execution","duration","while","executing","the","kernel",".","The","verbosing","functionality","can","be","invoked","via","an","environment","variable","named","`","DNNL_VERBOSE","`",".","However",",","this","methodology","dumps","messages","in","all","steps",".","Those","are","a","large","amount","of","verbose","messages",".","Moreover",",","for","investigating","the","performance","issues",",","generally","taking","verbose","messages","for","one","single","iteration","is","enough",".","This","on-demand","verbosing","functionality","makes","it","possible","to","control","scope","for","verbose","message","dumping",".","In","the","following","example",",","verbose","messages","will","be","dumped","out","for","the","second","inference","only",".","..","highlight",":",":","python","..","code-block",":",":","python","import","torch","model","(","data",")","with","torch.backends.mkldnn.verbose","(","torch.backends.mkldnn.VERBOSE_ON",")",":","model","(","data",")","Args",":","level",":","Verbose","level","-","``","VERBOSE_OFF","``",":","Disable","verbosing","-","``","VERBOSE_ON","``",":","Enable","verbosing","-","``","VERBOSE_ON_CREATION","``",":","Enable","verbosing",",","including","oneDNN","kernel","creation"]
code: def __enter__(self):
      if self.level == VERBOSE_OFF:
          return
      st = torch._C._verbose.mkldnn_set_verbose(self.level)
      assert (
          st
      ), "Failed to set MKLDNN into verbose mode. Please consider to disable this verbose scope."
      return self
  
file_path: pytorch/torch/backends/mkldnn/__init__.py
imports: import sys
  from contextlib import contextmanager
  import torch
  from torch.backends import __allow_nonbracketed_mutation, ContextProp, PropModule
label_desc: Use image node_id 2 for calling the verbose obj's underlying member method code with example usage: obj.__enter__() and returns: self