(self)
| 6062 | """ |
| 6063 | |
| 6064 | def __init__(self): |
| 6065 | self.desc = core.ProgramDesc() |
| 6066 | self.blocks = [Block(self, 0)] |
| 6067 | self.current_block_idx = 0 |
| 6068 | global global_prog_seed |
| 6069 | self._seed = global_prog_seed |
| 6070 | self._current_role = core.op_proto_and_checker_maker.OpRole.Forward |
| 6071 | self.__op_role_var = [] |
| 6072 | |
| 6073 | # for distribute training |
| 6074 | # _is_distributed = True if under distributed training |
| 6075 | self._is_distributed = False |
| 6076 | # _is_chief = True if the trainer is the first one, usually No.0 |
| 6077 | self._is_chief = False |
| 6078 | # _parameters_on_pservers records all the parameters distributed on parameter servers. |
| 6079 | self._parameters_on_pservers = None |
| 6080 | # _endpoints is a list about parameter servers ip:port, such as ["ip:port","ip:port"] |
| 6081 | self._endpoints = [] |
| 6082 | # if current role is parameter server, the _ps_endpoint is its "ip:port" |
| 6083 | self._ps_endpoint = None |
| 6084 | # trainers_endpoints, it is used for distribution. |
| 6085 | self._trainers_endpoints = [] |
| 6086 | # the distributed lookup table names |
| 6087 | self._distributed_lookup_table = None |
| 6088 | |
| 6089 | # use Deep gradient compression or not |
| 6090 | self._enable_dgc = False |
| 6091 | self._use_lamb = False |
| 6092 | |
| 6093 | self._nccl_comm_num = 1 |
| 6094 | self._use_hierarchical_allreduce = False |
| 6095 | self._hierarchical_allreduce_inter_nranks = 0 |
| 6096 | |
| 6097 | # if this program has been optimized by distributed optimizer |
| 6098 | # fleet_opt will be given a value |
| 6099 | self._fleet_opt = None |
| 6100 | self._program_config = None |
| 6101 | |
| 6102 | self._pass_applied = None |
| 6103 | |
| 6104 | # assigned if this program has been parsed by a pipeline optimizer |
| 6105 | self._pipeline_opt = None |
| 6106 | self._pass_opt = None |
| 6107 | |
| 6108 | # assigned if this program has been parsed by a heter pipeline parameter server optimizer |
| 6109 | self._heter_pipeline_opt = None |
| 6110 | |
| 6111 | # appending gradients times |
| 6112 | self._appending_grad_times = 0 |
| 6113 | |
| 6114 | # identifier for auto checkpoint |
| 6115 | self._name_generator = unique_name.UniqueNameGenerator() |
| 6116 | self._auto_checkpoint_name = self._name_generator( |
| 6117 | "__auto_checkpoint_program__" |
| 6118 | ) |
| 6119 | |
| 6120 | # compiled program, i.e. Graph |
| 6121 | self._graph = None |
nothing calls this directly
no test coverage detected