GSoC project idea: Separate Host Process Offloading (was: Remove support for Intel MIC offloading)
Thomas Schwinge
thomas@codesourcery.com
Thu Feb 2 21:13:20 GMT 2023
Hi!
On 2023-02-01T16:12:07+0100, Martin Jambor <mjambor@suse.cz> wrote:
> On Thu, Oct 20 2022, Richard Biener via Gcc-patches wrote:
>>> Am 20.10.2022 um 14:41 schrieb Jakub Jelinek via Gcc-patches <gcc-patches@gcc.gnu.org>:
>>> On Thu, Oct 20, 2022 at 12:33:28PM +0000, Michael Matz wrote:
>>>>> On Thu, 20 Oct 2022, Thomas Schwinge wrote:
>>>>> This had been done in
>>>>> wwwdocs commit 5c7ecfb5627e412a3d142d8dc212f4cd39b3b73f
>>>>> "Document deprecation of OpenMP MIC offloading in GCC 12".
>>>>>
>>>>> I'm sad about this, because -- in theory -- such a plugin is very useful
>>>>> for offloading simulation/debugging (separate host/device memory spaces,
>>>>> allow sanitizers to run on offloaded code
>>>>
>>>> Yeah, I think that's a _very_ useful feature, but indeed ...
>>>>
>>>>> (like LLVM a while ago
>>>>> implemented), and so on), but all that doesn't help -- in practice -- if
>>>>> nobody is maintaining that code.
>>>>
>>>> ... it should then be somewhat maintained properly. Maybe the
>>>> MIC-specifics could be removed from the code, and it could be transformed
>>>> into a "null"-offload target, as example and testing vehicle (and implying
>>>> that such new liboffloadmic^H^H^Hnull would have its upstream in the GCC
>>>> repo). Alas, if noone is going to do that work removing is the right
>>>> choice.
>>>
>>> Yeah. But we really shouldn't need a large MIC specific library for that,
>>> everything should be implementable with a simple portable plugin that just
>>> forks + execs the offloading ELF and transfers data to/out of it etc.
>>> And the config/i386/intelmic-mkoffload etc. stuff would need to be done
>>> somewhere in generic code, such that we can do it for all targets.
>>> Also ideally by using just the normal lto1 with some special option that
>>> it acts as an offloading compiler, so that we don't need to bother with
>>> building a separate offloading compiler for it.
>>> True, everything guarded with #ifdef ACCEL_COMPILER etc. would need to
>>> change into code guarded with some option.
>>
>> Might be a nice GSoC project …
>
> I really think it could be.
Agreed! Something like: "Separate Host Process Offloading"! (Back
in October, I actually had made a TODO note to put this one onto
<https://gcc.gnu.org/wiki/SummerOfCode>, but so far...)
> Would any one of those involved in this
> thread be willing to mentor it?
I'd offer to co-mentor, but I'd rather not be the only one.
I'm now off for FOSDEM, but unless someone gets it done before, I'll cook
up a GSoC project idea text when I'm back, on Tuesday.
Grüße
Thomas
-----------------
Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955
More information about the Gcc-patches
mailing list