1
1

Per the details and schedule outlined in the attached RFC, Mellanox Technologies would like to CMR the new 'coll/hcoll' component. This component enables Mellanox Technologies' latest HPC middleware offering - 'Hcoll'. 'Hcoll' is a high-performance, standalone collectives library with support for truly asynchronous, non-blocking, hierarchical collectives via hardware offload on supporting Mellanox HCAs (ConnectX-3 and above.) To build the component, libhcoll must first be installed on your system, then you must configure OMPI with the configure flag: '--with-hcoll=/path/to/libhcoll'. Subsequent to installing, you may select the 'coll/hcoll' component at runtime as you would any other coll component, e.g. '-mca coll hcoll,tuned,libnbc'. This has been reviewed by Josh Ladd and should be added to cmr:v1.7:reviewer=jladd

This commit was SVN r28694.
Этот коммит содержится в:
Joshua Ladd 2013-07-01 22:39:43 +00:00
родитель ae190246df
Коммит d7a50343bf
16 изменённых файлов: 7326 добавлений и 0 удалений

Просмотреть файл

@ -0,0 +1,579 @@
coll_hcoll_component.lo: coll_hcoll_component.c \
../../../../ompi/include/ompi_config.h \
../../../../opal/include/opal_config.h \
../../../../opal/include/opal_config_top.h \
../../../../opal/include/opal_config_bottom.h \
../../../../opal/include/opal_config.h /usr/include/stdint.h \
/usr/include/features.h /usr/include/sys/cdefs.h \
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
/usr/include/gnu/stubs-64.h /usr/include/bits/wchar.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stdbool.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/limits.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/syslimits.h \
/usr/include/limits.h /usr/include/bits/posix1_lim.h \
/usr/include/bits/local_lim.h /usr/include/linux/limits.h \
/usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \
/usr/include/bits/stdio_lim.h /usr/include/sys/param.h \
/usr/include/linux/param.h /usr/include/asm/param.h \
/usr/include/asm-generic/param.h /usr/include/sys/types.h \
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
/usr/include/time.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stddef.h \
/usr/include/endian.h /usr/include/bits/endian.h \
/usr/include/bits/byteswap.h /usr/include/sys/select.h \
/usr/include/bits/select.h /usr/include/bits/sigset.h \
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
/usr/include/bits/pthreadtypes.h ../../../../opal/util/malloc.h \
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
/usr/include/bits/waitstatus.h /usr/include/xlocale.h \
/usr/include/alloca.h /usr/include/string.h /usr/include/stdio.h \
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stdarg.h \
/usr/include/bits/sys_errlist.h /usr/include/dlfcn.h \
/usr/include/bits/dlfcn.h /usr/include/libgen.h coll_hcoll.h \
../../../../ompi/include/mpi.h ../../../../opal/mca/mca.h \
../../../../ompi/mca/coll/coll.h ../../../../opal/mca/base/base.h \
../../../../opal/class/opal_object.h /usr/include/assert.h \
../../../../opal/class/opal_list.h \
../../../../opal/include/opal/sys/atomic.h \
../../../../opal/include/opal/sys/architecture.h \
../../../../opal/include/opal/sys/amd64/atomic.h \
../../../../opal/include/opal/sys/atomic_impl.h \
../../../../opal/threads/mutex.h ../../../../opal/util/output.h \
../../../../opal/threads/mutex_unix.h /usr/include/pthread.h \
/usr/include/sched.h /usr/include/bits/sched.h \
/usr/include/bits/setjmp.h /usr/include/errno.h \
/usr/include/bits/errno.h /usr/include/linux/errno.h \
/usr/include/asm/errno.h /usr/include/asm-generic/errno.h \
/usr/include/asm-generic/errno-base.h \
../../../../opal/mca/base/mca_base_var.h \
../../../../opal/class/opal_value_array.h \
../../../../opal/include/opal/constants.h \
../../../../opal/mca/base/mca_base_var_enum.h \
../../../../opal/mca/base/mca_base_framework.h \
../../../../opal/util/cmd_line.h ../../../../opal/mca/crs/crs.h \
../../../../opal/mca/crs/base/base.h \
../../../../opal/util/opal_environ.h ../../../../opal/runtime/opal_cr.h \
../../../../opal/mca/event/event.h /usr/include/sys/time.h \
../../../../opal/class/opal_pointer_array.h \
../../../../opal/mca/event/libevent2019/libevent2019.h \
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
/usr/include/bits/environments.h /usr/include/bits/confname.h \
/usr/include/getopt.h /usr/include/signal.h /usr/include/bits/signum.h \
/usr/include/bits/siginfo.h /usr/include/bits/sigaction.h \
/usr/include/bits/sigcontext.h /usr/include/bits/sigstack.h \
/usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \
../../../../opal/threads/threads.h ../../../../opal/threads/mutex.h \
../../../../opal/threads/condition.h \
../../../../opal/runtime/opal_progress.h \
../../../../opal/include/opal/prefetch.h ../../../../opal/util/argv.h \
../../../../opal/mca/event/base/base.h \
../../../../opal/mca/event/libevent2019/libevent/event.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event-config.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/evutil.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/util.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/opal_rename.h \
/usr/include/netdb.h /usr/include/netinet/in.h /usr/include/sys/socket.h \
/usr/include/sys/uio.h /usr/include/bits/uio.h \
/usr/include/bits/socket.h /usr/include/bits/sockaddr.h \
/usr/include/asm/socket.h /usr/include/asm-generic/socket.h \
/usr/include/asm/sockios.h /usr/include/asm-generic/sockios.h \
/usr/include/bits/in.h /usr/include/rpc/netdb.h \
/usr/include/bits/netdb.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event_struct.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/keyvalq_struct.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event_compat.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/buffer.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/buffer_compat.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent_struct.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent_compat.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/tag.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/tag_compat.h \
../../../../opal/mca/event/libevent2019/libevent/include/event2/thread.h \
../../../../ompi/request/request.h \
../../../../ompi/class/ompi_free_list.h \
../../../../opal/class/opal_atomic_lifo.h \
../../../../opal/threads/condition.h \
../../../../ompi/include/ompi/constants.h \
../../../../orte/include/orte/constants.h \
../../../../orte/include/orte_config.h ../../../../opal/runtime/opal.h \
../../../../ompi/request/request_dbg.h ../../../../ompi/mca/pml/pml.h \
../../../../ompi/mca/coll/base/coll_tags.h \
../../../../ompi/communicator/communicator.h \
../../../../ompi/errhandler/errhandler.h \
../../../../ompi/runtime/mpiruntime.h \
../../../../opal/class/opal_hash_table.h \
../../../../ompi/errhandler/errhandler_predefined.h \
../../../../ompi/errhandler/errcode-internal.h \
../../../../ompi/group/group.h ../../../../ompi/proc/proc.h \
../../../../ompi/include/ompi/types.h ../../../../opal/dss/dss_types.h \
../../../../opal/mca/hwloc/hwloc.h \
../../../../opal/mca/hwloc/hwloc152/hwloc152.h \
../../../../opal/mca/hwloc/hwloc152/hwloc/include/hwloc.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/autogen/config.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/rename.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/bitmap.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/helper.h \
../../../../ompi/mca/rte/rte.h ../../../../ompi/mca/rte/orte/rte_orte.h \
../../../../ompi/info/info.h ../../../../orte/include/orte/types.h \
../../../../orte/mca/errmgr/errmgr.h ../../../../opal/util/error.h \
../../../../orte/runtime/orte_globals.h \
../../../../opal/class/opal_ring_buffer.h \
../../../../opal/mca/hwloc/base/base.h \
../../../../orte/mca/plm/plm_types.h \
../../../../orte/mca/rml/rml_types.h ../../../../orte/util/proc_info.h \
../../../../orte/mca/grpcomm/grpcomm_types.h \
../../../../orte/util/name_fns.h ../../../../orte/util/error_strings.h \
../../../../orte/runtime/runtime.h ../../../../orte/runtime/orte_wait.h \
../../../../opal/dss/dss.h ../../../../orte/mca/grpcomm/grpcomm.h \
../../../../orte/mca/rml/base/rml_contact.h \
../../../../orte/mca/rml/rml.h ../../../../orte/mca/routed/routed.h \
../../../../orte/mca/routed/routed_types.h \
../../../../opal/class/opal_bitmap.h \
../../../../orte/runtime/orte_data_server.h \
../../../../ompi/group/group_dbg.h ../../../../ompi/op/op.h \
../../../../ompi/datatype/ompi_datatype.h \
../../../../opal/datatype/opal_convertor.h \
../../../../opal/datatype/opal_datatype.h \
../../../../ompi/mpi/fortran/base/fint_2_int.h \
../../../../ompi/mca/op/op.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_api.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_version.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_runtime_api.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_dte.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/float.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_constants.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_constants.h \
coll_hcoll_debug.h ../../../../opal/mca/installdirs/installdirs.h
../../../../ompi/include/ompi_config.h:
../../../../opal/include/opal_config.h:
../../../../opal/include/opal_config_top.h:
../../../../opal/include/opal_config_bottom.h:
../../../../opal/include/opal_config.h:
/usr/include/stdint.h:
/usr/include/features.h:
/usr/include/sys/cdefs.h:
/usr/include/bits/wordsize.h:
/usr/include/gnu/stubs.h:
/usr/include/gnu/stubs-64.h:
/usr/include/bits/wchar.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stdbool.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/limits.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/syslimits.h:
/usr/include/limits.h:
/usr/include/bits/posix1_lim.h:
/usr/include/bits/local_lim.h:
/usr/include/linux/limits.h:
/usr/include/bits/posix2_lim.h:
/usr/include/bits/xopen_lim.h:
/usr/include/bits/stdio_lim.h:
/usr/include/sys/param.h:
/usr/include/linux/param.h:
/usr/include/asm/param.h:
/usr/include/asm-generic/param.h:
/usr/include/sys/types.h:
/usr/include/bits/types.h:
/usr/include/bits/typesizes.h:
/usr/include/time.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stddef.h:
/usr/include/endian.h:
/usr/include/bits/endian.h:
/usr/include/bits/byteswap.h:
/usr/include/sys/select.h:
/usr/include/bits/select.h:
/usr/include/bits/sigset.h:
/usr/include/bits/time.h:
/usr/include/sys/sysmacros.h:
/usr/include/bits/pthreadtypes.h:
../../../../opal/util/malloc.h:
/usr/include/stdlib.h:
/usr/include/bits/waitflags.h:
/usr/include/bits/waitstatus.h:
/usr/include/xlocale.h:
/usr/include/alloca.h:
/usr/include/string.h:
/usr/include/stdio.h:
/usr/include/libio.h:
/usr/include/_G_config.h:
/usr/include/wchar.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stdarg.h:
/usr/include/bits/sys_errlist.h:
/usr/include/dlfcn.h:
/usr/include/bits/dlfcn.h:
/usr/include/libgen.h:
coll_hcoll.h:
../../../../ompi/include/mpi.h:
../../../../opal/mca/mca.h:
../../../../ompi/mca/coll/coll.h:
../../../../opal/mca/base/base.h:
../../../../opal/class/opal_object.h:
/usr/include/assert.h:
../../../../opal/class/opal_list.h:
../../../../opal/include/opal/sys/atomic.h:
../../../../opal/include/opal/sys/architecture.h:
../../../../opal/include/opal/sys/amd64/atomic.h:
../../../../opal/include/opal/sys/atomic_impl.h:
../../../../opal/threads/mutex.h:
../../../../opal/util/output.h:
../../../../opal/threads/mutex_unix.h:
/usr/include/pthread.h:
/usr/include/sched.h:
/usr/include/bits/sched.h:
/usr/include/bits/setjmp.h:
/usr/include/errno.h:
/usr/include/bits/errno.h:
/usr/include/linux/errno.h:
/usr/include/asm/errno.h:
/usr/include/asm-generic/errno.h:
/usr/include/asm-generic/errno-base.h:
../../../../opal/mca/base/mca_base_var.h:
../../../../opal/class/opal_value_array.h:
../../../../opal/include/opal/constants.h:
../../../../opal/mca/base/mca_base_var_enum.h:
../../../../opal/mca/base/mca_base_framework.h:
../../../../opal/util/cmd_line.h:
../../../../opal/mca/crs/crs.h:
../../../../opal/mca/crs/base/base.h:
../../../../opal/util/opal_environ.h:
../../../../opal/runtime/opal_cr.h:
../../../../opal/mca/event/event.h:
/usr/include/sys/time.h:
../../../../opal/class/opal_pointer_array.h:
../../../../opal/mca/event/libevent2019/libevent2019.h:
/usr/include/unistd.h:
/usr/include/bits/posix_opt.h:
/usr/include/bits/environments.h:
/usr/include/bits/confname.h:
/usr/include/getopt.h:
/usr/include/signal.h:
/usr/include/bits/signum.h:
/usr/include/bits/siginfo.h:
/usr/include/bits/sigaction.h:
/usr/include/bits/sigcontext.h:
/usr/include/bits/sigstack.h:
/usr/include/sys/ucontext.h:
/usr/include/bits/sigthread.h:
../../../../opal/threads/threads.h:
../../../../opal/threads/mutex.h:
../../../../opal/threads/condition.h:
../../../../opal/runtime/opal_progress.h:
../../../../opal/include/opal/prefetch.h:
../../../../opal/util/argv.h:
../../../../opal/mca/event/base/base.h:
../../../../opal/mca/event/libevent2019/libevent/event.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event-config.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/evutil.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/util.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/opal_rename.h:
/usr/include/netdb.h:
/usr/include/netinet/in.h:
/usr/include/sys/socket.h:
/usr/include/sys/uio.h:
/usr/include/bits/uio.h:
/usr/include/bits/socket.h:
/usr/include/bits/sockaddr.h:
/usr/include/asm/socket.h:
/usr/include/asm-generic/socket.h:
/usr/include/asm/sockios.h:
/usr/include/asm-generic/sockios.h:
/usr/include/bits/in.h:
/usr/include/rpc/netdb.h:
/usr/include/bits/netdb.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event_struct.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/keyvalq_struct.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event_compat.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/buffer.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/buffer_compat.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent_struct.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent_compat.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/tag.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/tag_compat.h:
../../../../opal/mca/event/libevent2019/libevent/include/event2/thread.h:
../../../../ompi/request/request.h:
../../../../ompi/class/ompi_free_list.h:
../../../../opal/class/opal_atomic_lifo.h:
../../../../opal/threads/condition.h:
../../../../ompi/include/ompi/constants.h:
../../../../orte/include/orte/constants.h:
../../../../orte/include/orte_config.h:
../../../../opal/runtime/opal.h:
../../../../ompi/request/request_dbg.h:
../../../../ompi/mca/pml/pml.h:
../../../../ompi/mca/coll/base/coll_tags.h:
../../../../ompi/communicator/communicator.h:
../../../../ompi/errhandler/errhandler.h:
../../../../ompi/runtime/mpiruntime.h:
../../../../opal/class/opal_hash_table.h:
../../../../ompi/errhandler/errhandler_predefined.h:
../../../../ompi/errhandler/errcode-internal.h:
../../../../ompi/group/group.h:
../../../../ompi/proc/proc.h:
../../../../ompi/include/ompi/types.h:
../../../../opal/dss/dss_types.h:
../../../../opal/mca/hwloc/hwloc.h:
../../../../opal/mca/hwloc/hwloc152/hwloc152.h:
../../../../opal/mca/hwloc/hwloc152/hwloc/include/hwloc.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/autogen/config.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/rename.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/bitmap.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/helper.h:
../../../../ompi/mca/rte/rte.h:
../../../../ompi/mca/rte/orte/rte_orte.h:
../../../../ompi/info/info.h:
../../../../orte/include/orte/types.h:
../../../../orte/mca/errmgr/errmgr.h:
../../../../opal/util/error.h:
../../../../orte/runtime/orte_globals.h:
../../../../opal/class/opal_ring_buffer.h:
../../../../opal/mca/hwloc/base/base.h:
../../../../orte/mca/plm/plm_types.h:
../../../../orte/mca/rml/rml_types.h:
../../../../orte/util/proc_info.h:
../../../../orte/mca/grpcomm/grpcomm_types.h:
../../../../orte/util/name_fns.h:
../../../../orte/util/error_strings.h:
../../../../orte/runtime/runtime.h:
../../../../orte/runtime/orte_wait.h:
../../../../opal/dss/dss.h:
../../../../orte/mca/grpcomm/grpcomm.h:
../../../../orte/mca/rml/base/rml_contact.h:
../../../../orte/mca/rml/rml.h:
../../../../orte/mca/routed/routed.h:
../../../../orte/mca/routed/routed_types.h:
../../../../opal/class/opal_bitmap.h:
../../../../orte/runtime/orte_data_server.h:
../../../../ompi/group/group_dbg.h:
../../../../ompi/op/op.h:
../../../../ompi/datatype/ompi_datatype.h:
../../../../opal/datatype/opal_convertor.h:
../../../../opal/datatype/opal_datatype.h:
../../../../ompi/mpi/fortran/base/fint_2_int.h:
../../../../ompi/mca/op/op.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_api.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_version.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_runtime_api.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_dte.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/float.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_constants.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_constants.h:
coll_hcoll_debug.h:
../../../../opal/mca/installdirs/installdirs.h:

Просмотреть файл

@ -0,0 +1,570 @@
coll_hcoll_module.lo: coll_hcoll_module.c coll_hcoll.h \
../../../../ompi/include/ompi_config.h \
../../../../opal/include/opal_config.h \
../../../../opal/include/opal_config_top.h \
../../../../opal/include/opal_config_bottom.h \
../../../../opal/include/opal_config.h /usr/include/stdint.h \
/usr/include/features.h /usr/include/sys/cdefs.h \
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
/usr/include/gnu/stubs-64.h /usr/include/bits/wchar.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stdbool.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/limits.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/syslimits.h \
/usr/include/limits.h /usr/include/bits/posix1_lim.h \
/usr/include/bits/local_lim.h /usr/include/linux/limits.h \
/usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \
/usr/include/bits/stdio_lim.h /usr/include/sys/param.h \
/usr/include/linux/param.h /usr/include/asm/param.h \
/usr/include/asm-generic/param.h /usr/include/sys/types.h \
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
/usr/include/time.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stddef.h \
/usr/include/endian.h /usr/include/bits/endian.h \
/usr/include/bits/byteswap.h /usr/include/sys/select.h \
/usr/include/bits/select.h /usr/include/bits/sigset.h \
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
/usr/include/bits/pthreadtypes.h ../../../../opal/util/malloc.h \
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
/usr/include/bits/waitstatus.h /usr/include/xlocale.h \
/usr/include/alloca.h /usr/include/string.h \
../../../../ompi/include/mpi.h ../../../../opal/mca/mca.h \
../../../../ompi/mca/coll/coll.h ../../../../opal/mca/base/base.h \
../../../../opal/class/opal_object.h /usr/include/assert.h \
../../../../opal/class/opal_list.h /usr/include/stdio.h \
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stdarg.h \
/usr/include/bits/sys_errlist.h \
../../../../opal/include/opal/sys/atomic.h \
../../../../opal/include/opal/sys/architecture.h \
../../../../opal/include/opal/sys/amd64/atomic.h \
../../../../opal/include/opal/sys/atomic_impl.h \
../../../../opal/threads/mutex.h ../../../../opal/util/output.h \
../../../../opal/threads/mutex_unix.h /usr/include/pthread.h \
/usr/include/sched.h /usr/include/bits/sched.h \
/usr/include/bits/setjmp.h /usr/include/errno.h \
/usr/include/bits/errno.h /usr/include/linux/errno.h \
/usr/include/asm/errno.h /usr/include/asm-generic/errno.h \
/usr/include/asm-generic/errno-base.h \
../../../../opal/mca/base/mca_base_var.h \
../../../../opal/class/opal_value_array.h \
../../../../opal/include/opal/constants.h \
../../../../opal/mca/base/mca_base_var_enum.h \
../../../../opal/mca/base/mca_base_framework.h \
../../../../opal/util/cmd_line.h ../../../../opal/mca/crs/crs.h \
../../../../opal/mca/crs/base/base.h \
../../../../opal/util/opal_environ.h ../../../../opal/runtime/opal_cr.h \
../../../../opal/mca/event/event.h /usr/include/sys/time.h \
../../../../opal/class/opal_pointer_array.h \
../../../../opal/mca/event/libevent2019/libevent2019.h \
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
/usr/include/bits/environments.h /usr/include/bits/confname.h \
/usr/include/getopt.h /usr/include/signal.h /usr/include/bits/signum.h \
/usr/include/bits/siginfo.h /usr/include/bits/sigaction.h \
/usr/include/bits/sigcontext.h /usr/include/bits/sigstack.h \
/usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \
../../../../opal/threads/threads.h ../../../../opal/threads/mutex.h \
../../../../opal/threads/condition.h \
../../../../opal/runtime/opal_progress.h \
../../../../opal/include/opal/prefetch.h ../../../../opal/util/argv.h \
../../../../opal/mca/event/base/base.h \
../../../../opal/mca/event/libevent2019/libevent/event.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event-config.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/evutil.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/util.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/opal_rename.h \
/usr/include/netdb.h /usr/include/netinet/in.h /usr/include/sys/socket.h \
/usr/include/sys/uio.h /usr/include/bits/uio.h \
/usr/include/bits/socket.h /usr/include/bits/sockaddr.h \
/usr/include/asm/socket.h /usr/include/asm-generic/socket.h \
/usr/include/asm/sockios.h /usr/include/asm-generic/sockios.h \
/usr/include/bits/in.h /usr/include/rpc/netdb.h \
/usr/include/bits/netdb.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event_struct.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/keyvalq_struct.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event_compat.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/buffer.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/buffer_compat.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent_struct.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent_compat.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/tag.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/tag_compat.h \
../../../../opal/mca/event/libevent2019/libevent/include/event2/thread.h \
../../../../ompi/request/request.h \
../../../../ompi/class/ompi_free_list.h \
../../../../opal/class/opal_atomic_lifo.h \
../../../../opal/threads/condition.h \
../../../../ompi/include/ompi/constants.h \
../../../../orte/include/orte/constants.h \
../../../../orte/include/orte_config.h ../../../../opal/runtime/opal.h \
../../../../ompi/request/request_dbg.h ../../../../ompi/mca/pml/pml.h \
../../../../ompi/mca/coll/base/coll_tags.h \
../../../../ompi/communicator/communicator.h \
../../../../ompi/errhandler/errhandler.h \
../../../../ompi/runtime/mpiruntime.h \
../../../../opal/class/opal_hash_table.h \
../../../../ompi/errhandler/errhandler_predefined.h \
../../../../ompi/errhandler/errcode-internal.h \
../../../../ompi/group/group.h ../../../../ompi/proc/proc.h \
../../../../ompi/include/ompi/types.h ../../../../opal/dss/dss_types.h \
../../../../opal/mca/hwloc/hwloc.h \
../../../../opal/mca/hwloc/hwloc152/hwloc152.h \
../../../../opal/mca/hwloc/hwloc152/hwloc/include/hwloc.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/autogen/config.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/rename.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/bitmap.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/helper.h \
../../../../ompi/mca/rte/rte.h ../../../../ompi/mca/rte/orte/rte_orte.h \
../../../../ompi/info/info.h ../../../../orte/include/orte/types.h \
../../../../orte/mca/errmgr/errmgr.h ../../../../opal/util/error.h \
../../../../orte/runtime/orte_globals.h \
../../../../opal/class/opal_ring_buffer.h \
../../../../opal/mca/hwloc/base/base.h \
../../../../orte/mca/plm/plm_types.h \
../../../../orte/mca/rml/rml_types.h ../../../../orte/util/proc_info.h \
../../../../orte/mca/grpcomm/grpcomm_types.h \
../../../../orte/util/name_fns.h ../../../../orte/util/error_strings.h \
../../../../orte/runtime/runtime.h ../../../../orte/runtime/orte_wait.h \
../../../../opal/dss/dss.h ../../../../orte/mca/grpcomm/grpcomm.h \
../../../../orte/mca/rml/base/rml_contact.h \
../../../../orte/mca/rml/rml.h ../../../../orte/mca/routed/routed.h \
../../../../orte/mca/routed/routed_types.h \
../../../../opal/class/opal_bitmap.h \
../../../../orte/runtime/orte_data_server.h \
../../../../ompi/group/group_dbg.h ../../../../ompi/op/op.h \
../../../../ompi/datatype/ompi_datatype.h \
../../../../opal/datatype/opal_convertor.h \
../../../../opal/datatype/opal_datatype.h \
../../../../ompi/mpi/fortran/base/fint_2_int.h \
../../../../ompi/mca/op/op.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_api.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_version.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_runtime_api.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_dte.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/float.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_constants.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_constants.h \
coll_hcoll_debug.h
coll_hcoll.h:
../../../../ompi/include/ompi_config.h:
../../../../opal/include/opal_config.h:
../../../../opal/include/opal_config_top.h:
../../../../opal/include/opal_config_bottom.h:
../../../../opal/include/opal_config.h:
/usr/include/stdint.h:
/usr/include/features.h:
/usr/include/sys/cdefs.h:
/usr/include/bits/wordsize.h:
/usr/include/gnu/stubs.h:
/usr/include/gnu/stubs-64.h:
/usr/include/bits/wchar.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stdbool.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/limits.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/syslimits.h:
/usr/include/limits.h:
/usr/include/bits/posix1_lim.h:
/usr/include/bits/local_lim.h:
/usr/include/linux/limits.h:
/usr/include/bits/posix2_lim.h:
/usr/include/bits/xopen_lim.h:
/usr/include/bits/stdio_lim.h:
/usr/include/sys/param.h:
/usr/include/linux/param.h:
/usr/include/asm/param.h:
/usr/include/asm-generic/param.h:
/usr/include/sys/types.h:
/usr/include/bits/types.h:
/usr/include/bits/typesizes.h:
/usr/include/time.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stddef.h:
/usr/include/endian.h:
/usr/include/bits/endian.h:
/usr/include/bits/byteswap.h:
/usr/include/sys/select.h:
/usr/include/bits/select.h:
/usr/include/bits/sigset.h:
/usr/include/bits/time.h:
/usr/include/sys/sysmacros.h:
/usr/include/bits/pthreadtypes.h:
../../../../opal/util/malloc.h:
/usr/include/stdlib.h:
/usr/include/bits/waitflags.h:
/usr/include/bits/waitstatus.h:
/usr/include/xlocale.h:
/usr/include/alloca.h:
/usr/include/string.h:
../../../../ompi/include/mpi.h:
../../../../opal/mca/mca.h:
../../../../ompi/mca/coll/coll.h:
../../../../opal/mca/base/base.h:
../../../../opal/class/opal_object.h:
/usr/include/assert.h:
../../../../opal/class/opal_list.h:
/usr/include/stdio.h:
/usr/include/libio.h:
/usr/include/_G_config.h:
/usr/include/wchar.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stdarg.h:
/usr/include/bits/sys_errlist.h:
../../../../opal/include/opal/sys/atomic.h:
../../../../opal/include/opal/sys/architecture.h:
../../../../opal/include/opal/sys/amd64/atomic.h:
../../../../opal/include/opal/sys/atomic_impl.h:
../../../../opal/threads/mutex.h:
../../../../opal/util/output.h:
../../../../opal/threads/mutex_unix.h:
/usr/include/pthread.h:
/usr/include/sched.h:
/usr/include/bits/sched.h:
/usr/include/bits/setjmp.h:
/usr/include/errno.h:
/usr/include/bits/errno.h:
/usr/include/linux/errno.h:
/usr/include/asm/errno.h:
/usr/include/asm-generic/errno.h:
/usr/include/asm-generic/errno-base.h:
../../../../opal/mca/base/mca_base_var.h:
../../../../opal/class/opal_value_array.h:
../../../../opal/include/opal/constants.h:
../../../../opal/mca/base/mca_base_var_enum.h:
../../../../opal/mca/base/mca_base_framework.h:
../../../../opal/util/cmd_line.h:
../../../../opal/mca/crs/crs.h:
../../../../opal/mca/crs/base/base.h:
../../../../opal/util/opal_environ.h:
../../../../opal/runtime/opal_cr.h:
../../../../opal/mca/event/event.h:
/usr/include/sys/time.h:
../../../../opal/class/opal_pointer_array.h:
../../../../opal/mca/event/libevent2019/libevent2019.h:
/usr/include/unistd.h:
/usr/include/bits/posix_opt.h:
/usr/include/bits/environments.h:
/usr/include/bits/confname.h:
/usr/include/getopt.h:
/usr/include/signal.h:
/usr/include/bits/signum.h:
/usr/include/bits/siginfo.h:
/usr/include/bits/sigaction.h:
/usr/include/bits/sigcontext.h:
/usr/include/bits/sigstack.h:
/usr/include/sys/ucontext.h:
/usr/include/bits/sigthread.h:
../../../../opal/threads/threads.h:
../../../../opal/threads/mutex.h:
../../../../opal/threads/condition.h:
../../../../opal/runtime/opal_progress.h:
../../../../opal/include/opal/prefetch.h:
../../../../opal/util/argv.h:
../../../../opal/mca/event/base/base.h:
../../../../opal/mca/event/libevent2019/libevent/event.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event-config.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/evutil.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/util.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/opal_rename.h:
/usr/include/netdb.h:
/usr/include/netinet/in.h:
/usr/include/sys/socket.h:
/usr/include/sys/uio.h:
/usr/include/bits/uio.h:
/usr/include/bits/socket.h:
/usr/include/bits/sockaddr.h:
/usr/include/asm/socket.h:
/usr/include/asm-generic/socket.h:
/usr/include/asm/sockios.h:
/usr/include/asm-generic/sockios.h:
/usr/include/bits/in.h:
/usr/include/rpc/netdb.h:
/usr/include/bits/netdb.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event_struct.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/keyvalq_struct.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event_compat.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/buffer.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/buffer_compat.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent_struct.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent_compat.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/tag.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/tag_compat.h:
../../../../opal/mca/event/libevent2019/libevent/include/event2/thread.h:
../../../../ompi/request/request.h:
../../../../ompi/class/ompi_free_list.h:
../../../../opal/class/opal_atomic_lifo.h:
../../../../opal/threads/condition.h:
../../../../ompi/include/ompi/constants.h:
../../../../orte/include/orte/constants.h:
../../../../orte/include/orte_config.h:
../../../../opal/runtime/opal.h:
../../../../ompi/request/request_dbg.h:
../../../../ompi/mca/pml/pml.h:
../../../../ompi/mca/coll/base/coll_tags.h:
../../../../ompi/communicator/communicator.h:
../../../../ompi/errhandler/errhandler.h:
../../../../ompi/runtime/mpiruntime.h:
../../../../opal/class/opal_hash_table.h:
../../../../ompi/errhandler/errhandler_predefined.h:
../../../../ompi/errhandler/errcode-internal.h:
../../../../ompi/group/group.h:
../../../../ompi/proc/proc.h:
../../../../ompi/include/ompi/types.h:
../../../../opal/dss/dss_types.h:
../../../../opal/mca/hwloc/hwloc.h:
../../../../opal/mca/hwloc/hwloc152/hwloc152.h:
../../../../opal/mca/hwloc/hwloc152/hwloc/include/hwloc.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/autogen/config.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/rename.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/bitmap.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/helper.h:
../../../../ompi/mca/rte/rte.h:
../../../../ompi/mca/rte/orte/rte_orte.h:
../../../../ompi/info/info.h:
../../../../orte/include/orte/types.h:
../../../../orte/mca/errmgr/errmgr.h:
../../../../opal/util/error.h:
../../../../orte/runtime/orte_globals.h:
../../../../opal/class/opal_ring_buffer.h:
../../../../opal/mca/hwloc/base/base.h:
../../../../orte/mca/plm/plm_types.h:
../../../../orte/mca/rml/rml_types.h:
../../../../orte/util/proc_info.h:
../../../../orte/mca/grpcomm/grpcomm_types.h:
../../../../orte/util/name_fns.h:
../../../../orte/util/error_strings.h:
../../../../orte/runtime/runtime.h:
../../../../orte/runtime/orte_wait.h:
../../../../opal/dss/dss.h:
../../../../orte/mca/grpcomm/grpcomm.h:
../../../../orte/mca/rml/base/rml_contact.h:
../../../../orte/mca/rml/rml.h:
../../../../orte/mca/routed/routed.h:
../../../../orte/mca/routed/routed_types.h:
../../../../opal/class/opal_bitmap.h:
../../../../orte/runtime/orte_data_server.h:
../../../../ompi/group/group_dbg.h:
../../../../ompi/op/op.h:
../../../../ompi/datatype/ompi_datatype.h:
../../../../opal/datatype/opal_convertor.h:
../../../../opal/datatype/opal_datatype.h:
../../../../ompi/mpi/fortran/base/fint_2_int.h:
../../../../ompi/mca/op/op.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_api.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_version.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_runtime_api.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_dte.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/float.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_constants.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_constants.h:
coll_hcoll_debug.h:

575
ompi/mca/coll/hcoll/.deps/coll_hcoll_ops.Plo Обычный файл
Просмотреть файл

@ -0,0 +1,575 @@
coll_hcoll_ops.lo: coll_hcoll_ops.c \
../../../../ompi/include/ompi_config.h \
../../../../opal/include/opal_config.h \
../../../../opal/include/opal_config_top.h \
../../../../opal/include/opal_config_bottom.h \
../../../../opal/include/opal_config.h /usr/include/stdint.h \
/usr/include/features.h /usr/include/sys/cdefs.h \
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
/usr/include/gnu/stubs-64.h /usr/include/bits/wchar.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stdbool.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/limits.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/syslimits.h \
/usr/include/limits.h /usr/include/bits/posix1_lim.h \
/usr/include/bits/local_lim.h /usr/include/linux/limits.h \
/usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \
/usr/include/bits/stdio_lim.h /usr/include/sys/param.h \
/usr/include/linux/param.h /usr/include/asm/param.h \
/usr/include/asm-generic/param.h /usr/include/sys/types.h \
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
/usr/include/time.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stddef.h \
/usr/include/endian.h /usr/include/bits/endian.h \
/usr/include/bits/byteswap.h /usr/include/sys/select.h \
/usr/include/bits/select.h /usr/include/bits/sigset.h \
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
/usr/include/bits/pthreadtypes.h ../../../../opal/util/malloc.h \
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
/usr/include/bits/waitstatus.h /usr/include/xlocale.h \
/usr/include/alloca.h /usr/include/string.h \
../../../../ompi/include/ompi/constants.h \
../../../../orte/include/orte/constants.h \
../../../../opal/include/opal/constants.h \
../../../../orte/include/orte_config.h coll_hcoll.h \
../../../../ompi/include/mpi.h ../../../../opal/mca/mca.h \
../../../../ompi/mca/coll/coll.h ../../../../opal/mca/base/base.h \
../../../../opal/class/opal_object.h /usr/include/assert.h \
../../../../opal/class/opal_list.h /usr/include/stdio.h \
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stdarg.h \
/usr/include/bits/sys_errlist.h \
../../../../opal/include/opal/sys/atomic.h \
../../../../opal/include/opal/sys/architecture.h \
../../../../opal/include/opal/sys/amd64/atomic.h \
../../../../opal/include/opal/sys/atomic_impl.h \
../../../../opal/threads/mutex.h ../../../../opal/util/output.h \
../../../../opal/threads/mutex_unix.h /usr/include/pthread.h \
/usr/include/sched.h /usr/include/bits/sched.h \
/usr/include/bits/setjmp.h /usr/include/errno.h \
/usr/include/bits/errno.h /usr/include/linux/errno.h \
/usr/include/asm/errno.h /usr/include/asm-generic/errno.h \
/usr/include/asm-generic/errno-base.h \
../../../../opal/mca/base/mca_base_var.h \
../../../../opal/class/opal_value_array.h \
../../../../opal/mca/base/mca_base_var_enum.h \
../../../../opal/mca/base/mca_base_framework.h \
../../../../opal/util/cmd_line.h ../../../../opal/mca/crs/crs.h \
../../../../opal/mca/crs/base/base.h \
../../../../opal/util/opal_environ.h ../../../../opal/runtime/opal_cr.h \
../../../../opal/mca/event/event.h /usr/include/sys/time.h \
../../../../opal/class/opal_pointer_array.h \
../../../../opal/mca/event/libevent2019/libevent2019.h \
/usr/include/unistd.h /usr/include/bits/posix_opt.h \
/usr/include/bits/environments.h /usr/include/bits/confname.h \
/usr/include/getopt.h /usr/include/signal.h /usr/include/bits/signum.h \
/usr/include/bits/siginfo.h /usr/include/bits/sigaction.h \
/usr/include/bits/sigcontext.h /usr/include/bits/sigstack.h \
/usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \
../../../../opal/threads/threads.h ../../../../opal/threads/mutex.h \
../../../../opal/threads/condition.h \
../../../../opal/runtime/opal_progress.h \
../../../../opal/include/opal/prefetch.h ../../../../opal/util/argv.h \
../../../../opal/mca/event/base/base.h \
../../../../opal/mca/event/libevent2019/libevent/event.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event-config.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/evutil.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/util.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/opal_rename.h \
/usr/include/netdb.h /usr/include/netinet/in.h /usr/include/sys/socket.h \
/usr/include/sys/uio.h /usr/include/bits/uio.h \
/usr/include/bits/socket.h /usr/include/bits/sockaddr.h \
/usr/include/asm/socket.h /usr/include/asm-generic/socket.h \
/usr/include/asm/sockios.h /usr/include/asm-generic/sockios.h \
/usr/include/bits/in.h /usr/include/rpc/netdb.h \
/usr/include/bits/netdb.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event_struct.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/keyvalq_struct.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event_compat.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/buffer.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/buffer_compat.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent_struct.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent_compat.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/tag.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/tag_compat.h \
../../../../opal/mca/event/libevent2019/libevent/include/event2/thread.h \
../../../../ompi/request/request.h \
../../../../ompi/class/ompi_free_list.h \
../../../../opal/class/opal_atomic_lifo.h \
../../../../opal/threads/condition.h ../../../../opal/runtime/opal.h \
../../../../ompi/request/request_dbg.h ../../../../ompi/mca/pml/pml.h \
../../../../ompi/mca/coll/base/coll_tags.h \
../../../../ompi/communicator/communicator.h \
../../../../ompi/errhandler/errhandler.h \
../../../../ompi/runtime/mpiruntime.h \
../../../../opal/class/opal_hash_table.h \
../../../../ompi/errhandler/errhandler_predefined.h \
../../../../ompi/errhandler/errcode-internal.h \
../../../../ompi/group/group.h ../../../../ompi/proc/proc.h \
../../../../ompi/include/ompi/types.h ../../../../opal/dss/dss_types.h \
../../../../opal/mca/hwloc/hwloc.h \
../../../../opal/mca/hwloc/hwloc152/hwloc152.h \
../../../../opal/mca/hwloc/hwloc152/hwloc/include/hwloc.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/autogen/config.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/rename.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/bitmap.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/helper.h \
../../../../ompi/mca/rte/rte.h ../../../../ompi/mca/rte/orte/rte_orte.h \
../../../../ompi/info/info.h ../../../../orte/include/orte/types.h \
../../../../orte/mca/errmgr/errmgr.h ../../../../opal/util/error.h \
../../../../orte/runtime/orte_globals.h \
../../../../opal/class/opal_ring_buffer.h \
../../../../opal/mca/hwloc/base/base.h \
../../../../orte/mca/plm/plm_types.h \
../../../../orte/mca/rml/rml_types.h ../../../../orte/util/proc_info.h \
../../../../orte/mca/grpcomm/grpcomm_types.h \
../../../../orte/util/name_fns.h ../../../../orte/util/error_strings.h \
../../../../orte/runtime/runtime.h ../../../../orte/runtime/orte_wait.h \
../../../../opal/dss/dss.h ../../../../orte/mca/grpcomm/grpcomm.h \
../../../../orte/mca/rml/base/rml_contact.h \
../../../../orte/mca/rml/rml.h ../../../../orte/mca/routed/routed.h \
../../../../orte/mca/routed/routed_types.h \
../../../../opal/class/opal_bitmap.h \
../../../../orte/runtime/orte_data_server.h \
../../../../ompi/group/group_dbg.h ../../../../ompi/op/op.h \
../../../../ompi/datatype/ompi_datatype.h \
../../../../opal/datatype/opal_convertor.h \
../../../../opal/datatype/opal_datatype.h \
../../../../ompi/mpi/fortran/base/fint_2_int.h \
../../../../ompi/mca/op/op.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_api.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_version.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_runtime_api.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_dte.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/float.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_constants.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_constants.h \
coll_hcoll_debug.h coll_hcoll_dtypes.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_dte.h
../../../../ompi/include/ompi_config.h:
../../../../opal/include/opal_config.h:
../../../../opal/include/opal_config_top.h:
../../../../opal/include/opal_config_bottom.h:
../../../../opal/include/opal_config.h:
/usr/include/stdint.h:
/usr/include/features.h:
/usr/include/sys/cdefs.h:
/usr/include/bits/wordsize.h:
/usr/include/gnu/stubs.h:
/usr/include/gnu/stubs-64.h:
/usr/include/bits/wchar.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stdbool.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/limits.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/syslimits.h:
/usr/include/limits.h:
/usr/include/bits/posix1_lim.h:
/usr/include/bits/local_lim.h:
/usr/include/linux/limits.h:
/usr/include/bits/posix2_lim.h:
/usr/include/bits/xopen_lim.h:
/usr/include/bits/stdio_lim.h:
/usr/include/sys/param.h:
/usr/include/linux/param.h:
/usr/include/asm/param.h:
/usr/include/asm-generic/param.h:
/usr/include/sys/types.h:
/usr/include/bits/types.h:
/usr/include/bits/typesizes.h:
/usr/include/time.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stddef.h:
/usr/include/endian.h:
/usr/include/bits/endian.h:
/usr/include/bits/byteswap.h:
/usr/include/sys/select.h:
/usr/include/bits/select.h:
/usr/include/bits/sigset.h:
/usr/include/bits/time.h:
/usr/include/sys/sysmacros.h:
/usr/include/bits/pthreadtypes.h:
../../../../opal/util/malloc.h:
/usr/include/stdlib.h:
/usr/include/bits/waitflags.h:
/usr/include/bits/waitstatus.h:
/usr/include/xlocale.h:
/usr/include/alloca.h:
/usr/include/string.h:
../../../../ompi/include/ompi/constants.h:
../../../../orte/include/orte/constants.h:
../../../../opal/include/opal/constants.h:
../../../../orte/include/orte_config.h:
coll_hcoll.h:
../../../../ompi/include/mpi.h:
../../../../opal/mca/mca.h:
../../../../ompi/mca/coll/coll.h:
../../../../opal/mca/base/base.h:
../../../../opal/class/opal_object.h:
/usr/include/assert.h:
../../../../opal/class/opal_list.h:
/usr/include/stdio.h:
/usr/include/libio.h:
/usr/include/_G_config.h:
/usr/include/wchar.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stdarg.h:
/usr/include/bits/sys_errlist.h:
../../../../opal/include/opal/sys/atomic.h:
../../../../opal/include/opal/sys/architecture.h:
../../../../opal/include/opal/sys/amd64/atomic.h:
../../../../opal/include/opal/sys/atomic_impl.h:
../../../../opal/threads/mutex.h:
../../../../opal/util/output.h:
../../../../opal/threads/mutex_unix.h:
/usr/include/pthread.h:
/usr/include/sched.h:
/usr/include/bits/sched.h:
/usr/include/bits/setjmp.h:
/usr/include/errno.h:
/usr/include/bits/errno.h:
/usr/include/linux/errno.h:
/usr/include/asm/errno.h:
/usr/include/asm-generic/errno.h:
/usr/include/asm-generic/errno-base.h:
../../../../opal/mca/base/mca_base_var.h:
../../../../opal/class/opal_value_array.h:
../../../../opal/mca/base/mca_base_var_enum.h:
../../../../opal/mca/base/mca_base_framework.h:
../../../../opal/util/cmd_line.h:
../../../../opal/mca/crs/crs.h:
../../../../opal/mca/crs/base/base.h:
../../../../opal/util/opal_environ.h:
../../../../opal/runtime/opal_cr.h:
../../../../opal/mca/event/event.h:
/usr/include/sys/time.h:
../../../../opal/class/opal_pointer_array.h:
../../../../opal/mca/event/libevent2019/libevent2019.h:
/usr/include/unistd.h:
/usr/include/bits/posix_opt.h:
/usr/include/bits/environments.h:
/usr/include/bits/confname.h:
/usr/include/getopt.h:
/usr/include/signal.h:
/usr/include/bits/signum.h:
/usr/include/bits/siginfo.h:
/usr/include/bits/sigaction.h:
/usr/include/bits/sigcontext.h:
/usr/include/bits/sigstack.h:
/usr/include/sys/ucontext.h:
/usr/include/bits/sigthread.h:
../../../../opal/threads/threads.h:
../../../../opal/threads/mutex.h:
../../../../opal/threads/condition.h:
../../../../opal/runtime/opal_progress.h:
../../../../opal/include/opal/prefetch.h:
../../../../opal/util/argv.h:
../../../../opal/mca/event/base/base.h:
../../../../opal/mca/event/libevent2019/libevent/event.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event-config.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/evutil.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/util.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/opal_rename.h:
/usr/include/netdb.h:
/usr/include/netinet/in.h:
/usr/include/sys/socket.h:
/usr/include/sys/uio.h:
/usr/include/bits/uio.h:
/usr/include/bits/socket.h:
/usr/include/bits/sockaddr.h:
/usr/include/asm/socket.h:
/usr/include/asm-generic/socket.h:
/usr/include/asm/sockios.h:
/usr/include/asm-generic/sockios.h:
/usr/include/bits/in.h:
/usr/include/rpc/netdb.h:
/usr/include/bits/netdb.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event_struct.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/keyvalq_struct.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event_compat.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/buffer.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/buffer_compat.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent_struct.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent_compat.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/tag.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/tag_compat.h:
../../../../opal/mca/event/libevent2019/libevent/include/event2/thread.h:
../../../../ompi/request/request.h:
../../../../ompi/class/ompi_free_list.h:
../../../../opal/class/opal_atomic_lifo.h:
../../../../opal/threads/condition.h:
../../../../opal/runtime/opal.h:
../../../../ompi/request/request_dbg.h:
../../../../ompi/mca/pml/pml.h:
../../../../ompi/mca/coll/base/coll_tags.h:
../../../../ompi/communicator/communicator.h:
../../../../ompi/errhandler/errhandler.h:
../../../../ompi/runtime/mpiruntime.h:
../../../../opal/class/opal_hash_table.h:
../../../../ompi/errhandler/errhandler_predefined.h:
../../../../ompi/errhandler/errcode-internal.h:
../../../../ompi/group/group.h:
../../../../ompi/proc/proc.h:
../../../../ompi/include/ompi/types.h:
../../../../opal/dss/dss_types.h:
../../../../opal/mca/hwloc/hwloc.h:
../../../../opal/mca/hwloc/hwloc152/hwloc152.h:
../../../../opal/mca/hwloc/hwloc152/hwloc/include/hwloc.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/autogen/config.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/rename.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/bitmap.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/helper.h:
../../../../ompi/mca/rte/rte.h:
../../../../ompi/mca/rte/orte/rte_orte.h:
../../../../ompi/info/info.h:
../../../../orte/include/orte/types.h:
../../../../orte/mca/errmgr/errmgr.h:
../../../../opal/util/error.h:
../../../../orte/runtime/orte_globals.h:
../../../../opal/class/opal_ring_buffer.h:
../../../../opal/mca/hwloc/base/base.h:
../../../../orte/mca/plm/plm_types.h:
../../../../orte/mca/rml/rml_types.h:
../../../../orte/util/proc_info.h:
../../../../orte/mca/grpcomm/grpcomm_types.h:
../../../../orte/util/name_fns.h:
../../../../orte/util/error_strings.h:
../../../../orte/runtime/runtime.h:
../../../../orte/runtime/orte_wait.h:
../../../../opal/dss/dss.h:
../../../../orte/mca/grpcomm/grpcomm.h:
../../../../orte/mca/rml/base/rml_contact.h:
../../../../orte/mca/rml/rml.h:
../../../../orte/mca/routed/routed.h:
../../../../orte/mca/routed/routed_types.h:
../../../../opal/class/opal_bitmap.h:
../../../../orte/runtime/orte_data_server.h:
../../../../ompi/group/group_dbg.h:
../../../../ompi/op/op.h:
../../../../ompi/datatype/ompi_datatype.h:
../../../../opal/datatype/opal_convertor.h:
../../../../opal/datatype/opal_datatype.h:
../../../../ompi/mpi/fortran/base/fint_2_int.h:
../../../../ompi/mca/op/op.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_api.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_version.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_runtime_api.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_dte.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/float.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_constants.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_constants.h:
coll_hcoll_debug.h:
coll_hcoll_dtypes.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_dte.h:

588
ompi/mca/coll/hcoll/.deps/coll_hcoll_rte.Plo Обычный файл
Просмотреть файл

@ -0,0 +1,588 @@
coll_hcoll_rte.lo: coll_hcoll_rte.c \
../../../../ompi/include/ompi_config.h \
../../../../opal/include/opal_config.h \
../../../../opal/include/opal_config_top.h \
../../../../opal/include/opal_config_bottom.h \
../../../../opal/include/opal_config.h /usr/include/stdint.h \
/usr/include/features.h /usr/include/sys/cdefs.h \
/usr/include/bits/wordsize.h /usr/include/gnu/stubs.h \
/usr/include/gnu/stubs-64.h /usr/include/bits/wchar.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stdbool.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/limits.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/syslimits.h \
/usr/include/limits.h /usr/include/bits/posix1_lim.h \
/usr/include/bits/local_lim.h /usr/include/linux/limits.h \
/usr/include/bits/posix2_lim.h /usr/include/bits/xopen_lim.h \
/usr/include/bits/stdio_lim.h /usr/include/sys/param.h \
/usr/include/linux/param.h /usr/include/asm/param.h \
/usr/include/asm-generic/param.h /usr/include/sys/types.h \
/usr/include/bits/types.h /usr/include/bits/typesizes.h \
/usr/include/time.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stddef.h \
/usr/include/endian.h /usr/include/bits/endian.h \
/usr/include/bits/byteswap.h /usr/include/sys/select.h \
/usr/include/bits/select.h /usr/include/bits/sigset.h \
/usr/include/bits/time.h /usr/include/sys/sysmacros.h \
/usr/include/bits/pthreadtypes.h ../../../../opal/util/malloc.h \
/usr/include/stdlib.h /usr/include/bits/waitflags.h \
/usr/include/bits/waitstatus.h /usr/include/xlocale.h \
/usr/include/alloca.h /usr/include/string.h /usr/include/unistd.h \
/usr/include/bits/posix_opt.h /usr/include/bits/environments.h \
/usr/include/bits/confname.h /usr/include/getopt.h \
/usr/include/sys/mman.h /usr/include/bits/mman.h /usr/include/fcntl.h \
/usr/include/bits/fcntl.h /usr/include/bits/uio.h \
/usr/include/bits/stat.h /usr/include/errno.h /usr/include/bits/errno.h \
/usr/include/linux/errno.h /usr/include/asm/errno.h \
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
coll_hcoll.h ../../../../ompi/include/mpi.h ../../../../opal/mca/mca.h \
../../../../ompi/mca/coll/coll.h ../../../../opal/mca/base/base.h \
../../../../opal/class/opal_object.h /usr/include/assert.h \
../../../../opal/class/opal_list.h /usr/include/stdio.h \
/usr/include/libio.h /usr/include/_G_config.h /usr/include/wchar.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stdarg.h \
/usr/include/bits/sys_errlist.h \
../../../../opal/include/opal/sys/atomic.h \
../../../../opal/include/opal/sys/architecture.h \
../../../../opal/include/opal/sys/amd64/atomic.h \
../../../../opal/include/opal/sys/atomic_impl.h \
../../../../opal/threads/mutex.h ../../../../opal/util/output.h \
../../../../opal/threads/mutex_unix.h /usr/include/pthread.h \
/usr/include/sched.h /usr/include/bits/sched.h \
/usr/include/bits/setjmp.h ../../../../opal/mca/base/mca_base_var.h \
../../../../opal/class/opal_value_array.h \
../../../../opal/include/opal/constants.h \
../../../../opal/mca/base/mca_base_var_enum.h \
../../../../opal/mca/base/mca_base_framework.h \
../../../../opal/util/cmd_line.h ../../../../opal/mca/crs/crs.h \
../../../../opal/mca/crs/base/base.h \
../../../../opal/util/opal_environ.h ../../../../opal/runtime/opal_cr.h \
../../../../opal/mca/event/event.h /usr/include/sys/time.h \
../../../../opal/class/opal_pointer_array.h \
../../../../opal/mca/event/libevent2019/libevent2019.h \
/usr/include/signal.h /usr/include/bits/signum.h \
/usr/include/bits/siginfo.h /usr/include/bits/sigaction.h \
/usr/include/bits/sigcontext.h /usr/include/bits/sigstack.h \
/usr/include/sys/ucontext.h /usr/include/bits/sigthread.h \
../../../../opal/threads/threads.h ../../../../opal/threads/mutex.h \
../../../../opal/threads/condition.h \
../../../../opal/runtime/opal_progress.h \
../../../../opal/include/opal/prefetch.h ../../../../opal/util/argv.h \
../../../../opal/mca/event/base/base.h \
../../../../opal/mca/event/libevent2019/libevent/event.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event-config.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/evutil.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/util.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/opal_rename.h \
/usr/include/netdb.h /usr/include/netinet/in.h /usr/include/sys/socket.h \
/usr/include/sys/uio.h /usr/include/bits/socket.h \
/usr/include/bits/sockaddr.h /usr/include/asm/socket.h \
/usr/include/asm-generic/socket.h /usr/include/asm/sockios.h \
/usr/include/asm-generic/sockios.h /usr/include/bits/in.h \
/usr/include/rpc/netdb.h /usr/include/bits/netdb.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event_struct.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/keyvalq_struct.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event_compat.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/buffer.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/buffer_compat.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent_struct.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent_compat.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/tag.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/tag_compat.h \
../../../../opal/mca/event/libevent2019/libevent/include/event2/thread.h \
../../../../ompi/request/request.h \
../../../../ompi/class/ompi_free_list.h \
../../../../opal/class/opal_atomic_lifo.h \
../../../../opal/threads/condition.h \
../../../../ompi/include/ompi/constants.h \
../../../../orte/include/orte/constants.h \
../../../../orte/include/orte_config.h ../../../../opal/runtime/opal.h \
../../../../ompi/request/request_dbg.h ../../../../ompi/mca/pml/pml.h \
../../../../ompi/mca/coll/base/coll_tags.h \
../../../../ompi/communicator/communicator.h \
../../../../ompi/errhandler/errhandler.h \
../../../../ompi/runtime/mpiruntime.h \
../../../../opal/class/opal_hash_table.h \
../../../../ompi/errhandler/errhandler_predefined.h \
../../../../ompi/errhandler/errcode-internal.h \
../../../../ompi/group/group.h ../../../../ompi/proc/proc.h \
../../../../ompi/include/ompi/types.h ../../../../opal/dss/dss_types.h \
../../../../opal/mca/hwloc/hwloc.h \
../../../../opal/mca/hwloc/hwloc152/hwloc152.h \
../../../../opal/mca/hwloc/hwloc152/hwloc/include/hwloc.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/autogen/config.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/rename.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/bitmap.h \
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/helper.h \
../../../../ompi/mca/rte/rte.h ../../../../ompi/mca/rte/orte/rte_orte.h \
../../../../ompi/info/info.h ../../../../orte/include/orte/types.h \
../../../../orte/mca/errmgr/errmgr.h ../../../../opal/util/error.h \
../../../../orte/runtime/orte_globals.h \
../../../../opal/class/opal_ring_buffer.h \
../../../../opal/mca/hwloc/base/base.h \
../../../../orte/mca/plm/plm_types.h \
../../../../orte/mca/rml/rml_types.h ../../../../orte/util/proc_info.h \
../../../../orte/mca/grpcomm/grpcomm_types.h \
../../../../orte/util/name_fns.h ../../../../orte/util/error_strings.h \
../../../../orte/runtime/runtime.h ../../../../orte/runtime/orte_wait.h \
../../../../opal/dss/dss.h ../../../../orte/mca/grpcomm/grpcomm.h \
../../../../orte/mca/rml/base/rml_contact.h \
../../../../orte/mca/rml/rml.h ../../../../orte/mca/routed/routed.h \
../../../../orte/mca/routed/routed_types.h \
../../../../opal/class/opal_bitmap.h \
../../../../orte/runtime/orte_data_server.h \
../../../../ompi/group/group_dbg.h ../../../../ompi/op/op.h \
../../../../ompi/datatype/ompi_datatype.h \
../../../../opal/datatype/opal_convertor.h \
../../../../opal/datatype/opal_datatype.h \
../../../../ompi/mpi/fortran/base/fint_2_int.h \
../../../../ompi/mca/op/op.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_api.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_version.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_runtime_api.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_dte.h \
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/float.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_constants.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_constants.h \
coll_hcoll_debug.h ../../../../ompi/datatype/ompi_datatype_internal.h \
../../../../opal/datatype/opal_datatype_internal.h \
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_dte.h
../../../../ompi/include/ompi_config.h:
../../../../opal/include/opal_config.h:
../../../../opal/include/opal_config_top.h:
../../../../opal/include/opal_config_bottom.h:
../../../../opal/include/opal_config.h:
/usr/include/stdint.h:
/usr/include/features.h:
/usr/include/sys/cdefs.h:
/usr/include/bits/wordsize.h:
/usr/include/gnu/stubs.h:
/usr/include/gnu/stubs-64.h:
/usr/include/bits/wchar.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stdbool.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/limits.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/syslimits.h:
/usr/include/limits.h:
/usr/include/bits/posix1_lim.h:
/usr/include/bits/local_lim.h:
/usr/include/linux/limits.h:
/usr/include/bits/posix2_lim.h:
/usr/include/bits/xopen_lim.h:
/usr/include/bits/stdio_lim.h:
/usr/include/sys/param.h:
/usr/include/linux/param.h:
/usr/include/asm/param.h:
/usr/include/asm-generic/param.h:
/usr/include/sys/types.h:
/usr/include/bits/types.h:
/usr/include/bits/typesizes.h:
/usr/include/time.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stddef.h:
/usr/include/endian.h:
/usr/include/bits/endian.h:
/usr/include/bits/byteswap.h:
/usr/include/sys/select.h:
/usr/include/bits/select.h:
/usr/include/bits/sigset.h:
/usr/include/bits/time.h:
/usr/include/sys/sysmacros.h:
/usr/include/bits/pthreadtypes.h:
../../../../opal/util/malloc.h:
/usr/include/stdlib.h:
/usr/include/bits/waitflags.h:
/usr/include/bits/waitstatus.h:
/usr/include/xlocale.h:
/usr/include/alloca.h:
/usr/include/string.h:
/usr/include/unistd.h:
/usr/include/bits/posix_opt.h:
/usr/include/bits/environments.h:
/usr/include/bits/confname.h:
/usr/include/getopt.h:
/usr/include/sys/mman.h:
/usr/include/bits/mman.h:
/usr/include/fcntl.h:
/usr/include/bits/fcntl.h:
/usr/include/bits/uio.h:
/usr/include/bits/stat.h:
/usr/include/errno.h:
/usr/include/bits/errno.h:
/usr/include/linux/errno.h:
/usr/include/asm/errno.h:
/usr/include/asm-generic/errno.h:
/usr/include/asm-generic/errno-base.h:
coll_hcoll.h:
../../../../ompi/include/mpi.h:
../../../../opal/mca/mca.h:
../../../../ompi/mca/coll/coll.h:
../../../../opal/mca/base/base.h:
../../../../opal/class/opal_object.h:
/usr/include/assert.h:
../../../../opal/class/opal_list.h:
/usr/include/stdio.h:
/usr/include/libio.h:
/usr/include/_G_config.h:
/usr/include/wchar.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/stdarg.h:
/usr/include/bits/sys_errlist.h:
../../../../opal/include/opal/sys/atomic.h:
../../../../opal/include/opal/sys/architecture.h:
../../../../opal/include/opal/sys/amd64/atomic.h:
../../../../opal/include/opal/sys/atomic_impl.h:
../../../../opal/threads/mutex.h:
../../../../opal/util/output.h:
../../../../opal/threads/mutex_unix.h:
/usr/include/pthread.h:
/usr/include/sched.h:
/usr/include/bits/sched.h:
/usr/include/bits/setjmp.h:
../../../../opal/mca/base/mca_base_var.h:
../../../../opal/class/opal_value_array.h:
../../../../opal/include/opal/constants.h:
../../../../opal/mca/base/mca_base_var_enum.h:
../../../../opal/mca/base/mca_base_framework.h:
../../../../opal/util/cmd_line.h:
../../../../opal/mca/crs/crs.h:
../../../../opal/mca/crs/base/base.h:
../../../../opal/util/opal_environ.h:
../../../../opal/runtime/opal_cr.h:
../../../../opal/mca/event/event.h:
/usr/include/sys/time.h:
../../../../opal/class/opal_pointer_array.h:
../../../../opal/mca/event/libevent2019/libevent2019.h:
/usr/include/signal.h:
/usr/include/bits/signum.h:
/usr/include/bits/siginfo.h:
/usr/include/bits/sigaction.h:
/usr/include/bits/sigcontext.h:
/usr/include/bits/sigstack.h:
/usr/include/sys/ucontext.h:
/usr/include/bits/sigthread.h:
../../../../opal/threads/threads.h:
../../../../opal/threads/mutex.h:
../../../../opal/threads/condition.h:
../../../../opal/runtime/opal_progress.h:
../../../../opal/include/opal/prefetch.h:
../../../../opal/util/argv.h:
../../../../opal/mca/event/base/base.h:
../../../../opal/mca/event/libevent2019/libevent/event.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event-config.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/evutil.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/util.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/opal_rename.h:
/usr/include/netdb.h:
/usr/include/netinet/in.h:
/usr/include/sys/socket.h:
/usr/include/sys/uio.h:
/usr/include/bits/socket.h:
/usr/include/bits/sockaddr.h:
/usr/include/asm/socket.h:
/usr/include/asm-generic/socket.h:
/usr/include/asm/sockios.h:
/usr/include/asm-generic/sockios.h:
/usr/include/bits/in.h:
/usr/include/rpc/netdb.h:
/usr/include/bits/netdb.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event_struct.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/keyvalq_struct.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/event_compat.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/buffer.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/buffer_compat.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent_struct.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/bufferevent_compat.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/tag.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/event/libevent2019/libevent/include/event2/tag_compat.h:
../../../../opal/mca/event/libevent2019/libevent/include/event2/thread.h:
../../../../ompi/request/request.h:
../../../../ompi/class/ompi_free_list.h:
../../../../opal/class/opal_atomic_lifo.h:
../../../../opal/threads/condition.h:
../../../../ompi/include/ompi/constants.h:
../../../../orte/include/orte/constants.h:
../../../../orte/include/orte_config.h:
../../../../opal/runtime/opal.h:
../../../../ompi/request/request_dbg.h:
../../../../ompi/mca/pml/pml.h:
../../../../ompi/mca/coll/base/coll_tags.h:
../../../../ompi/communicator/communicator.h:
../../../../ompi/errhandler/errhandler.h:
../../../../ompi/runtime/mpiruntime.h:
../../../../opal/class/opal_hash_table.h:
../../../../ompi/errhandler/errhandler_predefined.h:
../../../../ompi/errhandler/errcode-internal.h:
../../../../ompi/group/group.h:
../../../../ompi/proc/proc.h:
../../../../ompi/include/ompi/types.h:
../../../../opal/dss/dss_types.h:
../../../../opal/mca/hwloc/hwloc.h:
../../../../opal/mca/hwloc/hwloc152/hwloc152.h:
../../../../opal/mca/hwloc/hwloc152/hwloc/include/hwloc.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/autogen/config.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/rename.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/bitmap.h:
/hpc/home/USERS/joshual/trunk_test/ompi-trunk/opal/mca/hwloc/hwloc152/hwloc/include/hwloc/helper.h:
../../../../ompi/mca/rte/rte.h:
../../../../ompi/mca/rte/orte/rte_orte.h:
../../../../ompi/info/info.h:
../../../../orte/include/orte/types.h:
../../../../orte/mca/errmgr/errmgr.h:
../../../../opal/util/error.h:
../../../../orte/runtime/orte_globals.h:
../../../../opal/class/opal_ring_buffer.h:
../../../../opal/mca/hwloc/base/base.h:
../../../../orte/mca/plm/plm_types.h:
../../../../orte/mca/rml/rml_types.h:
../../../../orte/util/proc_info.h:
../../../../orte/mca/grpcomm/grpcomm_types.h:
../../../../orte/util/name_fns.h:
../../../../orte/util/error_strings.h:
../../../../orte/runtime/runtime.h:
../../../../orte/runtime/orte_wait.h:
../../../../opal/dss/dss.h:
../../../../orte/mca/grpcomm/grpcomm.h:
../../../../orte/mca/rml/base/rml_contact.h:
../../../../orte/mca/rml/rml.h:
../../../../orte/mca/routed/routed.h:
../../../../orte/mca/routed/routed_types.h:
../../../../opal/class/opal_bitmap.h:
../../../../orte/runtime/orte_data_server.h:
../../../../ompi/group/group_dbg.h:
../../../../ompi/op/op.h:
../../../../ompi/datatype/ompi_datatype.h:
../../../../opal/datatype/opal_convertor.h:
../../../../opal/datatype/opal_datatype.h:
../../../../ompi/mpi/fortran/base/fint_2_int.h:
../../../../ompi/mca/op/op.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_api.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_version.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_runtime_api.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_dte.h:
/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/float.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_constants.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_constants.h:
coll_hcoll_debug.h:
../../../../ompi/datatype/ompi_datatype_internal.h:
../../../../opal/datatype/opal_datatype_internal.h:
/hpc/home/USERS/joshual/hcoll3/libhcoll/hcoll_install/include/hcoll/api/hcoll_dte.h:

1786
ompi/mca/coll/hcoll/Makefile Обычный файл

Разница между файлами не показана из-за своего большого размера Загрузить разницу

44
ompi/mca/coll/hcoll/Makefile.am Обычный файл
Просмотреть файл

@ -0,0 +1,44 @@
# -*- shell-script -*-
#
#
# Copyright (c) 2011 Mellanox Technologies. All rights reserved.
# $COPYRIGHT$
#
# Additional copyrights may follow
#
# $HEADER$
#
#
AM_CPPFLAGS = $(coll_hcoll_CPPFLAGS) -DCOLL_HCOLL_HOME=\"$(coll_hcoll_HOME)\" -I$(coll_hcoll_HOME)/include/hcoll/api
coll_hcoll_sources = \
coll_hcoll.h \
coll_hcoll_module.c \
coll_hcoll_component.c \
coll_hcoll_rte.c \
coll_hcoll_ops.c
# Make the output library in this directory, and name it either
# mca_<type>_<name>.la (for DSO builds) or libmca_<type>_<name>.la
# (for static builds).
if MCA_BUILD_ompi_coll_hcoll_DSO
component_noinst =
component_install = mca_coll_hcoll.la
else
component_noinst = libmca_coll_hcoll.la
component_install =
endif
mcacomponentdir = $(pkglibdir)
mcacomponent_LTLIBRARIES = $(component_install)
mca_coll_hcoll_la_SOURCES = $(coll_hcoll_sources)
mca_coll_hcoll_la_LIBADD = $(coll_hcoll_LIBS)
mca_coll_hcoll_la_LDFLAGS = -module -avoid-version $(coll_hcoll_LDFLAGS)
noinst_LTLIBRARIES = $(component_noinst)
libmca_coll_hcoll_la_SOURCES = $(coll_hcoll_sources)
libmca_coll_hcoll_la_LIBADD = $(coll_hcoll_LIBS)
libmca_coll_hcoll_la_LDFLAGS = -module -avoid-version $(coll_hcoll_LDFLAGS)

1786
ompi/mca/coll/hcoll/Makefile.in Обычный файл

Разница между файлами не показана из-за своего большого размера Загрузить разницу

148
ompi/mca/coll/hcoll/coll_hcoll.h Обычный файл
Просмотреть файл

@ -0,0 +1,148 @@
/**
Copyright (c) 2011 Mellanox Technologies. All rights reserved.
$COPYRIGHT$
Additional copyrights may follow
$HEADER$
*/
#ifndef MCA_COLL_FCA_H
#define MCA_COLL_FCA_H
#include "ompi_config.h"
#include "mpi.h"
#include "opal/mca/mca.h"
#include "ompi/mca/coll/coll.h"
#include "ompi/request/request.h"
#include "ompi/mca/pml/pml.h"
#include "ompi/mca/coll/base/coll_tags.h"
#include "ompi/communicator/communicator.h"
#include "ompi/op/op.h"
#include "orte/runtime/orte_globals.h"
#include "hcoll_api.h"
#include "hcoll_constants.h"
#include "coll_hcoll_debug.h"
BEGIN_C_DECLS
/**
* Globally exported structure
*/
typedef struct mca_coll_hcoll_ops_t {
int (*hcoll_init) (void);
int (*hcoll_finalize) (void);
void * (*create_hcoll_context)(void *);
int (*hcoll_barrier)(void *);
} mca_coll_hcoll_ops_t;
struct mca_coll_hcoll_component_t {
/** Base coll component */
mca_coll_base_component_2_0_0_t super;
/** MCA parameter: Priority of this component */
int hcoll_priority;
/** MCA parameter: Verbose level of this component */
int hcoll_verbose;
/** MCA parameter: Path to libfca.so */
char* hcoll_lib_path;
/** MCA parameter: Enable FCA */
int hcoll_enable;
/* FCA global stuff */
void *hcoll_lib_handle; /* FCA dynamic library */
mca_coll_hcoll_ops_t hcoll_ops;
ompi_free_list_t requests;
};
typedef struct mca_coll_hcoll_component_t mca_coll_hcoll_component_t;
OMPI_MODULE_DECLSPEC extern mca_coll_hcoll_component_t mca_coll_hcoll_component;
/**
* FCA enabled communicator
*/
struct mca_coll_hcoll_module_t {
mca_coll_base_module_t super;
MPI_Comm comm;
int rank;
void *hcoll_context;
/* Saved handlers - for fallback */
mca_coll_base_module_reduce_fn_t previous_reduce;
mca_coll_base_module_t *previous_reduce_module;
mca_coll_base_module_allreduce_fn_t previous_allreduce;
mca_coll_base_module_t *previous_allreduce_module;
mca_coll_base_module_bcast_fn_t previous_bcast;
mca_coll_base_module_t *previous_bcast_module;
mca_coll_base_module_barrier_fn_t previous_barrier;
mca_coll_base_module_t *previous_barrier_module;
mca_coll_base_module_allgather_fn_t previous_allgather;
mca_coll_base_module_t *previous_allgather_module;
mca_coll_base_module_allgatherv_fn_t previous_allgatherv;
mca_coll_base_module_t *previous_allgatherv_module;
mca_coll_base_module_alltoall_fn_t previous_alltoall;
mca_coll_base_module_t *previous_alltoall_module;
mca_coll_base_module_alltoallv_fn_t previous_alltoallv;
mca_coll_base_module_t *previous_alltoallv_module;
mca_coll_base_module_alltoallw_fn_t previous_alltoallw;
mca_coll_base_module_t *previous_alltoallw_module;
mca_coll_base_module_gather_fn_t previous_gather;
mca_coll_base_module_t *previous_gather_module;
mca_coll_base_module_gatherv_fn_t previous_gatherv;
mca_coll_base_module_t *previous_gatherv_module;
mca_coll_base_module_reduce_scatter_fn_t previous_reduce_scatter;
mca_coll_base_module_t *previous_reduce_scatter_module;
};
typedef struct mca_coll_hcoll_module_t mca_coll_hcoll_module_t;
OBJ_CLASS_DECLARATION(mca_coll_hcoll_module_t);
/* API functions */
int mca_coll_hcoll_init_query(bool enable_progress_threads, bool enable_mpi_threads);
mca_coll_base_module_t *mca_coll_hcoll_comm_query(struct ompi_communicator_t *comm, int *priority);
int mca_coll_hcoll_get_lib(void);
void hcoll_rte_fns_setup(void);
int mca_coll_hcoll_barrier(struct ompi_communicator_t *comm,
mca_coll_base_module_t *module);
int mca_coll_hcoll_bcast(void *buff, int count,
struct ompi_datatype_t *datatype, int root,
struct ompi_communicator_t *comm,
mca_coll_base_module_t *module);
int mca_coll_hcoll_allgather(void *sbuf, int scount,
struct ompi_datatype_t *sdtype,
void *rbuf, int rcount,
struct ompi_datatype_t *rdtype,
struct ompi_communicator_t *comm,
mca_coll_base_module_t *module);
int mca_coll_hcoll_allreduce(void *sbuf, void *rbuf, int count,
struct ompi_datatype_t *dtype,
struct ompi_op_t *op,
struct ompi_communicator_t *comm,
mca_coll_base_module_t *module);
int mca_coll_hcoll_alltoall(void *sbuf, int scount,
struct ompi_datatype_t *sdtype,
void* rbuf, int rcount,
struct ompi_datatype_t *rdtype,
struct ompi_communicator_t *comm,
mca_coll_base_module_t *module);
END_C_DECLS
#endif

245
ompi/mca/coll/hcoll/coll_hcoll_component.c Обычный файл
Просмотреть файл

@ -0,0 +1,245 @@
/**
Copyright (c) 2011 Mellanox Technologies. All rights reserved.
$COPYRIGHT$
Additional copyrights may follow
$HEADER$
*/
#include "ompi_config.h"
#include <stdio.h>
#include <dlfcn.h>
#include <libgen.h>
#include "coll_hcoll.h"
#include "opal/mca/installdirs/installdirs.h"
/*
* Public string showing the coll ompi_hcol component version number
*/
const char *mca_coll_hcoll_component_version_string =
"Open MPI HCOL collective MCA component version " OMPI_VERSION;
static int hcoll_open(void);
static int hcoll_close(void);
static int hcoll_register(void);
int mca_coll_hcoll_output = -1;
mca_coll_hcoll_component_t mca_coll_hcoll_component = {
/* First, the mca_component_t struct containing meta information
about the component itfca */
{
{
MCA_COLL_BASE_VERSION_2_0_0,
/* Component name and version */
"hcoll",
OMPI_MAJOR_VERSION,
OMPI_MINOR_VERSION,
OMPI_RELEASE_VERSION,
/* Component open and close functions */
hcoll_open,
hcoll_close,
NULL,
hcoll_register
},
{
/* The component is not checkpoint ready */
MCA_BASE_METADATA_PARAM_NONE
},
/* Initialization / querying functions */
mca_coll_hcoll_init_query,
mca_coll_hcoll_comm_query,
},
90,
0,
"",
1
};
int mca_coll_hcoll_get_lib(void)
{
memset(&mca_coll_hcoll_component.hcoll_ops,
0, sizeof(mca_coll_hcoll_component.hcoll_ops));
return OMPI_SUCCESS;
}
static void mca_coll_hcoll_close_lib(void)
{
}
/*
* * Local flags
* */
enum {
REGINT_NEG_ONE_OK = 0x01,
REGINT_GE_ZERO = 0x02,
REGINT_GE_ONE = 0x04,
REGINT_NONZERO = 0x08,
REGINT_MAX = 0x88
};
enum {
REGSTR_EMPTY_OK = 0x01,
REGSTR_MAX = 0x88
};
/*
* utility routine for string parameter registration
*/
static int reg_string(const char* param_name,
const char* deprecated_param_name,
const char* param_desc,
const char* default_value, char **storage,
int flags)
{
int index;
*storage = (char *) default_value;
index = mca_base_component_var_register(
&mca_coll_hcoll_component.super.collm_version,
param_name, param_desc, MCA_BASE_VAR_TYPE_STRING,
NULL, 0, 0, OPAL_INFO_LVL_9,
MCA_BASE_VAR_SCOPE_READONLY, storage);
if (NULL != deprecated_param_name) {
(void) mca_base_var_register_synonym(index,
"ompi", "coll", "hcoll", deprecated_param_name,
MCA_BASE_VAR_SYN_FLAG_DEPRECATED);
}
if (0 != (flags & REGSTR_EMPTY_OK) &&
(NULL == *storage || 0 == strlen(*storage))) {
opal_output(0, "Bad parameter value for parameter \"%s\"",
param_name);
return OMPI_ERR_BAD_PARAM;
}
return OMPI_SUCCESS;
}
/*
* Utility routine for integer parameter registration
*/
static int reg_int(const char* param_name,
const char* deprecated_param_name,
const char* param_desc,
int default_value, int *storage, int flags)
{
int index;
*storage = default_value;
index = mca_base_component_var_register(
&mca_coll_hcoll_component.super.collm_version,
param_name, param_desc, MCA_BASE_VAR_TYPE_INT,
NULL, 0, 0,OPAL_INFO_LVL_9,
MCA_BASE_VAR_SCOPE_READONLY, storage);
if (NULL != deprecated_param_name) {
(void) mca_base_var_register_synonym(index,
"ompi", "coll", "hcoll", deprecated_param_name,
MCA_BASE_VAR_SYN_FLAG_DEPRECATED);
}
if (0 != (flags & REGINT_NEG_ONE_OK) && -1 == *storage) {
return OMPI_SUCCESS;
}
if ((0 != (flags & REGINT_GE_ZERO) && *storage < 0) ||
(0 != (flags & REGINT_GE_ONE) && *storage < 1) ||
(0 != (flags & REGINT_NONZERO) && 0 == *storage)) {
opal_output(0, "Bad parameter value for parameter \"%s\"",
param_name);
return OMPI_ERR_BAD_PARAM;
}
return OMPI_SUCCESS;
}
static int hcoll_register(void)
{
int ret, tmp;
ret = OMPI_SUCCESS;
#define CHECK(expr) do { \
tmp = (expr); \
if (OMPI_SUCCESS != tmp) ret = tmp; \
} while (0)
CHECK(reg_int("priority",NULL,
"Priority of the hcol coll component",
90,
&mca_coll_hcoll_component.hcoll_priority,
0));
CHECK(reg_int("verbose", NULL,
"Verbose level of the hcol coll component",
0,
&mca_coll_hcoll_component.hcoll_verbose,
0));
CHECK(reg_int("enable",NULL,
"[1|0|] Enable/Disable HCOL",
1 /*enable by default*/,
&mca_coll_hcoll_component.hcoll_enable,
0));
CHECK(reg_string("library_path", NULL,
"HCOL /path/to/libhcol.so",
""COLL_HCOLL_HOME"/libhcol.so",
&mca_coll_hcoll_component.hcoll_lib_path,
0));
return ret;
}
static int hcoll_open(void)
{
int rc;
mca_coll_hcoll_output = opal_output_open(NULL);
opal_output_set_verbosity(mca_coll_hcoll_output, mca_coll_hcoll_component.hcoll_verbose);
hcoll_rte_fns_setup();
opal_progress_register(hcoll_progress_fn);
rc = hcoll_init();
if (HCOLL_SUCCESS != rc){
opal_progress_unregister(hcoll_progress_fn);
HCOL_VERBOSE(1,"Hcol library init failed");
return OMPI_ERROR;
}
return OMPI_SUCCESS;
}
static int hcoll_close(void)
{
int rc;
rc = hcoll_finalize();
opal_progress_unregister(hcoll_progress_fn);
if (HCOLL_SUCCESS != rc){
HCOL_VERBOSE(1,"Hcol library finalize failed");
return OMPI_ERROR;
}
return OMPI_SUCCESS;
}

35
ompi/mca/coll/hcoll/coll_hcoll_debug.h Обычный файл
Просмотреть файл

@ -0,0 +1,35 @@
/**
Copyright (c) 2011 Mellanox Technologies. All rights reserved.
$COPYRIGHT$
Additional copyrights may follow
$HEADER$
*/
#ifndef COLL_HCOL_DEBUG_H
#define COLL_HCOL_DEBUG_H
#include "ompi_config.h"
#pragma GCC system_header
#ifdef __BASE_FILE__
#define __HCOL_FILE__ __BASE_FILE__
#else
#define __HCOL_FILE__ __FILE__
#endif
#define HCOL_VERBOSE(level, format, ...) \
opal_output_verbose(level, mca_coll_hcoll_output, "%s:%d - %s() " format, \
__HCOL_FILE__, __LINE__, __FUNCTION__, ## __VA_ARGS__)
#define HCOL_ERROR(format, ... ) \
opal_output_verbose(0, mca_coll_hcoll_output, "Error: %s:%d - %s() " format, \
__HCOL_FILE__, __LINE__, __FUNCTION__, ## __VA_ARGS__)
#define HCOL_MODULE_VERBOSE(hcoll_module, level, format, ...) \
HCOL_VERBOSE(level, "[%p:%d] " format, (void*)(hcoll_module)->comm, (hcoll_module)->rank, ## __VA_ARGS__)
extern int mca_coll_hcoll_output;
#endif // COLL_HCOL_DEBUG_H

112
ompi/mca/coll/hcoll/coll_hcoll_dtypes.h Обычный файл
Просмотреть файл

@ -0,0 +1,112 @@
#ifndef COLL_HCOLL_DTYPES_H
#define COLL_HCOLL_DTYPES_H
/*Here comes the translation between ompi_datatype_t and dte_data_representation
This is not complete and takes into account the basic datatypes only
It is used to extract allreduce bcol functions where the arrhythmetics has to be done*/
#include "ompi/datatype/ompi_datatype.h"
#include "ompi/mca/op/op.h"
#include "hcoll_dte.h"
/*to keep this at hand: Ids of the basic opal_datatypes:
#define OPAL_DATATYPE_INT1 4
#define OPAL_DATATYPE_INT2 5
#define OPAL_DATATYPE_INT4 6
#define OPAL_DATATYPE_INT8 7
#define OPAL_DATATYPE_INT16 8
#define OPAL_DATATYPE_UINT1 9
#define OPAL_DATATYPE_UINT2 10
#define OPAL_DATATYPE_UINT4 11
#define OPAL_DATATYPE_UINT8 12
#define OPAL_DATATYPE_UINT16 13
#define OPAL_DATATYPE_FLOAT2 14
#define OPAL_DATATYPE_FLOAT4 15
#define OPAL_DATATYPE_FLOAT8 16
#define OPAL_DATATYPE_FLOAT12 17
#define OPAL_DATATYPE_FLOAT16 18
total 15 types
*/
static dte_data_representation_t* ompi_datatype_2_dte_data_rep[OPAL_DATATYPE_MAX_PREDEFINED] = {
&DTE_ZERO, /*OPAL_DATATYPE_LOOP 0 */
&DTE_ZERO, /*OPAL_DATATYPE_END_LOOP 1 */
&DTE_ZERO, /*OPAL_DATATYPE_LB 2 */
&DTE_ZERO, /*OPAL_DATATYPE_UB 3 */
&DTE_BYTE, /*OPAL_DATATYPE_INT1 4 */
&DTE_INT16, /*OPAL_DATATYPE_INT2 5 */
&DTE_INT32, /*OPAL_DATATYPE_INT4 6 */
&DTE_INT64, /*OPAL_DATATYPE_INT8 7 */
&DTE_INT128, /*OPAL_DATATYPE_INT16 8 */
&DTE_UBYTE, /*OPAL_DATATYPE_UINT1 9 */
&DTE_UINT16, /*OPAL_DATATYPE_UINT2 10 */
&DTE_UINT32, /*OPAL_DATATYPE_UINT4 11 */
&DTE_UINT64, /*OPAL_DATATYPE_UINT8 12 */
&DTE_UINT128, /*OPAL_DATATYPE_UINT16 13 */
&DTE_ZERO, /*OPAL_DATATYPE_FLOAT2 14 */
&DTE_FLOAT32, /*OPAL_DATATYPE_FLOAT4 15 */
&DTE_FLOAT64, /*OPAL_DATATYPE_FLOAT8 16 */
&DTE_ZERO, /*OPAL_DATATYPE_FLOAT12 17 */
&DTE_ZERO, /*OPAL_DATATYPE_FLOAT16 18 */
&DTE_ZERO, /*OPAL_DATATYPE_COMPLEX8 19 */
&DTE_ZERO, /*OPAL_DATATYPE_COMPLEX16 20 */
&DTE_ZERO, /*OPAL_DATATYPE_COMPLEX32 21 */
&DTE_ZERO, /*OPAL_DATATYPE_BOOL 22 */
&DTE_ZERO, /*OPAL_DATATYPE_WCHAR 23 */
&DTE_ZERO /*OPAL_DATATYPE_UNAVAILABLE 24 */
};
static dte_data_representation_t ompi_dtype_2_dte_dtype(ompi_datatype_t *dtype){
int ompi_type_id = dtype->id;
int opal_type_id = dtype->super.id;
if (OPAL_UNLIKELY( ompi_type_id < 0 ||
ompi_type_id >= OPAL_DATATYPE_MAX_PREDEFINED)){
return DTE_ZERO;
}
return *ompi_datatype_2_dte_data_rep[opal_type_id];
}
/*
enum ompi_op_type {
OMPI_OP_BASE_FORTRAN_NULL = 0,
OMPI_OP_BASE_FORTRAN_MAX,
OMPI_OP_BASE_FORTRAN_MIN,
OMPI_OP_BASE_FORTRAN_SUM,
OMPI_OP_BASE_FORTRAN_PROD,
OMPI_OP_BASE_FORTRAN_LAND,
OMPI_OP_BASE_FORTRAN_BAND,
OMPI_OP_BASE_FORTRAN_LOR,
OMPI_OP_BASE_FORTRAN_BOR,
OMPI_OP_BASE_FORTRAN_LXOR,
OMPI_OP_BASE_FORTRAN_BXOR,
OMPI_OP_BASE_FORTRAN_MAXLOC,
OMPI_OP_BASE_FORTRAN_MINLOC,
OMPI_OP_BASE_FORTRAN_REPLACE,
OMPI_OP_BASE_FORTRAN_OP_MAX
};*/
static hcoll_dte_op_t* ompi_op_2_hcoll_op[OMPI_OP_BASE_FORTRAN_OP_MAX] = {
&hcoll_dte_op_null,
&hcoll_dte_op_max,
&hcoll_dte_op_min,
&hcoll_dte_op_sum,
&hcoll_dte_op_prod,
&hcoll_dte_op_land,
&hcoll_dte_op_band,
&hcoll_dte_op_lor,
&hcoll_dte_op_bor,
&hcoll_dte_op_lxor,
&hcoll_dte_op_bxor,
&hcoll_dte_op_null,
&hcoll_dte_op_null,
&hcoll_dte_op_null
};
static hcoll_dte_op_t* ompi_op_2_hcolrte_op(ompi_op_t *op){
return ompi_op_2_hcoll_op[op->o_f_to_c_index];
}
#endif /* COLL_HCOLL_DTYPES_H */

215
ompi/mca/coll/hcoll/coll_hcoll_module.c Обычный файл
Просмотреть файл

@ -0,0 +1,215 @@
/**
Copyright (c) 2011 Mellanox Technologies. All rights reserved.
$COPYRIGHT$
Additional copyrights may follow
$HEADER$
*/
#include "ompi_config.h"
#include "coll_hcoll.h"
/*
* Initial query function that is invoked during MPI_INIT, allowing
* this module to indicate what level of thread support it provides.
*/
int mca_coll_hcoll_init_query(bool enable_progress_threads, bool enable_mpi_threads)
{
return OMPI_SUCCESS;
}
static void mca_coll_hcoll_module_clear(mca_coll_hcoll_module_t *hcoll_module)
{
hcoll_module->hcoll_context = NULL;
hcoll_module->previous_barrier = NULL;
hcoll_module->previous_bcast = NULL;
hcoll_module->previous_reduce = NULL;
hcoll_module->previous_allreduce = NULL;
hcoll_module->previous_allgather = NULL;
hcoll_module->previous_allgatherv = NULL;
hcoll_module->previous_gather = NULL;
hcoll_module->previous_gatherv = NULL;
hcoll_module->previous_alltoall = NULL;
hcoll_module->previous_alltoallv = NULL;
hcoll_module->previous_alltoallw = NULL;
hcoll_module->previous_reduce_scatter = NULL;
}
static void mca_coll_hcoll_module_construct(mca_coll_hcoll_module_t *hcoll_module)
{
mca_coll_hcoll_module_clear(hcoll_module);
}
static void mca_coll_hcoll_module_destruct(mca_coll_hcoll_module_t *hcoll_module)
{
OBJ_RELEASE(hcoll_module->previous_barrier_module);
OBJ_RELEASE(hcoll_module->previous_bcast_module);
OBJ_RELEASE(hcoll_module->previous_reduce_module);
OBJ_RELEASE(hcoll_module->previous_allreduce_module);
OBJ_RELEASE(hcoll_module->previous_allgather_module);
OBJ_RELEASE(hcoll_module->previous_allgatherv_module);
OBJ_RELEASE(hcoll_module->previous_gather_module);
OBJ_RELEASE(hcoll_module->previous_gatherv_module);
OBJ_RELEASE(hcoll_module->previous_alltoall_module);
OBJ_RELEASE(hcoll_module->previous_alltoallv_module);
OBJ_RELEASE(hcoll_module->previous_alltoallw_module);
OBJ_RELEASE(hcoll_module->previous_reduce_scatter_module);
hcoll_destroy_context(hcoll_module->hcoll_context);
mca_coll_hcoll_module_clear(hcoll_module);
}
#define HCOL_SAVE_PREV_COLL_API(__api) do {\
hcoll_module->previous_ ## __api = comm->c_coll.coll_ ## __api;\
hcoll_module->previous_ ## __api ## _module = comm->c_coll.coll_ ## __api ## _module;\
if (!comm->c_coll.coll_ ## __api || !comm->c_coll.coll_ ## __api ## _module) {\
return OMPI_ERROR;\
}\
OBJ_RETAIN(hcoll_module->previous_ ## __api ## _module);\
} while(0)
static int __save_coll_handlers(mca_coll_hcoll_module_t *hcoll_module)
{
ompi_communicator_t *comm = hcoll_module->comm;
HCOL_SAVE_PREV_COLL_API(barrier);
HCOL_SAVE_PREV_COLL_API(bcast);
HCOL_SAVE_PREV_COLL_API(reduce);
HCOL_SAVE_PREV_COLL_API(allreduce);
HCOL_SAVE_PREV_COLL_API(allgather);
HCOL_SAVE_PREV_COLL_API(allgatherv);
HCOL_SAVE_PREV_COLL_API(gather);
HCOL_SAVE_PREV_COLL_API(gatherv);
HCOL_SAVE_PREV_COLL_API(alltoall);
HCOL_SAVE_PREV_COLL_API(alltoallv);
HCOL_SAVE_PREV_COLL_API(alltoallw);
HCOL_SAVE_PREV_COLL_API(reduce_scatter);
return OMPI_SUCCESS;
}
/*
* Initialize module on the communicator
*/
static int mca_coll_hcoll_module_enable(mca_coll_base_module_t *module,
struct ompi_communicator_t *comm)
{
mca_coll_hcoll_module_t *hcoll_module = (mca_coll_hcoll_module_t*) module;
hcoll_module->comm = comm;
if (OMPI_SUCCESS != __save_coll_handlers(hcoll_module)){
HCOL_ERROR("coll_hcol: __save_coll_handlers failed");
return OMPI_ERROR;
}
hcoll_set_runtime_tag_offset(-100,mca_pml.pml_max_tag);
hcoll_module->hcoll_context =
hcoll_create_context((rte_grp_handle_t)comm);
if (NULL == hcoll_module->hcoll_context){
HCOL_VERBOSE(1,"hcoll_create_context returned NULL");
return OMPI_ERROR;
}
#if 0
{
printf("\033[33mrank %d: DOING EXTRA TEST\033[0m\n",ompi_comm_rank(comm));
fflush(stdout);
sleep(1);
rte_ec_handle_t handle;
rte_grp_handle_t world_group = hcoll_rte_functions.rte_world_group_fn();
int peer;
const int max_count = 10000000;
const int step = max_count/100;
int buf = 0;
int i;
rte_request_handle_t req;
peer = (ompi_comm_rank(comm)+1)%2;
hcoll_rte_functions.get_ec_handles_fn(1,&peer,world_group,&handle);
for (i=1; i<max_count+1; i++){
if (0 == ompi_comm_rank(comm)){
if (i/step*step == i){
printf("%d %% done...\n",i/step);fflush(stdout);
}
buf = 1;
hcoll_rte_functions.send_fn(DTE_INT32,1,&buf,handle,world_group,0,&req);
} else {
hcoll_rte_functions.recv_fn(DTE_INT32,1,&buf,handle,world_group,0,&req);
}
int completed = 0;
hcoll_rte_functions.test_fn(&req,&completed);
while(!completed){
hcoll_rte_functions.test_fn(&req,&completed);
/*hcoll_rte_functions.rte_progress_fn();*/
opal_progress();
}
}
printf("\033[32mrank %d: EXTRA TEST PASS\033[0m\n",ompi_comm_rank(comm));
fflush(stdout);
sleep(1);
}
#endif
hcoll_module->super.coll_barrier(comm,module);
return OMPI_SUCCESS;
}
/*
* Invoked when there's a new communicator that has been created.
* Look at the communicator and decide which set of functions and
* priority we want to return.
*/
mca_coll_base_module_t *
mca_coll_hcoll_comm_query(struct ompi_communicator_t *comm, int *priority)
{
mca_coll_base_module_t *module;
mca_coll_hcoll_module_t *hcoll_module;
*priority = 0;
module = NULL;
if (!mca_coll_hcoll_component.hcoll_enable){
goto exit;
}
hcoll_module = OBJ_NEW(mca_coll_hcoll_module_t);
if (!hcoll_module){
goto exit;
}
if (ompi_comm_size(comm) < 2 || OMPI_COMM_IS_INTER(comm)){
goto exit;
}
hcoll_module->super.coll_module_enable = mca_coll_hcoll_module_enable;
hcoll_module->super.coll_barrier = hcoll_collectives.coll_barrier ? mca_coll_hcoll_barrier : NULL;
hcoll_module->super.coll_bcast = hcoll_collectives.coll_bcast ? mca_coll_hcoll_bcast : NULL;
hcoll_module->super.coll_allgather = hcoll_collectives.coll_allgather ? mca_coll_hcoll_allgather : NULL;
hcoll_module->super.coll_allreduce = hcoll_collectives.coll_allreduce ? mca_coll_hcoll_allreduce : NULL;
hcoll_module->super.coll_alltoall = /*hcoll_collectives.coll_alltoall ? mca_coll_hcoll_alltoall : */ NULL;
*priority = mca_coll_hcoll_component.hcoll_priority;
module = &hcoll_module->super;
exit:
return module;
}
OBJ_CLASS_INSTANCE(mca_coll_hcoll_module_t,
mca_coll_base_module_t,
mca_coll_hcoll_module_construct,
mca_coll_hcoll_module_destruct);

178
ompi/mca/coll/hcoll/coll_hcoll_ops.c Обычный файл
Просмотреть файл

@ -0,0 +1,178 @@
/**
Copyright (c) 2011 Mellanox Technologies. All rights reserved.
$COPYRIGHT$
Additional copyrights may follow
$HEADER$
*/
#include "ompi_config.h"
#include "ompi/constants.h"
#include "coll_hcoll.h"
#include "hcoll_constants.h"
#include "coll_hcoll_dtypes.h"
#include "hcoll_dte.h"
int mca_coll_hcoll_barrier(struct ompi_communicator_t *comm,
mca_coll_base_module_t *module){
int rc;
HCOL_VERBOSE(20,"RUNNING HCOL BARRIER");
mca_coll_hcoll_module_t *hcoll_module = (mca_coll_hcoll_module_t*)module;
rc = hcoll_collectives.coll_barrier(hcoll_module->hcoll_context);
if (HCOLL_SUCCESS != rc){
HCOL_VERBOSE(20,"RUNNING FALLBACK BARRIER");
rc = hcoll_module->previous_barrier(comm,hcoll_module->previous_barrier_module);
}
return rc;
}
int mca_coll_hcoll_bcast(void *buff, int count,
struct ompi_datatype_t *datatype, int root,
struct ompi_communicator_t *comm,
mca_coll_base_module_t *module)
{
dte_data_representation_t dtype;
int rc;
HCOL_VERBOSE(20,"RUNNING HCOL BCAST");
mca_coll_hcoll_module_t *hcoll_module = (mca_coll_hcoll_module_t*)module;
dtype = ompi_dtype_2_dte_dtype(datatype);
if (OPAL_UNLIKELY(HCOL_DTE_IS_ZERO(dtype))){
/*If we are here then datatype is not simple predefined datatype */
/*In future we need to add more complex mapping to the dte_data_representation_t */
/* Now use fallback */
HCOL_VERBOSE(20,"Ompi_datatype is not supported: %s; calling fallback bcast;",datatype->super.name);
rc = hcoll_module->previous_bcast(buff,count,datatype,root,
comm,hcoll_module->previous_bcast_module);
return rc;
}
rc = hcoll_collectives.coll_bcast(buff,count,dtype,root,hcoll_module->hcoll_context);
if (HCOLL_SUCCESS != rc){
HCOL_VERBOSE(20,"RUNNING FALLBACK BCAST");
rc = hcoll_module->previous_bcast(buff,count,datatype,root,
comm,hcoll_module->previous_bcast_module);
}
return rc;
}
int mca_coll_hcoll_allgather(void *sbuf, int scount,
struct ompi_datatype_t *sdtype,
void *rbuf, int rcount,
struct ompi_datatype_t *rdtype,
struct ompi_communicator_t *comm,
mca_coll_base_module_t *module)
{
dte_data_representation_t stype;
dte_data_representation_t rtype;
int rc;
HCOL_VERBOSE(20,"RUNNING HCOL ALLGATHER");
mca_coll_hcoll_module_t *hcoll_module = (mca_coll_hcoll_module_t*)module;
stype = ompi_dtype_2_dte_dtype(sdtype);
rtype = ompi_dtype_2_dte_dtype(rdtype);
if (OPAL_UNLIKELY(HCOL_DTE_IS_ZERO(stype) || HCOL_DTE_IS_ZERO(rtype))){
/*If we are here then datatype is not simple predefined datatype */
/*In future we need to add more complex mapping to the dte_data_representation_t */
/* Now use fallback */
HCOL_VERBOSE(20,"Ompi_datatype is not supported: sdtype = %s, rdtype = %s; calling fallback allgather;",
sdtype->super.name,
rdtype->super.name);
rc = hcoll_module->previous_allgather(sbuf,scount,sdtype,
rbuf,rcount,rdtype,
comm,
hcoll_module->previous_bcast_module);
return rc;
}
rc = hcoll_collectives.coll_allgather(sbuf,scount,stype,rbuf,rcount,rtype,hcoll_module->hcoll_context);
if (HCOLL_SUCCESS != rc){
HCOL_VERBOSE(20,"RUNNING FALLBACK ALLGATHER");
rc = hcoll_module->previous_allgather(sbuf,scount,sdtype,
rbuf,rcount,rdtype,
comm,
hcoll_module->previous_bcast_module);
}
return rc;
}
int mca_coll_hcoll_allreduce(void *sbuf, void *rbuf, int count,
struct ompi_datatype_t *dtype,
struct ompi_op_t *op,
struct ompi_communicator_t *comm,
mca_coll_base_module_t *module)
{
dte_data_representation_t Dtype;
hcoll_dte_op_t *Op;
int rc;
HCOL_VERBOSE(20,"RUNNING HCOL ALLREDUCE");
mca_coll_hcoll_module_t *hcoll_module = (mca_coll_hcoll_module_t*)module;
Dtype = ompi_dtype_2_dte_dtype(dtype);
if (OPAL_UNLIKELY(HCOL_DTE_IS_ZERO(Dtype))){
/*If we are here then datatype is not simple predefined datatype */
/*In future we need to add more complex mapping to the dte_data_representation_t */
/* Now use fallback */
HCOL_VERBOSE(20,"Ompi_datatype is not supported: dtype = %s; calling fallback allreduce;",
dtype->super.name);
rc = hcoll_module->previous_allreduce(sbuf,rbuf,
count,dtype,op,
comm, hcoll_module->previous_bcast_module);
return rc;
}
Op = ompi_op_2_hcolrte_op(op);
if (OPAL_UNLIKELY(HCOL_DTE_OP_NULL == Op->id)){
/*If we are here then datatype is not simple predefined datatype */
/*In future we need to add more complex mapping to the dte_data_representation_t */
/* Now use fallback */
HCOL_VERBOSE(20,"ompi_op_t is not supported: op = %s; calling fallback allreduce;",
op->o_name);
rc = hcoll_module->previous_allreduce(sbuf,rbuf,
count,dtype,op,
comm, hcoll_module->previous_bcast_module);
return rc;
}
rc = hcoll_collectives.coll_allreduce(sbuf,rbuf,count,Dtype,Op,hcoll_module->hcoll_context);
if (HCOLL_SUCCESS != rc){
HCOL_VERBOSE(20,"RUNNING FALLBACK ALLREDUCE");
rc = hcoll_module->previous_allreduce(sbuf,rbuf,
count,dtype,op,
comm, hcoll_module->previous_bcast_module);
}
return rc;
}
int mca_coll_hcoll_alltoall(void *sbuf, int scount,
struct ompi_datatype_t *sdtype,
void* rbuf, int rcount,
struct ompi_datatype_t *rdtype,
struct ompi_communicator_t *comm,
mca_coll_base_module_t *module)
{
dte_data_representation_t stype;
dte_data_representation_t rtype;
int rc;
HCOL_VERBOSE(20,"RUNNING HCOL ALLTOALL");
mca_coll_hcoll_module_t *hcoll_module = (mca_coll_hcoll_module_t*)module;
stype = ompi_dtype_2_dte_dtype(sdtype);
rtype = ompi_dtype_2_dte_dtype(rdtype);
if (OPAL_UNLIKELY(HCOL_DTE_IS_ZERO(stype) || HCOL_DTE_IS_ZERO(rtype))){
/*If we are here then datatype is not simple predefined datatype */
/*In future we need to add more complex mapping to the dte_data_representation_t */
/* Now use fallback */
HCOL_VERBOSE(20,"Ompi_datatype is not supported: sdtype = %s, rdtype = %s; calling fallback alltoall;",
sdtype->super.name,
rdtype->super.name);
rc = hcoll_module->previous_alltoall(sbuf,scount,sdtype,
rbuf,rcount,rdtype,
comm,
hcoll_module->previous_bcast_module);
return rc;
}
rc = hcoll_collectives.coll_alltoall(sbuf,scount,stype,rbuf,rcount,rtype,hcoll_module->hcoll_context);
if (HCOLL_SUCCESS != rc){
HCOL_VERBOSE(20,"RUNNING FALLBACK ALLTOALL");
rc = hcoll_module->previous_alltoall(sbuf,scount,sdtype,
rbuf,rcount,rdtype,
comm,
hcoll_module->previous_bcast_module);
}
return rc;
}

415
ompi/mca/coll/hcoll/coll_hcoll_rte.c Обычный файл
Просмотреть файл

@ -0,0 +1,415 @@
/*
* Copyright (c) 2009-2012 Oak Ridge National Laboratory. All rights reserved.
* Copyright (c) 2009-2012 Mellanox Technologies. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
*
* $HEADER$
*/
/**
* @file
*
*/
#include "ompi_config.h"
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
#include <sys/types.h>
#ifdef HAVE_SYS_MMAN_H
#include <sys/mman.h>
#endif
#include <fcntl.h>
#include <errno.h>
#include "coll_hcoll.h"
#include "ompi/constants.h"
#include "ompi/communicator/communicator.h"
#include "ompi/datatype/ompi_datatype.h"
#include "ompi/datatype/ompi_datatype_internal.h"
#include "ompi/mca/pml/pml.h"
#define RTE_DEBUG 0
#include "hcoll_dte.h"
#include "hcoll_api.h"
#include "hcoll_constants.h"
/*
* Local functions
*/
static int recv_nb(dte_data_representation_t data ,
uint32_t count ,
void *buffer,
rte_ec_handle_t ,
rte_grp_handle_t ,
uint32_t tag,
rte_request_handle_t * req);
static int send_nb(dte_data_representation_t data,
uint32_t count,
void *buffer,
rte_ec_handle_t ec_h,
rte_grp_handle_t grp_h,
uint32_t tag, rte_request_handle_t *req);
static int test( rte_request_handle_t * request ,
int * completed );
static int ec_handle_compare( rte_ec_handle_t handle_1 ,
rte_grp_handle_t
group_handle_1 ,
rte_ec_handle_t handle_2 ,
rte_grp_handle_t
group_handle_2 );
static int get_ec_handles( int num_ec ,
int * ec_indexes ,
rte_grp_handle_t ,
rte_ec_handle_t * ec_handles );
static int get_my_ec(rte_grp_handle_t , rte_ec_handle_t *ec_handle);
static int group_size ( rte_grp_handle_t group );
static int my_rank (rte_grp_handle_t grp_h);
static int ec_on_local_node (rte_ec_handle_t ec, rte_grp_handle_t group);
static rte_grp_handle_t get_world_group_handle(void);
static uint32_t jobid(void);
static void progress(void){
opal_progress();
}
static void* get_coll_handle(void);
static int coll_handle_test(void* handle);
static void coll_handle_free(void *handle);
static void coll_handle_complete(void *handle);
/* Module Constructors */
static void init_module_fns(void){
hcoll_rte_functions.send_fn = send_nb;
hcoll_rte_functions.recv_fn = recv_nb;
hcoll_rte_functions.ec_cmp_fn = ec_handle_compare;
hcoll_rte_functions.get_ec_handles_fn = get_ec_handles;
hcoll_rte_functions.rte_group_size_fn = group_size;
hcoll_rte_functions.test_fn = test;
hcoll_rte_functions.rte_my_rank_fn = my_rank;
hcoll_rte_functions.rte_ec_on_local_node_fn = ec_on_local_node;
hcoll_rte_functions.rte_world_group_fn = get_world_group_handle;
hcoll_rte_functions.rte_jobid_fn = jobid;
hcoll_rte_functions.rte_progress_fn = progress;
hcoll_rte_functions.rte_get_coll_handle_fn = get_coll_handle;
hcoll_rte_functions.rte_coll_handle_test_fn = coll_handle_test;
hcoll_rte_functions.rte_coll_handle_free_fn = coll_handle_free;
hcoll_rte_functions.rte_coll_handle_complete_fn = coll_handle_complete;
}
void hcoll_rte_fns_setup(void)
{
init_module_fns();
OBJ_CONSTRUCT(&mca_coll_hcoll_component.requests, ompi_free_list_t);
ompi_free_list_init_ex_new(
&(mca_coll_hcoll_component.requests),
sizeof(ompi_request_t),
/* no special alignment needed */
8,
OBJ_CLASS(ompi_request_t),
/* no payload data */
0, 0,
/* NOTE: hack - need to parametrize this */
10,
50,
10,
/* No Mpool */
NULL,
NULL,
NULL
);
}
/* This one converts dte_general_representation data into regular iovec array which is
used in rml
*/
static inline int count_total_dte_repeat_entries(struct dte_data_representation_t *data){
unsigned int i;
struct dte_generalized_iovec_t * dte_iovec =
data->rep.general_rep->data_representation.data;
int total_entries_number = 0;
for (i=0; i< dte_iovec->repeat_count; i++){
total_entries_number += dte_iovec->repeat[i].n_elements;
}
return total_entries_number;
}
static int recv_nb(struct dte_data_representation_t data,
uint32_t count ,
void *buffer,
rte_ec_handle_t ec_h,
rte_grp_handle_t grp_h,
uint32_t tag,
rte_request_handle_t *req)
{
ompi_communicator_t *comm = (ompi_communicator_t *)grp_h;
#if RTE_DEBUG
assert(ec_h.group == grp_h);
#endif
if (! ec_h.handle) {
fprintf(stderr,"***Error in hcolrte_rml_recv_nb: wrong null argument: "
"ec_h.handle = %p, ec_h.rank = %d\n",ec_h.handle,ec_h.rank);
return 1;
}
if (HCOL_DTE_IS_INLINE(data)){
/*do inline nb recv*/
int rc;
size_t size;
ompi_request_t *ompi_req;
ompi_free_list_item_t *item;
if (!buffer && !HCOL_DTE_IS_ZERO(data)) {
fprintf(stderr, "***Error in hcolrte_rml_recv_nb: buffer pointer is NULL"
" for non DTE_ZERO INLINE data representation\n");
return 1;
}
size = (size_t)data.rep.in_line_rep.data_handle.in_line.packed_size*count/8;
HCOL_VERBOSE(30,"PML_IRECV: dest = %d: buf = %p: size = %u: comm = %p",
ec_h.rank, buffer, (unsigned int)size, (void *)comm);
if (MCA_PML_CALL(irecv(buffer,size,&(ompi_mpi_unsigned_char.dt),ec_h.rank,
tag,comm,&ompi_req)))
{
return 1;
}
req->data = (void *)ompi_req;
req->status = HCOLRTE_REQUEST_ACTIVE;
}else{
/*do iovec nb recv*/
int total_entries_number;
int i;
unsigned int j;
void *buf;
uint64_t len;
int repeat_count;
struct dte_struct_t * repeat;
if (NULL != buffer) {
/* We have a full data description & buffer pointer simultaneously.
It is ambiguous. Throw a warning since the user might have made a
mistake with data reps*/
fprintf(stderr,"Warning: buffer_pointer != NULL for NON-inline data representation: buffer_pointer is ignored.\n");
}
total_entries_number = count_total_dte_repeat_entries(&data);
repeat = data.rep.general_rep->data_representation.data->repeat;
repeat_count = data.rep.general_rep->data_representation.data->repeat_count;
for (i=0; i< repeat_count; i++){
for (j=0; j<repeat[i].n_elements; j++){
char *repeat_unit = (char *)&repeat[i];
buf = (void *)(repeat_unit+repeat[i].elements[j].base_offset);
len = repeat[i].elements[j].packed_size;
recv_nb(DTE_BYTE,len,buf,ec_h,grp_h,tag,req);
}
}
}
return HCOLL_SUCCESS;
}
static int send_nb( dte_data_representation_t data,
uint32_t count,
void *buffer,
rte_ec_handle_t ec_h,
rte_grp_handle_t grp_h,
uint32_t tag,
rte_request_handle_t *req)
{
ompi_communicator_t *comm = (ompi_communicator_t *)grp_h;
#if RTE_DEBUG
assert(ec_h.group == grp_h);
#endif
if (! ec_h.handle) {
fprintf(stderr,"***Error in hcolrte_rml_send_nb: wrong null argument: "
"ec_h.handle = %p, ec_h.rank = %d\n",ec_h.handle,ec_h.rank);
return 1;
}
if (HCOL_DTE_IS_INLINE(data)){
/*do inline nb recv*/
int rc;
size_t size;
ompi_request_t *ompi_req;
ompi_free_list_item_t *item;
if (!buffer && !HCOL_DTE_IS_ZERO(data)) {
fprintf(stderr, "***Error in hcolrte_rml_send_nb: buffer pointer is NULL"
" for non DTE_ZERO INLINE data representation\n");
return 1;
}
size = (size_t)data.rep.in_line_rep.data_handle.in_line.packed_size*count/8;
HCOL_VERBOSE(30,"PML_ISEND: dest = %d: buf = %p: size = %u: comm = %p",
ec_h.rank, buffer, (unsigned int)size, (void *)comm);
if (MCA_PML_CALL(isend(buffer,size,&(ompi_mpi_unsigned_char.dt),ec_h.rank,
tag,MCA_PML_BASE_SEND_STANDARD,comm,&ompi_req)))
{
return 1;
}
req->data = (void *)ompi_req;
req->status = HCOLRTE_REQUEST_ACTIVE;
}else{
int total_entries_number;
int i;
unsigned int j;
void *buf;
uint64_t len;
int repeat_count;
struct dte_struct_t * repeat;
if (NULL != buffer) {
/* We have a full data description & buffer pointer simultaneously.
It is ambiguous. Throw a warning since the user might have made a
mistake with data reps*/
fprintf(stderr,"Warning: buffer_pointer != NULL for NON-inline data representation: buffer_pointer is ignored.\n");
}
total_entries_number = count_total_dte_repeat_entries(&data);
repeat = data.rep.general_rep->data_representation.data->repeat;
repeat_count = data.rep.general_rep->data_representation.data->repeat_count;
for (i=0; i< repeat_count; i++){
for (j=0; j<repeat[i].n_elements; j++){
char *repeat_unit = (char *)&repeat[i];
buf = (void *)(repeat_unit+repeat[i].elements[j].base_offset);
len = repeat[i].elements[j].packed_size;
send_nb(DTE_BYTE,len,buf,ec_h,grp_h,tag,req);
}
}
}
return HCOLL_SUCCESS;
}
static int test( rte_request_handle_t * request ,
int * completed )
{
ompi_request_t * ompi_req = (ompi_request_t *)request->data;
if (HCOLRTE_REQUEST_ACTIVE != request->status){
*completed = true;
return HCOLL_SUCCESS;
}
/*ompi_request_test(&ompi_req,completed,MPI_STATUS_IGNORE); */
*completed = ompi_req->req_complete;
if (*completed){
ompi_request_free(&ompi_req);
request->status = HCOLRTE_REQUEST_DONE;
}
return HCOLL_SUCCESS;
}
static int ec_handle_compare( rte_ec_handle_t handle_1 ,
rte_grp_handle_t
group_handle_1 ,
rte_ec_handle_t handle_2 ,
rte_grp_handle_t
group_handle_2 )
{
return handle_1.handle == handle_2.handle;
}
static int get_ec_handles( int num_ec ,
int * ec_indexes ,
rte_grp_handle_t grp_h,
rte_ec_handle_t * ec_handles )
{
int i;
ompi_communicator_t *comm = (ompi_communicator_t *)grp_h;
for (i=0; i<num_ec; i++){
ompi_proc_t *proc = ompi_comm_peer_lookup(comm,ec_indexes[i]);
#if RTE_DEBUG
ec_handles[i].group = grp_h;
#endif
ec_handles[i].rank = ec_indexes[i];
ec_handles[i].handle = (void *)proc;
}
return HCOLL_SUCCESS;
}
static int get_my_ec ( rte_grp_handle_t grp_h, rte_ec_handle_t *ec_handle)
{
ompi_communicator_t *comm = (ompi_communicator_t *)grp_h;
int my_rank = ompi_comm_rank(comm);
ompi_proc_t *my_proc = ompi_comm_peer_lookup(comm,my_rank);
ec_handle->handle = (void *)my_proc;
ec_handle->rank = my_rank;
#if RTE_DEBUG
ec_handle->group = grp_h;
#endif
return HCOLL_SUCCESS;
}
static int group_size ( rte_grp_handle_t grp_h )
{
return ompi_comm_size((ompi_communicator_t *)grp_h);
}
static int my_rank (rte_grp_handle_t grp_h )
{
return ompi_comm_rank((ompi_communicator_t *)grp_h);
}
static int ec_on_local_node (rte_ec_handle_t ec, rte_grp_handle_t group){
ompi_proc_t *proc = (ompi_proc_t *)ec.handle;
return OPAL_PROC_ON_LOCAL_NODE(proc->proc_flags);
}
static rte_grp_handle_t get_world_group_handle(void)
{
return (rte_grp_handle_t)&ompi_mpi_comm_world.comm;
}
static uint32_t jobid(void){
return ORTE_PROC_MY_NAME->jobid;
}
static void* get_coll_handle(void)
{
int rc;
ompi_request_t *ompi_req;
ompi_free_list_item_t *item;
OMPI_FREE_LIST_WAIT(&(mca_coll_hcoll_component.requests),item,rc);
ompi_req = (ompi_request_t *)item;
OMPI_REQUEST_INIT(ompi_req,false);
if (OPAL_UNLIKELY(OMPI_SUCCESS != rc)) {
HCOL_ERROR("Wait for free list failed.\n");
return NULL;
}
return (void *)ompi_req;
}
static int coll_handle_test(void* handle)
{
ompi_request_t *ompi_req = (ompi_request_t *)handle;
return ompi_req->req_complete;
}
static void coll_handle_free(void *handle){
ompi_request_t *ompi_req = (ompi_request_t *)handle;
OMPI_FREE_LIST_RETURN(&mca_coll_hcoll_component.requests,
(ompi_free_list_item_t *)ompi_req);
}
static void coll_handle_complete(void *handle)
{
ompi_request_t *ompi_req = (ompi_request_t *)handle;
ompi_request_complete(ompi_req,true);
}

38
ompi/mca/coll/hcoll/configure.m4 Обычный файл
Просмотреть файл

@ -0,0 +1,38 @@
# -*- shell-script -*-
#
#
# Copyright (c) 2011 Mellanox Technologies. All rights reserved.
# $COPYRIGHT$
#
# Additional copyrights may follow
#
# $HEADER$
#
# MCA_coll_hcoll_CONFIG([action-if-can-compile],
# [action-if-cant-compile])
# ------------------------------------------------
AC_DEFUN([MCA_ompi_coll_hcoll_CONFIG],[
AC_CONFIG_FILES([ompi/mca/coll/hcoll/Makefile])
OMPI_CHECK_HCOLL([coll_hcoll],
[coll_hcoll_happy="yes"],
[coll_hcoll_happy="no"])
AS_IF([test "$coll_hcoll_happy" = "yes"],
[coll_hcoll_WRAPPER_EXTRA_LDFLAGS="$coll_hcoll_LDFLAGS"
coll_hcoll_CPPFLAGS="$coll_hcoll_CPPFLAGS"
coll_hcoll_WRAPPER_EXTRA_CPPFLAGS="$coll_hcoll_CPPFLAGS"
coll_hcoll_WRAPPER_EXTRA_LIBS="$coll_hcoll_LIBS"
$1],
[$2])
# substitute in the things needed to build fca
AC_SUBST([coll_hcoll_CFLAGS])
AC_SUBST([coll_hcoll_CPPFLAGS])
AC_SUBST([coll_hcoll_LDFLAGS])
AC_SUBST([coll_hcoll_LIBS])
AC_SUBST(coll_hcoll_HOME, "$ompi_check_hcoll_dir")
])dnl

12
ompi/mca/coll/hcoll/configure.params Обычный файл
Просмотреть файл

@ -0,0 +1,12 @@
# -*- shell-script -*-
#
# Copyright (c) 2009-2010 UT-Battelle, LLC. All rights reserved.
# Copyright (c) 2009-2010 Mellanox Technologies. All rights reserved.
# $COPYRIGHT$
#
# Additional copyrights may follow
#
# $HEADER$
#
PARAM_CONFIG_FILES=Makefile