code: def test():
      model = SimpleNetRawArray()
      dataset = [
          (
              (numpy.ones((2, 5, 5)) * i).astype(numpy.float32),
              numpy.int32(0),
          )
          for i in range(100)
      ]
  
      batch_size = 5
      devices = tuple(
          [chainer.get_device(d) for d in sys.argv[1].split(",")]
      )
      iters = [
          chainer.iterators.SerialIterator(i, batch_size)
          for i in chainer.datasets.split_dataset_n_random(
              dataset, len(devices)
          )
      ]
      optimizer = chainer.optimizers.SGD(lr=1.0)
      optimizer.setup(model)
  
      with testing.assert_warns(UserWarning):
          updater = mpu.MultiprocessParallelUpdater(
              iters, optimizer, devices=devices
          )
      updater.update()
  
      assert model.call_called == 1
  
file_path: chainer/tests/chainer_tests/training_tests/updaters_tests/snippets/raw_array.py
imports: import sys
  import numpy
  import chainer
  from chainer import testing
  import chainer.training.updaters.multiprocess_parallel_updater
label_desc: Use image node_id 1 for calling a global function with example usage: test() without return types