{"record":{"id":"428460ebc1708d3e","repo":"tensorflow/models","slug":"train-and-eval-input-partition-dims-can-not-bepart","errorCode":null,"errorMessage":"Train and eval input partition dims can not bepartitioned on the same node","messagePattern":"Train and eval input partition dims can not bepartitioned on the same node","errorType":"exception","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"official/vision/train_spatial_partitioning.py","lineNumber":120,"sourceCode":"  params = train_utils.parse_configuration(FLAGS)\n  model_dir = FLAGS.model_dir\n  if 'train' in FLAGS.mode:\n    # Pure eval modes do not output yaml files. Otherwise continuous eval job\n    # may race against the train job for writing the same file.\n    train_utils.serialize_config(params, model_dir)\n\n  # Sets mixed_precision policy. Using 'mixed_float16' or 'mixed_bfloat16'\n  # can have significant impact on model speeds by utilizing float16 in case of\n  # GPUs, and bfloat16 in the case of TPUs. loss_scale takes effect only when\n  # dtype is float16\n  if params.runtime.mixed_precision_dtype:\n    performance.set_mixed_precision_policy(params.runtime.mixed_precision_dtype)\n\n  input_partition_dims = None\n  if FLAGS.mode == 'train_and_eval':\n    if np.prod(params.task.train_input_partition_dims) != np.prod(\n        params.task.eval_input_partition_dims):\n      raise ValueError('Train and eval input partition dims can not be'\n                       'partitioned on the same node')\n    else:\n      input_partition_dims = get_computation_shape_for_model_parallelism(\n          params.task.train_input_partition_dims)\n  elif FLAGS.mode == 'train':\n    if params.task.train_input_partition_dims:\n      input_partition_dims = get_computation_shape_for_model_parallelism(\n          params.task.train_input_partition_dims)\n  elif FLAGS.mode == 'eval' or FLAGS.mode == 'continuous_eval':\n    if params.task.eval_input_partition_dims:\n      input_partition_dims = get_computation_shape_for_model_parallelism(\n          params.task.eval_input_partition_dims)\n\n  distribution_strategy = create_distribution_strategy(\n      distribution_strategy=params.runtime.distribution_strategy,\n      num_gpus=params.runtime.num_gpus,\n      input_partition_dims=input_partition_dims,\n      tpu_address=params.runtime.tpu)","sourceCodeStart":102,"sourceCodeEnd":138,"githubUrl":"https://github.com/tensorflow/models/blob/e006f5f0d534913e49c1f1dae87364039fa607e2/official/vision/train_spatial_partitioning.py#L102-L138","documentation":"Error \"Train and eval input partition dims can not bepartitioned on the same node\" thrown in tensorflow/models.","triggerScenarios":"Thrown at official/vision/train_spatial_partitioning.py:120 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Give train and eval input partition dims different node assignments.","Partition only one of train/eval inputs on the shared dimension."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"e006f5f0d534913e49c1f1dae87364039fa607e2","analyzedAt":"2026-08-24T14:09:15.576Z","schemaVersion":2},"datasetVersion":"2026-08-24T17:17:21.512Z"}