class_docstr: A Stage represents schedule for one operation.
class_docstr_tok: ["A","Stage","represents","schedule","for","one","operation","."]
docstr: Set alignment requirement for specific axis
  
  This ensures that stride[axis] == k * factor + offset for some k.
  This is useful to set memory layout to for more friendly memory
  access pattern. For example, we can set alignment to be
  factor=2, offset=1 to avoid bank conflict for thread access on
  higher dimension in GPU shared memory.
  
  Parameters
  ----------
  axis : IterVar
      The axis dimension to be aligned.
  factor : int
      The factor in alignment specification.
  offset : int
      The offset in the alignment specification.
code: def storage_align(self, axis, factor, offset):
      """Set alignment requirement for specific axis
  
      This ensures that stride[axis] == k * factor + offset for some k.
      This is useful to set memory layout to for more friendly memory
      access pattern. For example, we can set alignment to be
      factor=2, offset=1 to avoid bank conflict for thread access on
      higher dimension in GPU shared memory.
  
      Parameters
      ----------
      axis : IterVar
          The axis dimension to be aligned.
      factor : int
          The factor in alignment specification.
      offset : int
          The offset in the alignment specification.
      """
      _ffi_api.StageStorageAlign(self, axis, factor, offset)
  
imports: import collections
  import inspect
  from typing import Callable, List
  import tvm._ffi
  from tvm._ffi.base import string_types
  from tvm.ir import container
  from tvm.runtime import Object, convert
  from tvm.tir import Buffer, IndexMap, IterVar, Var
  from .None import _ffi_api
  from .None import tensor
label_desc: Use image node_id 18 for calling the Stage obj's underlying member method code with example usage: obj.storage_align(axis, factor, offset) without return types