b2b4005150
2016-01-19 Martin Jambor <mjambor@suse.cz> Martin Liska <mliska@suse.cz> Michael Matz <matz@suse.de> libgomp/ * plugin/Makefrag.am: Add HSA plugin requirements. * plugin/configfrag.ac (HSA_RUNTIME_INCLUDE): New variable. (HSA_RUNTIME_LIB): Likewise. (HSA_RUNTIME_CPPFLAGS): Likewise. (HSA_RUNTIME_INCLUDE): New substitution. (HSA_RUNTIME_LIB): Likewise. (HSA_RUNTIME_LDFLAGS): Likewise. (hsa-runtime): New configure option. (hsa-runtime-include): Likewise. (hsa-runtime-lib): Likewise. (PLUGIN_HSA): New substitution variable. Fill HSA_RUNTIME_INCLUDE and HSA_RUNTIME_LIB according to the new configure options. (PLUGIN_HSA_CPPFLAGS): Likewise. (PLUGIN_HSA_LDFLAGS): Likewise. (PLUGIN_HSA_LIBS): Likewise. Check that we have access to HSA run-time. * libgomp-plugin.h (offload_target_type): New element OFFLOAD_TARGET_TYPE_HSA. * libgomp.h (gomp_target_task): New fields firstprivate_copies and args. (bool gomp_create_target_task): Updated. (gomp_device_descr): Extra parameter of run_func and async_run_func, new field can_run_func. * libgomp_g.h (GOMP_target_ext): Update prototype. * oacc-host.c (host_run): Added a new parameter args. * target.c (calculate_firstprivate_requirements): New function. (copy_firstprivate_data): Likewise. (gomp_target_fallback_firstprivate): Use them. (gomp_target_unshare_firstprivate): New function. (gomp_get_target_fn_addr): Allow returning NULL for shared memory devices. (GOMP_target): Do host fallback for all shared memory devices. Do not pass any args to plugins. (GOMP_target_ext): Introduce device-specific argument parameter args. Allow host fallback if device shares memory. Do not remap data if device has shared memory. (gomp_target_task_fn): Likewise. Also treat shared memory devices like host fallback for mappings. (GOMP_target_data): Treat shared memory devices like host fallback. (GOMP_target_data_ext): Likewise. (GOMP_target_update): Likewise. (GOMP_target_update_ext): Likewise. Also pass NULL as args to gomp_create_target_task. (GOMP_target_enter_exit_data): Likewise. (omp_target_alloc): Treat shared memory devices like host fallback. (omp_target_free): Likewise. (omp_target_is_present): Likewise. (omp_target_memcpy): Likewise. (omp_target_memcpy_rect): Likewise. (omp_target_associate_ptr): Likewise. (gomp_load_plugin_for_device): Also load can_run. * task.c (GOMP_PLUGIN_target_task_completion): Free firstprivate_copies. (gomp_create_target_task): Accept new argument args and store it to ttask. * plugin/plugin-hsa.c: New file. gcc/ * Makefile.in (OBJS): Add new source files. (GTFILES): Add hsa.c. * common.opt (disable_hsa): New variable. (-Whsa): New warning. * config.in (ENABLE_HSA): New. * configure.ac: Treat hsa differently from other accelerators. (OFFLOAD_TARGETS): Define ENABLE_OFFLOADING according to $enable_offloading. (ENABLE_HSA): Define ENABLE_HSA according to $enable_hsa. * doc/install.texi (Configuration): Document --with-hsa-runtime, --with-hsa-runtime-include, --with-hsa-runtime-lib and --with-hsa-kmt-lib. * doc/invoke.texi (-Whsa): Document. (hsa-gen-debug-stores): Likewise. * lto-wrapper.c (compile_images_for_offload_targets): Do not attempt to invoke offload compiler for hsa acclerator. * opts.c (common_handle_option): Determine whether HSA offloading should be performed. * params.def (PARAM_HSA_GEN_DEBUG_STORES): New parameter. * builtin-types.def (BT_FN_VOID_UINT_PTR_INT_PTR): New. (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR_INT_INT): Removed. (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR_PTR): New. * gimple-low.c (lower_stmt): Also handle GIMPLE_OMP_GRID_BODY. * gimple-pretty-print.c (dump_gimple_omp_for): Also handle GF_OMP_FOR_KIND_GRID_LOOP. (dump_gimple_omp_block): Also handle GIMPLE_OMP_GRID_BODY. (pp_gimple_stmt_1): Likewise. * gimple-walk.c (walk_gimple_stmt): Likewise. * gimple.c (gimple_build_omp_grid_body): New function. (gimple_copy): Also handle GIMPLE_OMP_GRID_BODY. * gimple.def (GIMPLE_OMP_GRID_BODY): New. * gimple.h (enum gf_mask): Added GF_OMP_PARALLEL_GRID_PHONY, GF_OMP_FOR_KIND_GRID_LOOP, GF_OMP_FOR_GRID_PHONY and GF_OMP_TEAMS_GRID_PHONY. (gimple_statement_omp_single_layout): Updated comments. (gimple_build_omp_grid_body): New function. (gimple_has_substatements): Also handle GIMPLE_OMP_GRID_BODY. (gimple_omp_for_grid_phony): New function. (gimple_omp_for_set_grid_phony): Likewise. (gimple_omp_parallel_grid_phony): Likewise. (gimple_omp_parallel_set_grid_phony): Likewise. (gimple_omp_teams_grid_phony): Likewise. (gimple_omp_teams_set_grid_phony): Likewise. (gimple_return_set_retbnd): Also handle GIMPLE_OMP_GRID_BODY. * omp-builtins.def (BUILT_IN_GOMP_OFFLOAD_REGISTER): New. (BUILT_IN_GOMP_OFFLOAD_UNREGISTER): Likewise. (BUILT_IN_GOMP_TARGET): Updated type. * omp-low.c: Include symbol-summary.h, hsa.h and params.h. (adjust_for_condition): New function. (get_omp_for_step_from_incr): Likewise. (extract_omp_for_data): Moved parts to adjust_for_condition and get_omp_for_step_from_incr. (build_outer_var_ref): Handle GIMPLE_OMP_GRID_BODY. (fixup_child_record_type): Bail out if receiver_decl is NULL. (scan_sharing_clauses): Handle OMP_CLAUSE__GRIDDIM_. (scan_omp_parallel): Do not create child functions for phony constructs. (check_omp_nesting_restrictions): Handle GIMPLE_OMP_GRID_BODY. (scan_omp_1_op): Checking assert we are not remapping to ERROR_MARK. Also also handle GIMPLE_OMP_GRID_BODY. (parallel_needs_hsa_kernel_p): New function. (expand_parallel_call): Register apprpriate parallel child functions as HSA kernels. (grid_launch_attributes_trees): New type. (grid_attr_trees): New variable. (grid_create_kernel_launch_attr_types): New function. (grid_insert_store_range_dim): Likewise. (grid_get_kernel_launch_attributes): Likewise. (get_target_argument_identifier_1): Likewise. (get_target_argument_identifier): Likewise. (get_target_argument_value): Likewise. (push_target_argument_according_to_value): Likewise. (get_target_arguments): Likewise. (expand_omp_target): Call get_target_arguments instead of looking up for teams and thread limit. (grid_expand_omp_for_loop): New function. (grid_arg_decl_map): New type. (grid_remap_kernel_arg_accesses): New function. (grid_expand_target_kernel_body): New function. (expand_omp): Call it. (lower_omp_for): Do not emit phony constructs. (lower_omp_taskreg): Do not emit phony constructs but create for them a temporary variable receiver_decl. (lower_omp_taskreg): Do not emit phony constructs. (lower_omp_teams): Likewise. (lower_omp_grid_body): New function. (lower_omp_1): Call it. (grid_reg_assignment_to_local_var_p): New function. (grid_seq_only_contains_local_assignments): Likewise. (grid_find_single_omp_among_assignments_1): Likewise. (grid_find_single_omp_among_assignments): Likewise. (grid_find_ungridifiable_statement): Likewise. (grid_target_follows_gridifiable_pattern): Likewise. (grid_remap_prebody_decls): Likewise. (grid_copy_leading_local_assignments): Likewise. (grid_process_kernel_body_copy): Likewise. (grid_attempt_target_gridification): Likewise. (grid_gridify_all_targets_stmt): Likewise. (grid_gridify_all_targets): Likewise. (execute_lower_omp): Call grid_gridify_all_targets. (make_gimple_omp_edges): Handle GIMPLE_OMP_GRID_BODY. * tree-core.h (omp_clause_code): Added OMP_CLAUSE__GRIDDIM_. (tree_omp_clause): Added union field dimension. * tree-pretty-print.c (dump_omp_clause): Handle OMP_CLAUSE__GRIDDIM_. * tree.c (omp_clause_num_ops): Added number of arguments of OMP_CLAUSE__GRIDDIM_. (omp_clause_code_name): Added name of OMP_CLAUSE__GRIDDIM_. (walk_tree_1): Handle OMP_CLAUSE__GRIDDIM_. * tree.h (OMP_CLAUSE_GRIDDIM_DIMENSION): New. (OMP_CLAUSE_SET_GRIDDIM_DIMENSION): Likewise. (OMP_CLAUSE_GRIDDIM_SIZE): Likewise. (OMP_CLAUSE_GRIDDIM_GROUP): Likewise. * passes.def: Schedule pass_ipa_hsa and pass_gen_hsail. * tree-pass.h (make_pass_gen_hsail): Declare. (make_pass_ipa_hsa): Likewise. * ipa-hsa.c: New file. * lto-section-in.c (lto_section_name): Add hsa section name. * lto-streamer.h (lto_section_type): Add hsa section. * timevar.def (TV_IPA_HSA): New. * hsa-brig-format.h: New file. * hsa-brig.c: New file. * hsa-dump.c: Likewise. * hsa-gen.c: Likewise. * hsa.c: Likewise. * hsa.h: Likewise. * toplev.c (compile_file): Call hsa_output_brig. * hsa-regalloc.c: New file. gcc/fortran/ * types.def (BT_FN_VOID_UINT_PTR_INT_PTR): New. (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR_INT_INT): Removed. (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR_PTR): New. gcc/lto/ * lto-partition.c: Include "hsa.h" (add_symbol_to_partition_1): Put hsa implementations into the same partition as host implementations. liboffloadmic/ * plugin/libgomp-plugin-intelmic.cpp (GOMP_OFFLOAD_async_run): New unused parameter. (GOMP_OFFLOAD_run): Likewise. include/ * gomp-constants.h (GOMP_DEVICE_HSA): New macro. (GOMP_VERSION_HSA): Likewise. (GOMP_TARGET_ARG_DEVICE_MASK): Likewise. (GOMP_TARGET_ARG_DEVICE_ALL): Likewise. (GOMP_TARGET_ARG_SUBSEQUENT_PARAM): Likewise. (GOMP_TARGET_ARG_ID_MASK): Likewise. (GOMP_TARGET_ARG_NUM_TEAMS): Likewise. (GOMP_TARGET_ARG_THREAD_LIMIT): Likewise. (GOMP_TARGET_ARG_VALUE_SHIFT): Likewise. (GOMP_TARGET_ARG_HSA_KERNEL_ATTRIBUTES): Likewise. From-SVN: r232549
468 lines
19 KiB
Plaintext
468 lines
19 KiB
Plaintext
2016-01-19 Martin Jambor <mjambor@suse.cz>
|
|
* plugin/libgomp-plugin-intelmic.cpp (GOMP_OFFLOAD_async_run): New
|
|
unused parameter.
|
|
(GOMP_OFFLOAD_run): Likewise.
|
|
|
|
2015-12-14 Ilya Verbin <ilya.verbin@intel.com>
|
|
|
|
* plugin/libgomp-plugin-intelmic.cpp (unregister_main_image): Remove.
|
|
(register_main_image): Do not call unregister_main_image at exit.
|
|
(GOMP_OFFLOAD_fini_device): Allow for OpenMP. Unregister main image.
|
|
|
|
2015-11-19 Ilya Verbin <ilya.verbin@intel.com>
|
|
|
|
* plugin/libgomp-plugin-intelmic.cpp (struct TargetImageDesc): New.
|
|
(ImgDescMap): New typedef.
|
|
(image_descriptors): New static var.
|
|
(init): Allocate image_descriptors.
|
|
(offload): Remove vars2 argument. Pass NULL to __offload_offload1
|
|
instead of vars2.
|
|
(unregister_main_image): New static function.
|
|
(register_main_image): Call unregister_main_image at exit.
|
|
(GOMP_OFFLOAD_init_device): Print device number, fix offload args.
|
|
(GOMP_OFFLOAD_fini_device): Likewise.
|
|
(get_target_table): Remove vd1g and vd2g, don't pass them to offload.
|
|
(offload_image): Remove declaration of the struct TargetImage.
|
|
Free table. Insert new descriptor into image_descriptors.
|
|
(GOMP_OFFLOAD_unload_image): Call __offload_unregister_image, free
|
|
the corresponding descriptor, and remove it from address_table and
|
|
image_descriptors.
|
|
(GOMP_OFFLOAD_alloc): Print device number, remove vd1g.
|
|
(GOMP_OFFLOAD_free): Likewise.
|
|
(GOMP_OFFLOAD_host2dev): Print device number, remove vd1g and vd2g.
|
|
(GOMP_OFFLOAD_dev2host): Likewise.
|
|
(GOMP_OFFLOAD_run): Print device number, remove vd1g.
|
|
* plugin/offload_target_main.cpp (__offload_target_table_p1): Remove
|
|
vd2, don't pass it to __offload_target_enter.
|
|
(__offload_target_table_p2): Likewise.
|
|
(__offload_target_alloc): Likewise.
|
|
(__offload_target_free): Likewise.
|
|
(__offload_target_host2tgt_p1): Likewise.
|
|
(__offload_target_host2tgt_p2): Likewise.
|
|
(__offload_target_tgt2host_p1): Likewise.
|
|
(__offload_target_tgt2host_p2): Likewise.
|
|
(__offload_target_run): Likewise.
|
|
(__offload_target_tgt2tgt): Remove vd1g, don't pass it to
|
|
__offload_target_enter.
|
|
|
|
2015-11-14 Ilya Verbin <ilya.verbin@intel.com>
|
|
|
|
* runtime/offload_host.cpp (task_completion_callback): New
|
|
variable.
|
|
(offload_proxy_task_completed_ooo): Call task_completion_callback.
|
|
(__offload_register_task_callback): New function.
|
|
* runtime/offload_host.h (__offload_register_task_callback): New
|
|
declaration.
|
|
* plugin/libgomp-plugin-intelmic.cpp (offload): Add async_data
|
|
argument, handle async offloading.
|
|
(register_main_image): Call register_main_image.
|
|
(GOMP_OFFLOAD_init_device, get_target_table, GOMP_OFFLOAD_alloc,
|
|
GOMP_OFFLOAD_free, GOMP_OFFLOAD_host2dev, GOMP_OFFLOAD_dev2host,
|
|
GOMP_OFFLOAD_dev2dev): Adjust offload callers.
|
|
(GOMP_OFFLOAD_async_run): New function.
|
|
(GOMP_OFFLOAD_run): Implement using GOMP_OFFLOAD_async_run.
|
|
|
|
2015-10-26 Ilya Verbin <ilya.verbin@intel.com>
|
|
Aleksander Ivanushenko <aleksander.ivanushenko@intel.com>
|
|
|
|
* runtime/offload_host.cpp (OffloadDescriptor::setup_misc_data): Use
|
|
calloc instead of malloc.
|
|
(__offload_fini_library): Set mic_engines_total to zero.
|
|
|
|
2015-10-13 Ilya Verbin <ilya.verbin@intel.com>
|
|
|
|
* plugin/libgomp-plugin-intelmic.cpp (GOMP_OFFLOAD_dev2dev): New
|
|
function.
|
|
* plugin/offload_target_main.cpp (__offload_target_tgt2tgt): New
|
|
static function, register it in liboffloadmic.
|
|
|
|
2015-10-08 Ilya Verbin <ilya.verbin@intel.com>
|
|
|
|
* runtime/offload_engine.cpp (Engine::init_process): Use strdup instead
|
|
of sizeof+malloc+sprintf, check for return value.
|
|
* runtime/offload_env.cpp (MicEnvVar::get_env_var_kind): Check for
|
|
strdup return value.
|
|
* runtime/offload_host.cpp (__offload_init_library_once): Check for
|
|
strdup return value. Fix size calculation of COI_HOST_THREAD_AFFINITY.
|
|
* runtime/emulator/coi_device.cpp (COIProcessWaitForShutdown): Check for
|
|
malloc return value.
|
|
|
|
2015-09-29 Ilya Verbin <ilya.verbin@intel.com>
|
|
|
|
* plugin/libgomp-plugin-intelmic.cpp (OFFLOAD_ACTIVE_WAIT_ENV): New
|
|
define.
|
|
(init): Set OFFLOAD_ACTIVE_WAIT env var to 0, if it is not set.
|
|
* runtime/emulator/coi_common.h (PIPE_HOST_PATH): Replace with ...
|
|
(PIPE_HOST2TGT_NAME): ... this.
|
|
(PIPE_TARGET_PATH): Replace with ...
|
|
(PIPE_TGT2HOST_NAME): ... this.
|
|
(MALLOCN): New define.
|
|
(READN): Likewise.
|
|
(WRITEN): Likewise.
|
|
(enum cmd_t): Replace CMD_RUN_FUNCTION with CMD_PIPELINE_RUN_FUNCTION.
|
|
Add CMD_PIPELINE_CREATE, CMD_PIPELINE_DESTROY.
|
|
* runtime/emulator/coi_device.cpp (engine_dir): New static variable.
|
|
(pipeline_thread_routine): New static function.
|
|
(COIProcessWaitForShutdown): Use global engine_dir instead of mic_dir.
|
|
Rename pipe_host and pipe_target to pipe_host2tgt and pipe_tgt2host.
|
|
If cmd is CMD_PIPELINE_CREATE, create a new thread for the pipeline.
|
|
Remove cmd == CMD_RUN_FUNCTION case.
|
|
* runtime/emulator/coi_device.h (COIERRORN): New define.
|
|
* runtime/emulator/coi_host.cpp: Include set, map, queue.
|
|
Replace typedefs with enums and structs.
|
|
(struct Function): Remove name, add num_buffers, bufs_size,
|
|
bufs_data_target, misc_data_len, misc_data, return_value_len,
|
|
return_value, completion_event.
|
|
(struct Callback): New.
|
|
(struct Process): Remove pipeline. Add pipe_host2tgt and pipe_tgt2host.
|
|
(struct Pipeline): Remove pipe_host and pipe_target. Add thread,
|
|
destroy, is_destroyed, pipe_host2tgt_path, pipe_tgt2host_path,
|
|
pipe_host2tgt, pipe_tgt2host, queue, process.
|
|
(max_pipeline_num): New static variable.
|
|
(pipelines): Likewise.
|
|
(max_event_num): Likewise.
|
|
(non_signalled_events): Likewise.
|
|
(errored_events): Likewise.
|
|
(callbacks): Likewise.
|
|
(cleanup): Do not check tmp_dirs before free.
|
|
(start_critical_section): New static function.
|
|
(finish_critical_section): Likewise.
|
|
(pipeline_is_destroyed): Likewise.
|
|
(maybe_invoke_callback): Likewise.
|
|
(signal_event): Likewise.
|
|
(get_event_result): Likewise.
|
|
(COIBufferCopy): Rename arguments according to headers. Add asserts.
|
|
Use process' main pipes, instead of pipeline's pipes. Signal completion
|
|
event.
|
|
(COIBufferCreate): Rename arguments according to headers. Add asserts.
|
|
Use process' main pipes, instead of pipeline's pipes.
|
|
(COIBufferCreateFromMemory): Rename arguments according to headers.
|
|
Add asserts.
|
|
(COIBufferDestroy): Rename arguments according to headers. Add asserts.
|
|
Use process' main pipes, instead of pipeline's pipes.
|
|
(COIBufferGetSinkAddress): Rename arguments according to headers.
|
|
Add asserts.
|
|
(COIBufferMap): Rename arguments according to headers. Add asserts.
|
|
Signal completion event.
|
|
(COIBufferRead): Likewise.
|
|
(COIBufferSetState): Likewise.
|
|
(COIBufferUnmap): Likewise.
|
|
(COIBufferWrite): Likewise.
|
|
(COIEngineGetCount): Add assert.
|
|
(COIEngineGetHandle): Rename arguments according to headers.
|
|
Add assert.
|
|
(COIEventWait): Rename arguments according to headers. Add asserts.
|
|
Implement waiting for events with zero or infinite timeout.
|
|
(COIEventRegisterCallback): New function.
|
|
(pipeline_thread_routine): New static function.
|
|
(COIPipelineCreate): Create a new thread for the pipeline.
|
|
(COIPipelineDestroy): Exit pipeline thread.
|
|
(COIPipelineRunFunction): Add the function into pipeline's queue,
|
|
instead running it here. Wait for it's completion in case of
|
|
synchronous execution.
|
|
(COIProcessCreateFromMemory): Rename arguments according to headers.
|
|
Add asserts. Create process' main pipes, instead of pipeline's pipes.
|
|
(COIProcessDestroy): Rename arguments according to headers.
|
|
Add asserts. Destroy all undestroyed pipelines.
|
|
(COIProcessGetFunctionHandles): Rename arguments according to headers.
|
|
Add asserts. Use process' main pipes, instead of pipeline's pipes.
|
|
Remove useless function names.
|
|
(COIProcessLoadLibraryFromMemory): Add asserts. Use process' main
|
|
pipes, instead of pipeline's pipes.
|
|
(COIProcessUnloadLibrary): Likewise.
|
|
(COIEngineGetInfo): Add assert.
|
|
* runtime/emulator/coi_host.h (COIERRORN): New define.
|
|
|
|
2015-09-28 Ilya Verbin <ilya.verbin@intel.com>
|
|
|
|
PR other/67652
|
|
* runtime/offload_engine.cpp (Engine::init_process): Fix sizeof.
|
|
|
|
2015-09-08 Ilya Verbin <ilya.verbin@intel.com>
|
|
|
|
* 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.
|
|
|
|
2015-08-24 Nathan Sidwell <nathan@codesourcery.com>
|
|
|
|
* plugin/libgomp-plugin-intelmic.cpp (GOMP_OFFLOAD_version): New.
|
|
(GOMP_OFFLOAD_load_image): Add version arg and check it.
|
|
(GOMP_OFFLOAD_unload_image): Likewise.
|
|
|
|
2015-08-24 Thomas Schwinge <thomas@codesourcery.com>
|
|
|
|
* plugin/Makefile.am (include_src_dir): Set.
|
|
[PLUGIN_HOST] (libgomp_plugin_intelmic_la_CPPFLAGS): Use it.
|
|
* plugin/Makefile.in: Regenerate.
|
|
* plugin/libgomp-plugin-intelmic.cpp: Include "gomp-constants.h".
|
|
|
|
2015-07-24 Micahel Darling <darlingm@gmail.com>
|
|
|
|
PR other/66259
|
|
* configure: Reflects renaming of configure.in to configure.ac
|
|
|
|
2015-07-17 Nathan Sidwell <nathan@acm.org>
|
|
Ilya Verbin <ilya.verbin@intel.com>
|
|
|
|
* plugin/libgomp-plugin-intelmic.cpp (ImgDevAddrMap): Constify.
|
|
(offload_image, GOMP_OFFLOAD_load_image,
|
|
GOMP_OFFLOAD_unload_image): Constify target data.
|
|
|
|
2015-07-08 Thomas Schwinge <thomas@codesourcery.com>
|
|
|
|
* plugin/Makefile.am (main_target_image.h): Change type of data
|
|
member of struct MainTargetImage to uint8_t.
|
|
* plugin/Makefile.in: Regenerate.
|
|
|
|
2015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
|
|
|
|
* Makefile.in: Regenerated with automake-1.11.6.
|
|
* aclocal.m4: Likewise.
|
|
* configure: Likewise.
|
|
* plugin/Makefile.in: Likewise.
|
|
* plugin/aclocal.m4: Likewise.
|
|
* plugin/configure: Likewise.
|
|
|
|
2015-04-06 Ilya Verbin <ilya.verbin@intel.com>
|
|
|
|
* plugin/libgomp-plugin-intelmic.cpp: Include map.
|
|
(AddrVect, DevAddrVect, ImgDevAddrMap): New typedefs.
|
|
(num_devices, num_images, address_table): New static vars.
|
|
(num_libraries, lib_descrs): Remove static vars.
|
|
(set_mic_lib_path): Rename to ...
|
|
(init): ... this. Allocate address_table and get num_devices.
|
|
(GOMP_OFFLOAD_get_num_devices): return num_devices.
|
|
(load_lib_and_get_table): Remove static function.
|
|
(offload_image): New static function.
|
|
(GOMP_OFFLOAD_get_table): Remove function.
|
|
(GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): New functions.
|
|
|
|
2015-01-15 Thomas Schwinge <thomas@codesourcery.com>
|
|
|
|
* plugin/libgomp-plugin-intelmic.cpp (GOMP_OFFLOAD_get_name)
|
|
(GOMP_OFFLOAD_get_caps, GOMP_OFFLOAD_fini_device): New functions.
|
|
|
|
2014-11-13 Ilya Verbin <ilya.verbin@intel.com>
|
|
Andrey Turetskiy <andrey.turetskiy@intel.com>
|
|
|
|
* Makefile.in: Regenerate.
|
|
* configure: Regenerate.
|
|
* configure.ac: Add subdirectory 'plugin'.
|
|
* plugin/Makefile.am: New file.
|
|
* plugin/Makefile.in: New file, generated by automake.
|
|
* plugin/aclocal.m4: New file, generated by aclocal.
|
|
* plugin/configure: New file, generated by autoconf.
|
|
* plugin/configure.ac: New file.
|
|
* plugin/libgomp-plugin-intelmic.cpp: New file.
|
|
* plugin/offload_target_main.cpp: New file.
|
|
|
|
2014-11-13 Kirill Yukhin <kirill.yukhin@intel.com>
|
|
|
|
Initial commit. Imported from upstream:
|
|
https://www.openmprtl.org/sites/default/files/liboffload_oss.tgz
|
|
* Makefile.am: New file.
|
|
* Makefile.in: New file, generated by automake.
|
|
* aclocal.m4: New file, generated by aclocal.
|
|
* configure: New file, generated by autoconf.
|
|
* configure.ac: New file.
|
|
* configure.tgt: Ditto.
|
|
* doc/doxygen/config: Ditto.
|
|
* doc/doxygen/header.tex: Ditto.
|
|
* include/coi/common/COIEngine_common.h: Ditto.
|
|
* include/coi/common/COIMacros_common.h: Ditto.
|
|
* include/coi/common/COIPerf_common.h : Ditto.
|
|
* include/coi/common/COIResult_common.h : Ditto.
|
|
* include/coi/common/COITypes_common.h: Ditto.
|
|
* include/coi/sink/COIBuffer_sink.h: Ditto.
|
|
* include/coi/sink/COIPipeline_sink.h: Ditto.
|
|
* include/coi/sink/COIProcess_sink.h: Ditto.
|
|
* include/coi/source/COIBuffer_source.h: Ditto.
|
|
* include/coi/source/COIEngine_source.h: Ditto.
|
|
* include/coi/source/COIEvent_source.h: Ditto.
|
|
* include/coi/source/COIPipeline_source.h: Ditto.
|
|
* include/coi/source/COIProcess_source.h: Ditto.
|
|
* include/myo/myo.h: Ditto.
|
|
* include/myo/myoimpl.h: Ditto.
|
|
* include/myo/myotypes.h: Ditto.
|
|
* liboffloadmic_host.spec.in: Ditto.
|
|
* liboffloadmic_target.spec.in: Ditto.
|
|
* runtime/cean_util.cpp: Ditto.
|
|
* runtime/cean_util.h: Ditto.
|
|
* runtime/coi/coi_client.cpp: Ditto.
|
|
* runtime/coi/coi_client.h: Ditto.
|
|
* runtime/coi/coi_server.cpp: Ditto.
|
|
* runtime/coi/coi_server.h: Ditto.
|
|
* runtime/compiler_if_host.cpp: Ditto.
|
|
* runtime/compiler_if_host.h: Ditto.
|
|
* runtime/compiler_if_target.cpp: Ditto.
|
|
* runtime/compiler_if_target.h: Ditto.
|
|
* runtime/dv_util.cpp: Ditto.
|
|
* runtime/dv_util.h: Ditto.
|
|
* runtime/emulator/coi_common.h: Ditto.
|
|
* runtime/emulator/coi_device.cpp: Ditto.
|
|
* runtime/emulator/coi_device.h: Ditto.
|
|
* runtime/emulator/coi_host.cpp: Ditto.
|
|
* runtime/emulator/coi_host.h: Ditto.
|
|
* runtime/emulator/coi_version_asm.h: Ditto.
|
|
* runtime/emulator/coi_version_linker_script.map: Ditto.
|
|
* runtime/emulator/myo_client.cpp: Ditto.
|
|
* runtime/emulator/myo_service.cpp: Ditto.
|
|
* runtime/emulator/myo_service.h: Ditto.
|
|
* runtime/emulator/myo_version_asm.h: Ditto.
|
|
* runtime/emulator/myo_version_linker_script.map: Ditto.
|
|
* runtime/liboffload_error.c: Ditto.
|
|
* runtime/liboffload_error_codes.h: Ditto.
|
|
* runtime/liboffload_msg.c: Ditto.
|
|
* runtime/liboffload_msg.h: Ditto.
|
|
* runtime/mic_lib.f90: Ditto.
|
|
* runtime/offload.h: Ditto.
|
|
* runtime/offload_common.cpp: Ditto.
|
|
* runtime/offload_common.h: Ditto.
|
|
* runtime/offload_engine.cpp: Ditto.
|
|
* runtime/offload_engine.h: Ditto.
|
|
* runtime/offload_env.cpp: Ditto.
|
|
* runtime/offload_env.h: Ditto.
|
|
* runtime/offload_host.cpp: Ditto.
|
|
* runtime/offload_host.h: Ditto.
|
|
* runtime/offload_myo_host.cpp: Ditto.
|
|
* runtime/offload_myo_host.h: Ditto.
|
|
* runtime/offload_myo_target.cpp: Ditto.
|
|
* runtime/offload_myo_target.h: Ditto.
|
|
* runtime/offload_omp_host.cpp: Ditto.
|
|
* runtime/offload_omp_target.cpp: Ditto.
|
|
* runtime/offload_orsl.cpp: Ditto.
|
|
* runtime/offload_orsl.h: Ditto.
|
|
* runtime/offload_table.cpp: Ditto.
|
|
* runtime/offload_table.h: Ditto.
|
|
* runtime/offload_target.cpp: Ditto.
|
|
* runtime/offload_target.h: Ditto.
|
|
* runtime/offload_target_main.cpp: Ditto.
|
|
* runtime/offload_timer.h: Ditto.
|
|
* runtime/offload_timer_host.cpp: Ditto.
|
|
* runtime/offload_timer_target.cpp: Ditto.
|
|
* runtime/offload_trace.cpp: Ditto.
|
|
* runtime/offload_trace.h: Ditto.
|
|
* runtime/offload_util.cpp: Ditto.
|
|
* runtime/offload_util.h: Ditto.
|
|
* runtime/ofldbegin.cpp: Ditto.
|
|
* runtime/ofldend.cpp: Ditto.
|
|
* runtime/orsl-lite/include/orsl-lite.h: Ditto.
|
|
* runtime/orsl-lite/lib/orsl-lite.c: Ditto.
|
|
* runtime/orsl-lite/version.txt: Ditto.
|
|
* runtime/use_mpss2.txt: Ditto.
|