<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/offload/src, branch users/MaskRay/spr/main.elf-orphan-placement-remove-hasinputsections-condition</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/'/>
<entry>
<title>[Libomptarget] Rework device initialization and image registration (#93844)</title>
<updated>2024-06-06T13:10:56+00:00</updated>
<author>
<name>Joseph Huber</name>
<email>huberjn@outlook.com</email>
</author>
<published>2024-06-06T13:10:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=435aa7663d56e7216ad148ede3a422675b5f2be1'/>
<id>435aa7663d56e7216ad148ede3a422675b5f2be1</id>
<content type='text'>
Summary:
Currently, we register images into a linear table according to the
logical OpenMP device identifier. We then initialize all of these images
as one block. This logic requires that images are compatible with *all*
devices instead of just the one that it can run on. This prevents us
from running on systems with heterogeneous devices (i.e. image 1 runs on
device 0 image 0 runs on device 1).

This patch reworks the logic by instead making the compatibility check a
per-device query. We then scan every device to see if it's compatible
and do it as they come.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Summary:
Currently, we register images into a linear table according to the
logical OpenMP device identifier. We then initialize all of these images
as one block. This logic requires that images are compatible with *all*
devices instead of just the one that it can run on. This prevents us
from running on systems with heterogeneous devices (i.e. image 1 runs on
device 0 image 0 runs on device 1).

This patch reworks the logic by instead making the compatibility check a
per-device query. We then scan every device to see if it's compatible
and do it as they come.</pre>
</div>
</content>
</entry>
<entry>
<title>[Offload][Fix] Fix lazy initialization with multiple images</title>
<updated>2024-05-28T15:51:53+00:00</updated>
<author>
<name>Joseph Huber</name>
<email>huberjn@outlook.com</email>
</author>
<published>2024-05-28T15:50:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=f284af4863640e6b68918aa23b14498c1b8e2245'/>
<id>f284af4863640e6b68918aa23b14498c1b8e2245</id>
<content type='text'>
Summary:
There was a bug here where we would initialize the plugin multiple times
when there were multiple images. Fix it by putting the `is_initliaized`
check later.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Summary:
There was a bug here where we would initialize the plugin multiple times
when there were multiple images. Fix it by putting the `is_initliaized`
check later.
</pre>
</div>
</content>
</entry>
<entry>
<title>[Offload] Only initialize a plugin if it is needed (#92765)</title>
<updated>2024-05-23T14:36:47+00:00</updated>
<author>
<name>Joseph Huber</name>
<email>huberjn@outlook.com</email>
</author>
<published>2024-05-23T14:36:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=21f3a6091f71f6651f604733bba65cdc97b0b6b4'/>
<id>21f3a6091f71f6651f604733bba65cdc97b0b6b4</id>
<content type='text'>
Summary:
Initializing the plugins requires initializing the runtime like CUDA or
HSA. This has a considerable overhead on most platforms, so we should
only actually initialize a plugin if it is needed by any image that is
loaded.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Summary:
Initializing the plugins requires initializing the runtime like CUDA or
HSA. This has a considerable overhead on most platforms, so we should
only actually initialize a plugin if it is needed by any image that is
loaded.</pre>
</div>
</content>
</entry>
<entry>
<title>[Offload][NFC] Remove 'libomptarget' message helpers (#92581)</title>
<updated>2024-05-17T18:24:32+00:00</updated>
<author>
<name>Joseph Huber</name>
<email>huberjn@outlook.com</email>
</author>
<published>2024-05-17T18:24:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=770d92830311b21c82ff12ba85bd131950db23d0'/>
<id>770d92830311b21c82ff12ba85bd131950db23d0</id>
<content type='text'>
Summary:
This isn't `libomptarget` anymore, and these messages were always
unnecessary because no other project uses these prefixed messages. The
effect of this is that no longer will the logs have `LIBOMPTARGET --` in
front of everything. We have a message stating when we start building
the offload project so it'll still be trivial to find.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Summary:
This isn't `libomptarget` anymore, and these messages were always
unnecessary because no other project uses these prefixed messages. The
effect of this is that no longer will the logs have `LIBOMPTARGET --` in
front of everything. We have a message stating when we start building
the offload project so it'll still be trivial to find.</pre>
</div>
</content>
</entry>
<entry>
<title>[Offload][NFC] Remove all trailing whitespace from offload/ (#92578)</title>
<updated>2024-05-17T18:15:04+00:00</updated>
<author>
<name>Joseph Huber</name>
<email>huberjn@outlook.com</email>
</author>
<published>2024-05-17T18:15:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=16bb7e89a995dfe8b14a8ddbce3da79c217e884a'/>
<id>16bb7e89a995dfe8b14a8ddbce3da79c217e884a</id>
<content type='text'>
Summary:
This patch cleans up the training whitespace in a bunch of tests and
CMake files. Most just in preparation for other cleanups.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Summary:
This patch cleans up the training whitespace in a bunch of tests and
CMake files. Most just in preparation for other cleanups.</pre>
</div>
</content>
</entry>
<entry>
<title>[Offload][NFC] Remove header license in CMake files (#92544)</title>
<updated>2024-05-17T14:05:03+00:00</updated>
<author>
<name>Joseph Huber</name>
<email>huberjn@outlook.com</email>
</author>
<published>2024-05-17T14:05:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c4017cda006c437c8400e280f8473aa65c302b40'/>
<id>c4017cda006c437c8400e280f8473aa65c302b40</id>
<content type='text'>
Summary:
No other project has these in the CMake itself, and they're wildly
inconsistent even within the project. These don't really add anything so
I think they should be removed.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Summary:
No other project has these in the CMake itself, and they're wildly
inconsistent even within the project. These don't really add anything so
I think they should be removed.</pre>
</div>
</content>
</entry>
<entry>
<title>[Libomptarget] Pass '-Werror=global-constructors' to the libomptarget build (#88531)</title>
<updated>2024-05-16T21:06:20+00:00</updated>
<author>
<name>Joseph Huber</name>
<email>huberjn@outlook.com</email>
</author>
<published>2024-05-16T21:06:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6d2219acabc1882508d695e23d444d3e1cae4ff3'/>
<id>6d2219acabc1882508d695e23d444d3e1cae4ff3</id>
<content type='text'>
Summary:
A runtime library should not have global constructors. Everything is now
expected to go through the init methods. This patch ensures that global
constructors will not accidentally be introduced.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Summary:
A runtime library should not have global constructors. Everything is now
expected to go through the init methods. This patch ensures that global
constructors will not accidentally be introduced.</pre>
</div>
</content>
</entry>
<entry>
<title>[Libomptarget] Remove requires information from plugin (#80345)</title>
<updated>2024-05-16T16:13:50+00:00</updated>
<author>
<name>Joseph Huber</name>
<email>huberjn@outlook.com</email>
</author>
<published>2024-05-16T16:13:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=3abd3d6e597cba5161f37fa0478382fc93a8c9fd'/>
<id>3abd3d6e597cba5161f37fa0478382fc93a8c9fd</id>
<content type='text'>
Summary:
Currently this is only used for the zero-copy handling. However, this
can easily be moved into `libomptarget` so that we do not need to bother
setting the requires flags in the plugin. The advantage here is that we
no longer need to do this for every device redundently. Additionally,
these requires flags are specifically OpenMP related, so they should
live in `libomptarget`.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Summary:
Currently this is only used for the zero-copy handling. However, this
can easily be moved into `libomptarget` so that we do not need to bother
setting the requires flags in the plugin. The advantage here is that we
no longer need to do this for every device redundently. Additionally,
these requires flags are specifically OpenMP related, so they should
live in `libomptarget`.</pre>
</div>
</content>
</entry>
<entry>
<title>[Offload][NFC] Fix warning messages in runtime</title>
<updated>2024-05-15T20:30:38+00:00</updated>
<author>
<name>Joseph Huber</name>
<email>huberjn@outlook.com</email>
</author>
<published>2024-05-15T20:30:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=81d20d861e48f5202c9f79b47dee244674fb9121'/>
<id>81d20d861e48f5202c9f79b47dee244674fb9121</id>
<content type='text'>
Summary:
These are lots of random warnings due to inconsistent initialization or
signedness.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Summary:
These are lots of random warnings due to inconsistent initialization or
signedness.
</pre>
</div>
</content>
</entry>
<entry>
<title>[Offload][NFC] Remove unused compiler definition from CMake</title>
<updated>2024-05-13T11:51:12+00:00</updated>
<author>
<name>Joseph Huber</name>
<email>huberjn@outlook.com</email>
</author>
<published>2024-05-13T11:51:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=32939a16bcb084c2572f201ee42613413784cf7e'/>
<id>32939a16bcb084c2572f201ee42613413784cf7e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
