class_docstr: Basic L{Linker} subclass that calls the perform method on each L{Op} in
  the L{FunctionGraph} in the order given by L{Linker.schedule}.
class_docstr_tok: ["Basic","L","{","Linker","}","subclass","that","calls","the","perform","method","on","each","L","{","Op","}","in","the","L","{","FunctionGraph","}","in","the","order","given","by","L","{","Linker.schedule","}","."]
code: def __init__(
      self,
      allow_gc: Optional[bool] = None,
      schedule: Optional[Callable] = None,
  ) -> None:
      if allow_gc is None:
          allow_gc = config.allow_gc
      self.fgraph: Optional[FunctionGraph] = None
      super().__init__(allow_gc=allow_gc, scheduler=schedule)
  
imports: from abc import ABC, abstractmethod
  from collections.abc import Sequence
  from copy import copy, deepcopy
  from typing import TYPE_CHECKING, Any, Callable, Optional, Union
  from pytensor.configdefaults import config
  from pytensor.graph.basic import Apply, Variable
  from pytensor.graph.fg import FunctionGraph
  from pytensor.graph.type import Type
  from pytensor.link.utils import gc_helper, map_storage, raise_with_op, streamline
  from pytensor.utils import difference
label_desc: Use image node_id 1 to create a new PerformLinker object from inherited base classes: LocalLinker with example: obj = PerformLinker(allow_gc, schedule)