# Entropy Filtering

**URL:** <https://pyfr.discourse.group/t/entropy-filtering/1095>\
**Category:** Cases\
**Tags:** config\
**Created:** [23 May 2024 05:20 UTC](https://pyfr.discourse.group/t/entropy-filtering/1095 "2024-05-23T05:20:03Z")\
**Posts on this page:** 15\
**Page:** 1

<div class="post-metadata">

**Author:** ![Frankx9](https://avatars.discourse-cdn.com/v4/letter/f/3e96dc/32.png) [@Frankx9](https://pyfr.discourse.group/u/Frankx9)\
**Post date:** [23 May 2024 05:20 UTC](https://pyfr.discourse.group/t/entropy-filtering/1095/1 "2024-05-23T05:20:03Z")

</div>

Hello,

I’ve been running some supersonic cases with the entropy filtering (PyFR = 1.15.0) and my simulation started to divergence, I was able to stabilise it with a very frequent soln-filter but the performance is suffering a lot from that. Do you have any further insight on the behaviour? Is it due to low grid resolution? Any idea on how to improve the speed of the calculations?  
Below the configuration sections of interest

```auto
[solver]
system = navier-stokes
order = 4
viscosity-correction = sutherland
shock-capturing = entropy-filter

[soln-filter]
nsteps = 10
cutoff = 0
order = 16
alpha = 36

[solver-entropy-filter]
d-min = 1e-6
p-min = 1e-6
e-tol = 1e-4

[solver-time-integrator]
scheme = tvd-rk3
dt = 3e-9
controller = none
tstart = 0 
tend = 0.02

[soln-filter]
nsteps = 10
cutoff = 0
order = 16
alpha = 36

[solver-interfaces]
riemann-solver = hllc
ldg-beta = 0.5
ldg-tau = 0.1

[solver-interfaces-quad]
soln-pts = gauss-legendre-lobatto
flux-pts = gauss-legendre-lobatto

[solver-elements-hex]
soln-pts = gauss-legendre-lobatto
flux-pts = gauss-legendre-lobatto

```

---

<div class="post-metadata">

**Author:** ![p.vincent](https://yyz2.discourse-cdn.com/free1/user_avatar/pyfr.discourse.group/p.vincent/32/225_2.png) [@p.vincent](https://pyfr.discourse.group/u/p.vincent)\
**Post date:** [23 May 2024 08:46 UTC](https://pyfr.discourse.group/t/entropy-filtering/1095/2 "2024-05-23T08:46:14Z")

</div>

Can you double check the version you are using. I’m not sure if entropy-filtering is an option in 1.15.0?

---

<div class="post-metadata">

**Author:** ![Frankx9](https://avatars.discourse-cdn.com/v4/letter/f/3e96dc/32.png) [@Frankx9](https://pyfr.discourse.group/u/Frankx9)\
**Post date:** [23 May 2024 10:44 UTC](https://pyfr.discourse.group/t/entropy-filtering/1095/3 "2024-05-23T10:44:58Z")

</div>

The \_version.py shows:

```auto
__version__ = '1.15.0'

```

---

<div class="post-metadata">

**Author:** ![Frankx9](https://avatars.discourse-cdn.com/v4/letter/f/3e96dc/32.png) [@Frankx9](https://pyfr.discourse.group/u/Frankx9)\
**Post date:** [29 May 2024 10:17 UTC](https://pyfr.discourse.group/t/entropy-filtering/1095/4 "2024-05-29T10:17:47Z")

</div>

Moreover, do you have any insight on its performance impact on the simulation? Can this impact be reduced somehow?

---

<div class="post-metadata">

**Author:** ![WillT](https://avatars.discourse-cdn.com/v4/letter/w/bc79bd/32.png) [@WillT](https://pyfr.discourse.group/u/WillT)\
**Post date:** [29 May 2024 12:37 UTC](https://pyfr.discourse.group/t/entropy-filtering/1095/5 "2024-05-29T12:37:25Z")

</div>

You’ll want to upgrade to version 2.0.2 as that is the latest stable version, and prior versions don’t support entropy filtering.

---

<div class="post-metadata">

**Author:** ![Frankx9](https://avatars.discourse-cdn.com/v4/letter/f/3e96dc/32.png) [@Frankx9](https://pyfr.discourse.group/u/Frankx9)\
**Post date:** [29 May 2024 12:38 UTC](https://pyfr.discourse.group/t/entropy-filtering/1095/6 "2024-05-29T12:38:37Z")

</div>

The main issue is the rocm dependency that is not supported by our cluster. Any idea on how to go around it?

---

<div class="post-metadata">

**Author:** ![WillT](https://avatars.discourse-cdn.com/v4/letter/w/bc79bd/32.png) [@WillT](https://pyfr.discourse.group/u/WillT)\
**Post date:** [29 May 2024 13:17 UTC](https://pyfr.discourse.group/t/entropy-filtering/1095/7 "2024-05-29T13:17:08Z")

</div>

PyFR doesn’t have a hard dependency on HIP; for example, I currently have it installed on several clusters without HIP.

What does the error message look like?

---

<div class="post-metadata">

**Author:** ![Frankx9](https://avatars.discourse-cdn.com/v4/letter/f/3e96dc/32.png) [@Frankx9](https://pyfr.discourse.group/u/Frankx9)\
**Post date:** [29 May 2024 13:20 UTC](https://pyfr.discourse.group/t/entropy-filtering/1095/8 "2024-05-29T13:20:23Z")

</div>

My fault I wanted to say `ROCm`

This was the error.

> [@HIP Error, undefined symbol: hipGetDevicePropertiesR0600](https://pyfr.discourse.group/t/hip-error-undefined-symbol-hipgetdevicepropertiesr0600/1015):
>
> Hello, with the latest develop branch I get the following error AttributeError: /cfs/klemming/root/rocm/opt/rocm-5.3.3/lib/libamdhip64.so.5: undefined symbol: hipGetDevicePropertiesR0600 AttributeError: /cfs/klemming/root/rocm/opt/rocm-5.3.3/lib/libamdhip64.so.5: undefined symbol: hipGetDevicePropertiesR0600 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: /cfs/klemming/root/rocm/opt/rocm-5.3.3/lib/libamdhip64.so.5: undefined symbol: hipGetDevicePropertiesR0600 AttributeError:…

Clusters we use in any foreseable future will support it

Best

---

<div class="post-metadata">

**Author:** ![WillT](https://avatars.discourse-cdn.com/v4/letter/w/bc79bd/32.png) [@WillT](https://pyfr.discourse.group/u/WillT)\
**Post date:** [29 May 2024 13:23 UTC](https://pyfr.discourse.group/t/entropy-filtering/1095/9 "2024-05-29T13:23:55Z")

</div>

Ah, this is the hard dependency on ROCm\>=v6. You have 5.3.3; is there anything newer available?

Theoretically, ROCm doesn’t require root access to compile, so you could do it yourself.

Regardless, if you want entropy filtering, you must be on PyFR v2, as this feature isn’t in older versions.

---

<div class="post-metadata">

**Author:** ![Frankx9](https://avatars.discourse-cdn.com/v4/letter/f/3e96dc/32.png) [@Frankx9](https://pyfr.discourse.group/u/Frankx9)\
**Post date:** [29 May 2024 13:25 UTC](https://pyfr.discourse.group/t/entropy-filtering/1095/10 "2024-05-29T13:25:23Z")

</div>

It is strongly recommended to not use it neither compile it because it can cause severe issues to the filesystem, that’s the main reason behind not using it.  
Any other idea?

---

<div class="post-metadata">

**Author:** ![WillT](https://avatars.discourse-cdn.com/v4/letter/w/bc79bd/32.png) [@WillT](https://pyfr.discourse.group/u/WillT)\
**Post date:** [29 May 2024 13:27 UTC](https://pyfr.discourse.group/t/entropy-filtering/1095/11 "2024-05-29T13:27:38Z")

</div>

Ask the system admins. Sadly, there really isn’t a way around using ROCm v6 for PyFR v2.

---

<div class="post-metadata">

**Author:** ![Frankx9](https://avatars.discourse-cdn.com/v4/letter/f/3e96dc/32.png) [@Frankx9](https://pyfr.discourse.group/u/Frankx9)\
**Post date:** [29 May 2024 13:28 UTC](https://pyfr.discourse.group/t/entropy-filtering/1095/12 "2024-05-29T13:28:11Z")

</div>

We already did that and that was their answer unfortunately…

---

<div class="post-metadata">

**Author:** ![fdw](https://avatars.discourse-cdn.com/v4/letter/f/a587f6/32.png) [@fdw](https://pyfr.discourse.group/u/fdw)\
**Post date:** [29 May 2024 14:28 UTC](https://pyfr.discourse.group/t/entropy-filtering/1095/13 "2024-05-29T14:28:53Z")

</div>

I highly suspect your system administrators do not know what they are talking about.

Case in point the most powerful supercomputer in the world, Frontier, is based around AMD GPUs and has ROCm 6 available as a module.

Regards. Freddie.

---

<div class="post-metadata">

**Author:** ![Frankx9](https://avatars.discourse-cdn.com/v4/letter/f/3e96dc/32.png) [@Frankx9](https://pyfr.discourse.group/u/Frankx9)\
**Post date:** [30 May 2024 05:31 UTC](https://pyfr.discourse.group/t/entropy-filtering/1095/14 "2024-05-30T05:31:17Z")

</div>

Anyway, in the 1.15.0 the results are still “physical” or the changes pushed to 2.0.2 is the only “valid” version of the entropy filtering?

---

<div class="post-metadata">

**Author:** ![fdw](https://avatars.discourse-cdn.com/v4/letter/f/a587f6/32.png) [@fdw](https://pyfr.discourse.group/u/fdw)\
**Post date:** [30 May 2024 11:32 UTC](https://pyfr.discourse.group/t/entropy-filtering/1095/15 "2024-05-30T11:32:57Z")

</div>

The only released version of the code with entropy filtering is the v2 series.

Regards, Freddie.
