]> git.ipfire.org Git - thirdparty/gcc.git/blob - liboffloadmic/ChangeLog
d974aa3098470f81f6c089cbd652248b9f17820e
[thirdparty/gcc.git] / liboffloadmic / ChangeLog
1 2015-09-29 Ilya Verbin <ilya.verbin@intel.com>
2
3 * plugin/libgomp-plugin-intelmic.cpp (OFFLOAD_ACTIVE_WAIT_ENV): New
4 define.
5 (init): Set OFFLOAD_ACTIVE_WAIT env var to 0, if it is not set.
6 * runtime/emulator/coi_common.h (PIPE_HOST_PATH): Replace with ...
7 (PIPE_HOST2TGT_NAME): ... this.
8 (PIPE_TARGET_PATH): Replace with ...
9 (PIPE_TGT2HOST_NAME): ... this.
10 (MALLOCN): New define.
11 (READN): Likewise.
12 (WRITEN): Likewise.
13 (enum cmd_t): Replace CMD_RUN_FUNCTION with CMD_PIPELINE_RUN_FUNCTION.
14 Add CMD_PIPELINE_CREATE, CMD_PIPELINE_DESTROY.
15 * runtime/emulator/coi_device.cpp (engine_dir): New static variable.
16 (pipeline_thread_routine): New static function.
17 (COIProcessWaitForShutdown): Use global engine_dir instead of mic_dir.
18 Rename pipe_host and pipe_target to pipe_host2tgt and pipe_tgt2host.
19 If cmd is CMD_PIPELINE_CREATE, create a new thread for the pipeline.
20 Remove cmd == CMD_RUN_FUNCTION case.
21 * runtime/emulator/coi_device.h (COIERRORN): New define.
22 * runtime/emulator/coi_host.cpp: Include set, map, queue.
23 Replace typedefs with enums and structs.
24 (struct Function): Remove name, add num_buffers, bufs_size,
25 bufs_data_target, misc_data_len, misc_data, return_value_len,
26 return_value, completion_event.
27 (struct Callback): New.
28 (struct Process): Remove pipeline. Add pipe_host2tgt and pipe_tgt2host.
29 (struct Pipeline): Remove pipe_host and pipe_target. Add thread,
30 destroy, is_destroyed, pipe_host2tgt_path, pipe_tgt2host_path,
31 pipe_host2tgt, pipe_tgt2host, queue, process.
32 (max_pipeline_num): New static variable.
33 (pipelines): Likewise.
34 (max_event_num): Likewise.
35 (non_signalled_events): Likewise.
36 (errored_events): Likewise.
37 (callbacks): Likewise.
38 (cleanup): Do not check tmp_dirs before free.
39 (start_critical_section): New static function.
40 (finish_critical_section): Likewise.
41 (pipeline_is_destroyed): Likewise.
42 (maybe_invoke_callback): Likewise.
43 (signal_event): Likewise.
44 (get_event_result): Likewise.
45 (COIBufferCopy): Rename arguments according to headers. Add asserts.
46 Use process' main pipes, instead of pipeline's pipes. Signal completion
47 event.
48 (COIBufferCreate): Rename arguments according to headers. Add asserts.
49 Use process' main pipes, instead of pipeline's pipes.
50 (COIBufferCreateFromMemory): Rename arguments according to headers.
51 Add asserts.
52 (COIBufferDestroy): Rename arguments according to headers. Add asserts.
53 Use process' main pipes, instead of pipeline's pipes.
54 (COIBufferGetSinkAddress): Rename arguments according to headers.
55 Add asserts.
56 (COIBufferMap): Rename arguments according to headers. Add asserts.
57 Signal completion event.
58 (COIBufferRead): Likewise.
59 (COIBufferSetState): Likewise.
60 (COIBufferUnmap): Likewise.
61 (COIBufferWrite): Likewise.
62 (COIEngineGetCount): Add assert.
63 (COIEngineGetHandle): Rename arguments according to headers.
64 Add assert.
65 (COIEventWait): Rename arguments according to headers. Add asserts.
66 Implement waiting for events with zero or infinite timeout.
67 (COIEventRegisterCallback): New function.
68 (pipeline_thread_routine): New static function.
69 (COIPipelineCreate): Create a new thread for the pipeline.
70 (COIPipelineDestroy): Exit pipeline thread.
71 (COIPipelineRunFunction): Add the function into pipeline's queue,
72 instead running it here. Wait for it's completion in case of
73 synchronous execution.
74 (COIProcessCreateFromMemory): Rename arguments according to headers.
75 Add asserts. Create process' main pipes, instead of pipeline's pipes.
76 (COIProcessDestroy): Rename arguments according to headers.
77 Add asserts. Destroy all undestroyed pipelines.
78 (COIProcessGetFunctionHandles): Rename arguments according to headers.
79 Add asserts. Use process' main pipes, instead of pipeline's pipes.
80 Remove useless function names.
81 (COIProcessLoadLibraryFromMemory): Add asserts. Use process' main
82 pipes, instead of pipeline's pipes.
83 (COIProcessUnloadLibrary): Likewise.
84 (COIEngineGetInfo): Add assert.
85 * runtime/emulator/coi_host.h (COIERRORN): New define.
86
87 2015-09-28 Ilya Verbin <ilya.verbin@intel.com>
88
89 PR other/67652
90 * runtime/offload_engine.cpp (Engine::init_process): Fix sizeof.
91
92 2015-09-08 Ilya Verbin <ilya.verbin@intel.com>
93
94 * Makefile.am (liboffloadmic_host_la_DEPENDENCIES): Remove libcoi_host
95 and libmyo-client. liboffloadmic_host loads them dynamically.
96 * Makefile.in: Regenerate.
97 * doc/doxygen/header.tex: Merge from upstream, version 20150803
98 <https://openmprtl.org/sites/default/files/liboffload_oss_20150803.tgz>.
99 * runtime/cean_util.cpp: Likewise.
100 * runtime/cean_util.h: Likewise.
101 * runtime/coi/coi_client.cpp: Likewise.
102 * runtime/coi/coi_client.h: Likewise.
103 * runtime/coi/coi_server.cpp: Likewise.
104 * runtime/coi/coi_server.h: Likewise.
105 * runtime/compiler_if_host.cpp: Likewise.
106 * runtime/compiler_if_host.h: Likewise.
107 * runtime/compiler_if_target.cpp: Likewise.
108 * runtime/compiler_if_target.h: Likewise.
109 * runtime/dv_util.cpp: Likewise.
110 * runtime/dv_util.h: Likewise.
111 * runtime/liboffload_error.c: Likewise.
112 * runtime/liboffload_error_codes.h: Likewise.
113 * runtime/liboffload_msg.c: Likewise.
114 * runtime/liboffload_msg.h: Likewise.
115 * runtime/mic_lib.f90: Likewise.
116 * runtime/offload.h: Likewise.
117 * runtime/offload_common.cpp: Likewise.
118 * runtime/offload_common.h: Likewise.
119 * runtime/offload_engine.cpp: Likewise.
120 * runtime/offload_engine.h: Likewise.
121 * runtime/offload_env.cpp: Likewise.
122 * runtime/offload_env.h: Likewise.
123 * runtime/offload_host.cpp: Likewise.
124 * runtime/offload_host.h: Likewise.
125 * runtime/offload_iterator.h: Likewise.
126 * runtime/offload_myo_host.cpp: Likewise.
127 * runtime/offload_myo_host.h: Likewise.
128 * runtime/offload_myo_target.cpp: Likewise.
129 * runtime/offload_myo_target.h: Likewise.
130 * runtime/offload_omp_host.cpp: Likewise.
131 * runtime/offload_omp_target.cpp: Likewise.
132 * runtime/offload_orsl.cpp: Likewise.
133 * runtime/offload_orsl.h: Likewise.
134 * runtime/offload_table.cpp: Likewise.
135 * runtime/offload_table.h: Likewise.
136 * runtime/offload_target.cpp: Likewise.
137 * runtime/offload_target.h: Likewise.
138 * runtime/offload_target_main.cpp: Likewise.
139 * runtime/offload_timer.h: Likewise.
140 * runtime/offload_timer_host.cpp: Likewise.
141 * runtime/offload_timer_target.cpp: Likewise.
142 * runtime/offload_trace.cpp: Likewise.
143 * runtime/offload_trace.h: Likewise.
144 * runtime/offload_util.cpp: Likewise.
145 * runtime/offload_util.h: Likewise.
146 * runtime/ofldbegin.cpp: Likewise.
147 * runtime/ofldend.cpp: Likewise.
148 * runtime/orsl-lite/include/orsl-lite.h: Likewise.
149 * runtime/orsl-lite/lib/orsl-lite.c: Likewise.
150 * runtime/use_mpss2.txt: Likewise.
151 * include/coi/common/COIEngine_common.h: Merge from upstream, MPSS
152 version 3.5
153 <http://registrationcenter.intel.com/irc_nas/7445/mpss-src-3.5.tar>.
154 * include/coi/common/COIEvent_common.h: Likewise.
155 * include/coi/common/COIMacros_common.h: Likewise.
156 * include/coi/common/COIPerf_common.h: Likewise.
157 * include/coi/common/COIResult_common.h: Likewise.
158 * include/coi/common/COISysInfo_common.h: Likewise.
159 * include/coi/common/COITypes_common.h: Likewise.
160 * include/coi/sink/COIBuffer_sink.h: Likewise.
161 * include/coi/sink/COIPipeline_sink.h: Likewise.
162 * include/coi/sink/COIProcess_sink.h: Likewise.
163 * include/coi/source/COIBuffer_source.h: Likewise.
164 * include/coi/source/COIEngine_source.h: Likewise.
165 * include/coi/source/COIEvent_source.h: Likewise.
166 * include/coi/source/COIPipeline_source.h: Likewise.
167 * include/coi/source/COIProcess_source.h: Likewise.
168 * include/myo/myo.h: Likewise.
169 * include/myo/myoimpl.h: Likewise.
170 * include/myo/myotypes.h: Likewise.
171 * plugin/Makefile.am (myo_inc_dir): Remove.
172 (libgomp_plugin_intelmic_la_CPPFLAGS): Do not define MYO_SUPPORT.
173 (AM_CPPFLAGS): Likewise for offload_target_main.
174 * plugin/Makefile.in: Regenerate.
175 * runtime/emulator/coi_common.h: Update copyright years.
176 (OFFLOAD_EMUL_KNC_NUM_ENV): Replace with ...
177 (OFFLOAD_EMUL_NUM_ENV): ... this.
178 (enum cmd_t): Add CMD_CLOSE_LIBRARY.
179 * runtime/emulator/coi_device.cpp: Update copyright years.
180 (COIProcessWaitForShutdown): Add space between string constants.
181 Return handle to host in CMD_OPEN_LIBRARY.
182 Support CMD_CLOSE_LIBRARY.
183 * runtime/emulator/coi_device.h: Update copyright years.
184 * runtime/emulator/coi_host.cpp: Update copyright years.
185 (knc_engines_num): Replace with ...
186 (num_engines): ... this.
187 (init): Replace OFFLOAD_EMUL_KNC_NUM_ENV with OFFLOAD_EMUL_NUM_ENV.
188 (COIEngineGetCount): Replace COI_ISA_KNC with COI_ISA_MIC, and
189 knc_engines_num with num_engines.
190 (COIEngineGetHandle): Likewise.
191 (COIProcessCreateFromMemory): Add space between string constants.
192 (COIProcessCreateFromFile): New function.
193 (COIProcessLoadLibraryFromMemory): Rename arguments according to
194 COIProcess_source.h. Return handle, received from target.
195 (COIProcessUnloadLibrary): New function.
196 (COIPipelineClearCPUMask): New function.
197 (COIPipelineSetCPUMask): New function.
198 (COIEngineGetInfo): New function.
199 * runtime/emulator/coi_host.h: Update copyright years.
200 * runtime/emulator/coi_version_asm.h: Regenerate.
201 * runtime/emulator/coi_version_linker_script.map: Regenerate.
202 * runtime/emulator/myo_client.cpp: Update copyright years.
203 * runtime/emulator/myo_service.cpp: Update copyright years.
204 (myoArenaRelease): New function.
205 (myoArenaAcquire): New function.
206 (myoArenaAlignedFree): New function.
207 (myoArenaAlignedMalloc): New function.
208 * runtime/emulator/myo_service.h: Update copyright years.
209 * runtime/emulator/myo_version_asm.h: Regenerate.
210 * runtime/emulator/myo_version_linker_script.map: Regenerate.
211
212 2015-08-24 Nathan Sidwell <nathan@codesourcery.com>
213
214 * plugin/libgomp-plugin-intelmic.cpp (GOMP_OFFLOAD_version): New.
215 (GOMP_OFFLOAD_load_image): Add version arg and check it.
216 (GOMP_OFFLOAD_unload_image): Likewise.
217
218 2015-08-24 Thomas Schwinge <thomas@codesourcery.com>
219
220 * plugin/Makefile.am (include_src_dir): Set.
221 [PLUGIN_HOST] (libgomp_plugin_intelmic_la_CPPFLAGS): Use it.
222 * plugin/Makefile.in: Regenerate.
223 * plugin/libgomp-plugin-intelmic.cpp: Include "gomp-constants.h".
224
225 2015-07-24 Micahel Darling <darlingm@gmail.com>
226
227 PR other/66259
228 * configure: Reflects renaming of configure.in to configure.ac
229
230 2015-07-17 Nathan Sidwell <nathan@acm.org>
231 Ilya Verbin <ilya.verbin@intel.com>
232
233 * plugin/libgomp-plugin-intelmic.cpp (ImgDevAddrMap): Constify.
234 (offload_image, GOMP_OFFLOAD_load_image,
235 GOMP_OFFLOAD_unload_image): Constify target data.
236
237 2015-07-08 Thomas Schwinge <thomas@codesourcery.com>
238
239 * plugin/Makefile.am (main_target_image.h): Change type of data
240 member of struct MainTargetImage to uint8_t.
241 * plugin/Makefile.in: Regenerate.
242
243 2015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
244
245 * Makefile.in: Regenerated with automake-1.11.6.
246 * aclocal.m4: Likewise.
247 * configure: Likewise.
248 * plugin/Makefile.in: Likewise.
249 * plugin/aclocal.m4: Likewise.
250 * plugin/configure: Likewise.
251
252 2015-04-06 Ilya Verbin <ilya.verbin@intel.com>
253
254 * plugin/libgomp-plugin-intelmic.cpp: Include map.
255 (AddrVect, DevAddrVect, ImgDevAddrMap): New typedefs.
256 (num_devices, num_images, address_table): New static vars.
257 (num_libraries, lib_descrs): Remove static vars.
258 (set_mic_lib_path): Rename to ...
259 (init): ... this. Allocate address_table and get num_devices.
260 (GOMP_OFFLOAD_get_num_devices): return num_devices.
261 (load_lib_and_get_table): Remove static function.
262 (offload_image): New static function.
263 (GOMP_OFFLOAD_get_table): Remove function.
264 (GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): New functions.
265
266 2015-01-15 Thomas Schwinge <thomas@codesourcery.com>
267
268 * plugin/libgomp-plugin-intelmic.cpp (GOMP_OFFLOAD_get_name)
269 (GOMP_OFFLOAD_get_caps, GOMP_OFFLOAD_fini_device): New functions.
270
271 2014-11-13 Ilya Verbin <ilya.verbin@intel.com>
272 Andrey Turetskiy <andrey.turetskiy@intel.com>
273
274 * Makefile.in: Regenerate.
275 * configure: Regenerate.
276 * configure.ac: Add subdirectory 'plugin'.
277 * plugin/Makefile.am: New file.
278 * plugin/Makefile.in: New file, generated by automake.
279 * plugin/aclocal.m4: New file, generated by aclocal.
280 * plugin/configure: New file, generated by autoconf.
281 * plugin/configure.ac: New file.
282 * plugin/libgomp-plugin-intelmic.cpp: New file.
283 * plugin/offload_target_main.cpp: New file.
284
285 2014-11-13 Kirill Yukhin <kirill.yukhin@intel.com>
286
287 Initial commit. Imported from upstream:
288 https://www.openmprtl.org/sites/default/files/liboffload_oss.tgz
289 * Makefile.am: New file.
290 * Makefile.in: New file, generated by automake.
291 * aclocal.m4: New file, generated by aclocal.
292 * configure: New file, generated by autoconf.
293 * configure.ac: New file.
294 * configure.tgt: Ditto.
295 * doc/doxygen/config: Ditto.
296 * doc/doxygen/header.tex: Ditto.
297 * include/coi/common/COIEngine_common.h: Ditto.
298 * include/coi/common/COIMacros_common.h: Ditto.
299 * include/coi/common/COIPerf_common.h : Ditto.
300 * include/coi/common/COIResult_common.h : Ditto.
301 * include/coi/common/COITypes_common.h: Ditto.
302 * include/coi/sink/COIBuffer_sink.h: Ditto.
303 * include/coi/sink/COIPipeline_sink.h: Ditto.
304 * include/coi/sink/COIProcess_sink.h: Ditto.
305 * include/coi/source/COIBuffer_source.h: Ditto.
306 * include/coi/source/COIEngine_source.h: Ditto.
307 * include/coi/source/COIEvent_source.h: Ditto.
308 * include/coi/source/COIPipeline_source.h: Ditto.
309 * include/coi/source/COIProcess_source.h: Ditto.
310 * include/myo/myo.h: Ditto.
311 * include/myo/myoimpl.h: Ditto.
312 * include/myo/myotypes.h: Ditto.
313 * liboffloadmic_host.spec.in: Ditto.
314 * liboffloadmic_target.spec.in: Ditto.
315 * runtime/cean_util.cpp: Ditto.
316 * runtime/cean_util.h: Ditto.
317 * runtime/coi/coi_client.cpp: Ditto.
318 * runtime/coi/coi_client.h: Ditto.
319 * runtime/coi/coi_server.cpp: Ditto.
320 * runtime/coi/coi_server.h: Ditto.
321 * runtime/compiler_if_host.cpp: Ditto.
322 * runtime/compiler_if_host.h: Ditto.
323 * runtime/compiler_if_target.cpp: Ditto.
324 * runtime/compiler_if_target.h: Ditto.
325 * runtime/dv_util.cpp: Ditto.
326 * runtime/dv_util.h: Ditto.
327 * runtime/emulator/coi_common.h: Ditto.
328 * runtime/emulator/coi_device.cpp: Ditto.
329 * runtime/emulator/coi_device.h: Ditto.
330 * runtime/emulator/coi_host.cpp: Ditto.
331 * runtime/emulator/coi_host.h: Ditto.
332 * runtime/emulator/coi_version_asm.h: Ditto.
333 * runtime/emulator/coi_version_linker_script.map: Ditto.
334 * runtime/emulator/myo_client.cpp: Ditto.
335 * runtime/emulator/myo_service.cpp: Ditto.
336 * runtime/emulator/myo_service.h: Ditto.
337 * runtime/emulator/myo_version_asm.h: Ditto.
338 * runtime/emulator/myo_version_linker_script.map: Ditto.
339 * runtime/liboffload_error.c: Ditto.
340 * runtime/liboffload_error_codes.h: Ditto.
341 * runtime/liboffload_msg.c: Ditto.
342 * runtime/liboffload_msg.h: Ditto.
343 * runtime/mic_lib.f90: Ditto.
344 * runtime/offload.h: Ditto.
345 * runtime/offload_common.cpp: Ditto.
346 * runtime/offload_common.h: Ditto.
347 * runtime/offload_engine.cpp: Ditto.
348 * runtime/offload_engine.h: Ditto.
349 * runtime/offload_env.cpp: Ditto.
350 * runtime/offload_env.h: Ditto.
351 * runtime/offload_host.cpp: Ditto.
352 * runtime/offload_host.h: Ditto.
353 * runtime/offload_myo_host.cpp: Ditto.
354 * runtime/offload_myo_host.h: Ditto.
355 * runtime/offload_myo_target.cpp: Ditto.
356 * runtime/offload_myo_target.h: Ditto.
357 * runtime/offload_omp_host.cpp: Ditto.
358 * runtime/offload_omp_target.cpp: Ditto.
359 * runtime/offload_orsl.cpp: Ditto.
360 * runtime/offload_orsl.h: Ditto.
361 * runtime/offload_table.cpp: Ditto.
362 * runtime/offload_table.h: Ditto.
363 * runtime/offload_target.cpp: Ditto.
364 * runtime/offload_target.h: Ditto.
365 * runtime/offload_target_main.cpp: Ditto.
366 * runtime/offload_timer.h: Ditto.
367 * runtime/offload_timer_host.cpp: Ditto.
368 * runtime/offload_timer_target.cpp: Ditto.
369 * runtime/offload_trace.cpp: Ditto.
370 * runtime/offload_trace.h: Ditto.
371 * runtime/offload_util.cpp: Ditto.
372 * runtime/offload_util.h: Ditto.
373 * runtime/ofldbegin.cpp: Ditto.
374 * runtime/ofldend.cpp: Ditto.
375 * runtime/orsl-lite/include/orsl-lite.h: Ditto.
376 * runtime/orsl-lite/lib/orsl-lite.c: Ditto.
377 * runtime/orsl-lite/version.txt: Ditto.
378 * runtime/use_mpss2.txt: Ditto.