class_docstr: Just provides a wrapper that sets the default cache dir to a neon-specific location
class_docstr_tok: ["Just","provides","a","wrapper","that","sets","the","default","cache","dir","to","a","neon-specific","location"]
code: def __init__(
      self,
      source,
      nvcc="nvcc",
      options=None,
      keep=False,
      no_extern_c=False,
      arch=None,
      code=None,
      cache_dir=None,
      include_dirs=[],
  ):
      if cache_dir is None:
          cache_dir = get_cache_dir(["kernels", "pycuda"])
  
      return super(SourceModule, self).__init__(
          source,
          nvcc,
          options,
          keep,
          no_extern_c,
          arch,
          code,
          cache_dir,
          include_dirs,
      )
  
imports: from __future__ import print_function
  from neon import logger
  from neon.util.persist import get_cache_dir
label_desc: Use image node_id 1 to create a new SourceModule object from inherited base classes: pycSourceModule with example: obj = SourceModule(source, nvcc, options, keep, no_extern_c, arch, code, cache_dir, include_dirs)