code: def standard_normal(
      random_state, size=None, chunk_size=None, gpu=None, dtype=None
  ):
      """
      Draw samples from a standard Normal distribution (mean=0, stdev=1).
  
      Parameters
      ----------
      size : int or tuple of ints, optional
          Output shape.  If the given shape is, e.g., ``(m, n, k)``, then
          ``m * n * k`` samples are drawn.  Default is None, in which case a
          single value is returned.
      chunk_size : int or tuple of int or tuple of ints, optional
          Desired chunk size on each dimension
      gpu : bool, optional
          Allocate the tensor on GPU if True, False as default
      dtype : data-type, optional
        Data-type of the returned tensor.
  
      Returns
      -------
      out : float or Tensor
          Drawn samples.
  
      Examples
      --------
      >>> import mars.tensor as mt
  
      >>> s = mt.random.standard_normal(8000)
      >>> s.execute()
      array([ 0.6888893 ,  0.78096262, -0.89086505, ...,  0.49876311, #random
             -0.38672696, -0.4685006 ])                               #random
      >>> s.shape
      (8000,)
      >>> s = mt.random.standard_normal(size=(3, 4, 2))
      >>> s.shape
      (3, 4, 2)
      """
      if dtype is None:
          dtype = (
              np.random.RandomState().standard_normal(size=(0,)).dtype
          )
      size = random_state._handle_size(size)
      seed = gen_random_seeds(1, random_state.to_numpy())[0]
      op = TensorStandardNormal(
          size=size, seed=seed, gpu=gpu, dtype=dtype
      )
      return op(chunk_size=chunk_size)
  
file_path: mars/mars/tensor/random/standard_normal.py
imports: import numpy
  from ...None import opcodes
  from ..utils import gen_random_seeds
  from .core import TensorRandomOperandMixin, TensorDistribution
label_desc: Use image node_id 1 for calling a global function with example usage: standard_normal(random_state, size, chunk_size, gpu, dtype) and returns: op