<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/104900>104900</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [AMDGPU] InstCombine results in performance drop in ROCM's rocRAND library in MI100
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            backend:AMDGPU
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          vg0204
      </td>
    </tr>
</table>

<pre>
    Instruction folding done in #94887 causes performance drop in the benchmark testcase for normal-doule for mt19937 engine. {in AMD MI100 device }

The expected result should be : 

```
benchmark_rocrand_generate
rocRAND: 300100 Runtime: 60241133 Device: AMD Instinct MI100

mt19937:
 normal-double:
      Throughput =  264.408 GB/s, Samples =   33.051 GSample/s, AvgTime (1 trial) =    3.782 ms, Time (all) =   75.641 ms, Size = 134217728
```

But, the mentioned PR causing drop in throughput as follows :
```
benchmark_rocrand_generate
rocRAND: 300100 Runtime: 60241133 Device: AMD Instinct MI100

mt19937:
  normal-double:
 Throughput =  248.093 GB/s, Samples =   31.012 GSample/s, AvgTime (1 trial) =    4.031 ms, Time (all) =   80.615 ms, Size = 134217728
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzMVE1v3DYQ_TXUZWCBX6uPgw5rL9bIwW3guOeAEmclNhS5IKlt019fUFIcA42L9hZBoMDhG-rNvIdRMZrRIXbkcE8Op0ItafKhu42UU1n0Xn_tPriYwjIk4x1cvNXGjaC9QzAOCBetbJoaBrVEjHDFcPFhVm5A0MFfMyZNCD26YZpV-AIJYxpURLj4AC5j7Z32i90Cc2JtK2pANxqHJZD63jg4Pp3g6QOjFDTezIBA6hOhJ0KP2_oyIeCfVxwSaggYF5sgTn6xGnoEIo7wFk0qur_r9pXa5-CHoJz-PKLDoBJu58EPz8dfTvkWQWkm8by4ZGbMkYpyyZgQcFqJ5VAmm1tm3JA21m9_vhdIxL5_04Le4vfw-rxMwS_jdF0SEHEC4JUsJW3g8Z7wcyT8AT6p-WoxbscgREkPDB636DfM8Ta-mBmB8IZBCkZZwts9A0RZNxzmFfgNpewbRH0oK8l2xCfzF65xJiRndc2bH7Z0W--XlHOy_DO6bB_U8PF5tcrqoVd_vFapYnaY9X_kin5Kud7T6x9SyaakrXhfKlZSxv-XVLKkgv2bVA0tK3b4r1IVuhO6Fa0qsGM1l0y0UtbF1DWaNQdkLUN-USha3ohKUq00Vqxp2qEwHadc0oZTWoua16Wqlbj0SnKqK1FxRiTFWRlbWnubSx_GwsS4YMeobCktrOrRxnXicN6r4Qs6TcTx-HR6_Pgb4TzPodDl3Lt-GSOR1JqY4vfbkkl2nVh7ymGT8MHPvXG4T4CYvfWjefT868MT4XWE3SpgTR9U-JrPVgMUS7DdlNI1Zn35mfDzaNK09OXgZ8LPmcf-ubsG_zsOifDzWmIk_LxXeev43wEAAP__DrGQqA">