This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Import liboffloadmic from upstream


On Mon, Aug 31, 2015 at 04:23:49PM +0300, Ilya Verbin wrote:
> Hi!
> 
> This patch contains an update for liboffloadmic, imported from
> <https://openmprtl.org/download>, version 20150803.
> 
> Two major new features are:
> 1. Unloading of loaded images from target device.
> 2. Callback support for asynchronous execution.
> 
> make check passed. Is it ok for trunk?

1) Is the library backwards ABI compatible?  Can you run e.g.
   libabigail abidiff in between the unpatched and patched version?
2) the *.map changes look wrong, when adding symbols to a symbol versioned
   shared library, new symbols shouldn't be added to existing symbol
   version, but to a new symbol version (so e.g. MYO_1.0.1 (or MYO_1.1)
   and COI_1.0.1 (or COI_1.1))

> liboffloadmic/
> 	* Makefile.am (liboffloadmic_host_la_DEPENDENCIES): Remove libcoi_host
> 	and libmyo-client.  liboffloadmic_host loads them dynamically.
> 	* Makefile.in: Regenerate.
> 	* doc/doxygen/header.tex: Merge from upstream, version 20150803
> 	<https://openmprtl.org/sites/default/files/liboffload_oss_20150803.tgz>.
> 	* runtime/cean_util.cpp: Likewise.
> 	* runtime/cean_util.h: Likewise.
> 	* runtime/coi/coi_client.cpp: Likewise.
> 	* runtime/coi/coi_client.h: Likewise.
> 	* runtime/coi/coi_server.cpp: Likewise.
> 	* runtime/coi/coi_server.h: Likewise.
> 	* runtime/compiler_if_host.cpp: Likewise.
> 	* runtime/compiler_if_host.h: Likewise.
> 	* runtime/compiler_if_target.cpp: Likewise.
> 	* runtime/compiler_if_target.h: Likewise.
> 	* runtime/dv_util.cpp: Likewise.
> 	* runtime/dv_util.h: Likewise.
> 	* runtime/liboffload_error.c: Likewise.
> 	* runtime/liboffload_error_codes.h: Likewise.
> 	* runtime/liboffload_msg.c: Likewise.
> 	* runtime/liboffload_msg.h: Likewise.
> 	* runtime/mic_lib.f90: Likewise.
> 	* runtime/offload.h: Likewise.
> 	* runtime/offload_common.cpp: Likewise.
> 	* runtime/offload_common.h: Likewise.
> 	* runtime/offload_engine.cpp: Likewise.
> 	* runtime/offload_engine.h: Likewise.
> 	* runtime/offload_env.cpp: Likewise.
> 	* runtime/offload_env.h: Likewise.
> 	* runtime/offload_host.cpp: Likewise.
> 	* runtime/offload_host.h: Likewise.
> 	* runtime/offload_iterator.h: Likewise.
> 	* runtime/offload_myo_host.cpp: Likewise.
> 	* runtime/offload_myo_host.h: Likewise.
> 	* runtime/offload_myo_target.cpp: Likewise.
> 	* runtime/offload_myo_target.h: Likewise.
> 	* runtime/offload_omp_host.cpp: Likewise.
> 	* runtime/offload_omp_target.cpp: Likewise.
> 	* runtime/offload_orsl.cpp: Likewise.
> 	* runtime/offload_orsl.h: Likewise.
> 	* runtime/offload_table.cpp: Likewise.
> 	* runtime/offload_table.h: Likewise.
> 	* runtime/offload_target.cpp: Likewise.
> 	* runtime/offload_target.h: Likewise.
> 	* runtime/offload_target_main.cpp: Likewise.
> 	* runtime/offload_timer.h: Likewise.
> 	* runtime/offload_timer_host.cpp: Likewise.
> 	* runtime/offload_timer_target.cpp: Likewise.
> 	* runtime/offload_trace.cpp: Likewise.
> 	* runtime/offload_trace.h: Likewise.
> 	* runtime/offload_util.cpp: Likewise.
> 	* runtime/offload_util.h: Likewise.
> 	* runtime/ofldbegin.cpp: Likewise.
> 	* runtime/ofldend.cpp: Likewise.
> 	* runtime/orsl-lite/include/orsl-lite.h: Likewise.
> 	* runtime/orsl-lite/lib/orsl-lite.c: Likewise.
> 	* runtime/use_mpss2.txt: Likewise.
> 	* include/coi/common/COIEngine_common.h: Merge from upstream, MPSS
> 	version 3.5
> 	<http://registrationcenter.intel.com/irc_nas/7445/mpss-src-3.5.tar>.
> 	* include/coi/common/COIEvent_common.h: Likewise.
> 	* include/coi/common/COIMacros_common.h: Likewise.
> 	* include/coi/common/COIPerf_common.h: Likewise.
> 	* include/coi/common/COIResult_common.h: Likewise.
> 	* include/coi/common/COISysInfo_common.h: Likewise.
> 	* include/coi/common/COITypes_common.h: Likewise.
> 	* include/coi/sink/COIBuffer_sink.h: Likewise.
> 	* include/coi/sink/COIPipeline_sink.h: Likewise.
> 	* include/coi/sink/COIProcess_sink.h: Likewise.
> 	* include/coi/source/COIBuffer_source.h: Likewise.
> 	* include/coi/source/COIEngine_source.h: Likewise.
> 	* include/coi/source/COIEvent_source.h: Likewise.
> 	* include/coi/source/COIPipeline_source.h: Likewise.
> 	* include/coi/source/COIProcess_source.h: Likewise.
> 	* include/myo/myo.h: Likewise.
> 	* include/myo/myoimpl.h: Likewise.
> 	* include/myo/myotypes.h: Likewise.
> 	* plugin/Makefile.am (myo_inc_dir): Remove.
> 	(libgomp_plugin_intelmic_la_CPPFLAGS): Do not define MYO_SUPPORT.
> 	(AM_CPPFLAGS): Likewise for offload_target_main.
> 	* plugin/Makefile.in: Regenerate.
> 	* runtime/emulator/coi_common.h: Update copyright years.
> 	(OFFLOAD_EMUL_KNC_NUM_ENV): Replace with ...
> 	(OFFLOAD_EMUL_NUM_ENV): ... this.
> 	(enum cmd_t): Add CMD_CLOSE_LIBRARY.
> 	* runtime/emulator/coi_device.cpp: Update copyright years.
> 	(COIProcessWaitForShutdown): Add space between string constants.
> 	Return handle to host in CMD_OPEN_LIBRARY.
> 	Support CMD_CLOSE_LIBRARY.
> 	* runtime/emulator/coi_device.h: Update copyright years.
> 	* runtime/emulator/coi_host.cpp: Update copyright years.
> 	(knc_engines_num): Replace with ...
> 	(num_engines): ... this.
> 	(init): Replace OFFLOAD_EMUL_KNC_NUM_ENV with OFFLOAD_EMUL_NUM_ENV.
> 	(COIEngineGetCount): Replace COI_ISA_KNC with COI_ISA_MIC, and
> 	knc_engines_num with num_engines.
> 	(COIEngineGetHandle): Likewise.
> 	(COIProcessCreateFromMemory): Add space between string constants.
> 	(COIProcessCreateFromFile): New function.
> 	(COIProcessLoadLibraryFromMemory): Rename arguments according to
> 	COIProcess_source.h.  Return handle, received from target.
> 	(COIProcessUnloadLibrary): New function.
> 	(COIPipelineClearCPUMask): New function.
> 	(COIPipelineSetCPUMask): New function.
> 	(COIEngineGetInfo): New function.
> 	* runtime/emulator/coi_host.h: Update copyright years.
> 	* runtime/emulator/coi_version_asm.h: Regenerate.
> 	* runtime/emulator/coi_version_linker_script.map: Regenerate.
> 	* runtime/emulator/myo_client.cpp: Update copyright years.
> 	* runtime/emulator/myo_service.cpp: Update copyright years.
> 	(myoArenaRelease): New function.
> 	(myoArenaAcquire): New function.
> 	(myoArenaAlignedFree): New function.
> 	(myoArenaAlignedMalloc): New function.
> 	* runtime/emulator/myo_service.h: Update copyright years.
> 	* runtime/emulator/myo_version_asm.h: Regenerate.
> 	* runtime/emulator/myo_version_linker_script.map: Regenerate.

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]