<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/lib/Analysis/DevelopmentModeInlineAdvisor.cpp, branch users/mingmingl-llvm/samplefdo-profile-format</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>[mlgo] Fix bad merge of #156120 with 0082cf41de11 (#156134)</title>
<updated>2025-08-30T02:35:48+00:00</updated>
<author>
<name>Mircea Trofin</name>
<email>mtrofin@google.com</email>
</author>
<published>2025-08-30T02:35:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c168ce20f51cbc6b094aa1c75dc01efd42c4031f'/>
<id>c168ce20f51cbc6b094aa1c75dc01efd42c4031f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[mlgo][inliner] Fix potential concurrency issue in local ThinLTO + IR2Vec cases (#156120)</title>
<updated>2025-08-30T01:24:30+00:00</updated>
<author>
<name>Mircea Trofin</name>
<email>mtrofin@google.com</email>
</author>
<published>2025-08-30T01:24:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c878baf1d9a259cf0788ffa1cc5c9d065adcb4c5'/>
<id>c878baf1d9a259cf0788ffa1cc5c9d065adcb4c5</id>
<content type='text'>
The inliner's `FeatureMap` used to be immutable, but in IR2Vec cases we
don't know the shapes of the embedding vectors until later, so we need
to initialize it at the time we construct the advisor. In
non-distributed ThinLTO cases, for example, this means we'd mutate
shared state.

The feature set is also needed when constructing the underlying model
runner.

The alternative here is to postpone the creation of the model runner to
the time we construct the advisor, and also make the feature map a
member of the advisor object.

(issue identified by @efriedma-quic in PR #154541)</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The inliner's `FeatureMap` used to be immutable, but in IR2Vec cases we
don't know the shapes of the embedding vectors until later, so we need
to initialize it at the time we construct the advisor. In
non-distributed ThinLTO cases, for example, this means we'd mutate
shared state.

The feature set is also needed when constructing the underlying model
runner.

The alternative here is to postpone the creation of the model runner to
the time we construct the advisor, and also make the feature map a
member of the advisor object.

(issue identified by @efriedma-quic in PR #154541)</pre>
</div>
</content>
</entry>
<entry>
<title>[MLGO] Fix Development Build post f4665b</title>
<updated>2025-08-29T19:08:33+00:00</updated>
<author>
<name>Aiden Grossman</name>
<email>aidengrossman@google.com</email>
</author>
<published>2025-08-29T19:07:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=0082cf41de117025dd842cb641c83f64ce2d43e7'/>
<id>0082cf41de117025dd842cb641c83f64ce2d43e7</id>
<content type='text'>
This broke the development build which is only used by us and build on
the bots.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This broke the development build which is only used by us and build on
the bots.
</pre>
</div>
</content>
</entry>
<entry>
<title>[MLGO] Fix feature iteration using FeatureMap.size() instead of NumberOfFeatures (#146436)</title>
<updated>2025-07-01T00:44:23+00:00</updated>
<author>
<name>S. VenkataKeerthy</name>
<email>31350914+svkeerthy@users.noreply.github.com</email>
</author>
<published>2025-07-01T00:44:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a4f637d988bd495ff27634e1ab02f7156b01bd16'/>
<id>a4f637d988bd495ff27634e1ab02f7156b01bd16</id>
<content type='text'>
Due to the changes made in #143479, size of `FeatureMap` reflects the number of features used. Hence replacing `NumberOfFeatures` with `FeatureMap.size()` in the `DevelopmentModeInlineAdvisor`.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Due to the changes made in #143479, size of `FeatureMap` reflects the number of features used. Hence replacing `NumberOfFeatures` with `FeatureMap.size()` in the `DevelopmentModeInlineAdvisor`.</pre>
</div>
</content>
</entry>
<entry>
<title>[MLInlineAdvisor] Changing creation of TensorSpec in a type agnostic manner. (#141161)</title>
<updated>2025-05-23T03:10:30+00:00</updated>
<author>
<name>S. VenkataKeerthy</name>
<email>31350914+svkeerthy@users.noreply.github.com</email>
</author>
<published>2025-05-23T03:10:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=73b833005445b21886557aac3382d7fb429f8fdb'/>
<id>73b833005445b21886557aac3382d7fb429f8fdb</id>
<content type='text'>
This change would enable using `ir2vec::Embedding` which are float
vectors in ML Inliner.

Co-authored-by: svkeerthy &lt;venkatakeerthy@google.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change would enable using `ir2vec::Embedding` which are float
vectors in ML Inliner.

Co-authored-by: svkeerthy &lt;venkatakeerthy@google.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[NFC][mlgo] Fix imports post- PR#97023</title>
<updated>2024-06-28T15:08:19+00:00</updated>
<author>
<name>Mircea Trofin</name>
<email>mtrofin@google.com</email>
</author>
<published>2024-06-28T15:07:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=383419931e5a0d58e6bc1ea898db07b4a967e344'/>
<id>383419931e5a0d58e6bc1ea898db07b4a967e344</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[mlgo] remove `inlining_default` - unused feature</title>
<updated>2024-06-17T21:42:10+00:00</updated>
<author>
<name>Mircea Trofin</name>
<email>mtrofin@google.com</email>
</author>
<published>2024-06-17T21:37:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6b54ecca885f58cd9449535a8678d93144c62e4d'/>
<id>6b54ecca885f58cd9449535a8678d93144c62e4d</id>
<content type='text'>
The feature was only exposed for training and was immediately dropped on
the training side. It was bulk-copied into the test model generator, where
it had no effect (the generator always returns a constant).

In the AOT + test model case, since the test model returns a constant, all
input features are pruned by the AOT compiler, so its presence/absence
doesn't matter.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The feature was only exposed for training and was immediately dropped on
the training side. It was bulk-copied into the test model generator, where
it had no effect (the generator always returns a constant).

In the AOT + test model case, since the test model returns a constant, all
input features are pruned by the AOT compiler, so its presence/absence
doesn't matter.
</pre>
</div>
</content>
</entry>
<entry>
<title>[mlgo][nfc] Remove / fix vestigial references to Tensorflow</title>
<updated>2023-10-11T15:04:04+00:00</updated>
<author>
<name>Mircea Trofin</name>
<email>mtrofin@google.com</email>
</author>
<published>2023-10-11T15:02:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=28bb2193f6d3bb52f6bba9c64e392fe6c8be0f88'/>
<id>28bb2193f6d3bb52f6bba9c64e392fe6c8be0f88</id>
<content type='text'>
Some references in comments are unnecessarily specific, for historical reasons.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Some references in comments are unnecessarily specific, for historical reasons.
</pre>
</div>
</content>
</entry>
<entry>
<title>[mlgo][inl] Interactive mode: optionally tell the default decision</title>
<updated>2023-04-10T19:20:09+00:00</updated>
<author>
<name>Mircea Trofin</name>
<email>mtrofin@google.com</email>
</author>
<published>2023-04-07T17:36:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=ab2e7666c20d00a43b958e91c24991c973c81393'/>
<id>ab2e7666c20d00a43b958e91c24991c973c81393</id>
<content type='text'>
This helps training algorithms that may want to sometimes replicate the
default decision. The default decision is presented as an extra feature
called `inlining_default`. It's not normally exported to save
computation time.

This is only available in interactive mode.

Differential Revision: https://reviews.llvm.org/D147794
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This helps training algorithms that may want to sometimes replicate the
default decision. The default decision is presented as an extra feature
called `inlining_default`. It's not normally exported to save
computation time.

This is only available in interactive mode.

Differential Revision: https://reviews.llvm.org/D147794
</pre>
</div>
</content>
</entry>
<entry>
<title>Reland "[mlgo] Hook up the interactive runner to the mlgo-ed passes"</title>
<updated>2023-02-04T01:54:42+00:00</updated>
<author>
<name>Mircea Trofin</name>
<email>mtrofin@google.com</email>
</author>
<published>2023-02-04T01:03:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=5fd51fcba6a5d675e60a59b4ed6c449efe70f41b'/>
<id>5fd51fcba6a5d675e60a59b4ed6c449efe70f41b</id>
<content type='text'>
This reverts commit a772f0bb920a4957fb94dd8dbe45943809fd0ec3.

The main problem was related to how we handled `dbgs()` from the hosted
compiler. Using explicit `subprocess.communicate`, and not relying on
dbgs() being flushed until the end appears to address the problem.

Also some fixes due to some bots running older pythons, so we can't have
nice things like `int | float` and such.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit a772f0bb920a4957fb94dd8dbe45943809fd0ec3.

The main problem was related to how we handled `dbgs()` from the hosted
compiler. Using explicit `subprocess.communicate`, and not relying on
dbgs() being flushed until the end appears to address the problem.

Also some fixes due to some bots running older pythons, so we can't have
nice things like `int | float` and such.
</pre>
</div>
</content>
</entry>
</feed>
