1 /* 2 * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana 3 * University Research and Technology 4 * Corporation. All rights reserved. 5 * Copyright (c) 2004-2005 The University of Tennessee and The University 6 * of Tennessee Research Foundation. All rights 7 * reserved. 8 * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, 9 * University of Stuttgart. All rights reserved. 10 * Copyright (c) 2004-2005 The Regents of the University of California. 11 * All rights reserved. 12 * Copyright (c) 2015 Research Organization for Information Science 13 * and Technology (RIST). All rights reserved. 14 * $COPYRIGHT$ 15 * 16 * Additional copyrights may follow 17 * 18 * $HEADER$ 19 */ 20 21 #include "ompi_config.h" 22 23 #include "ompi/constants.h" 24 #include "ompi/datatype/ompi_datatype.h" 25 #include "coll_self.h" 26 27 28 /* 29 * scatter_intra 30 * 31 * Function: - scatter 32 * Accepts: - same arguments as MPI_Scatter() 33 * Returns: - MPI_SUCCESS or error code 34 */ 35 int mca_coll_self_scatter_intra(const void *sbuf, int scount, 36 struct ompi_datatype_t *sdtype, 37 void *rbuf, int rcount, 38 struct ompi_datatype_t *rdtype, 39 int root, 40 struct ompi_communicator_t *comm, 41 mca_coll_base_module_t *module) 42 { 43 if (MPI_IN_PLACE == rbuf) { 44 return MPI_SUCCESS; 45 } else { 46 return ompi_datatype_sndrcv(sbuf, scount, sdtype, 47 rbuf, rcount, rdtype); 48 } 49 }