visit-dav / visit

VisIt - Visualization and Data Analysis for Mesh-based Scientific Data
https://visit.llnl.gov
BSD 3-Clause "New" or "Revised" License
428 stars 110 forks source link

Volume plot needs non-ICET compositing logic. #19658

Open biagas opened 2 months ago

biagas commented 2 months ago

Describe the bug

Volume plot utilizes avtICETCompositor class to do its compositing when the Parallel Renderer type is chosen. It only works if ICET is available, or a serial engine is being used.

Since ICET isn't available currently for VisIt builds on Windows, this causes volume plot failures (can be seen in regression suite).

I don't think we ever test without ICET on Linux.

Here's the relevant section of code:

https://github.com/visit-dav/visit/blob/1483f760a1f5de47ddd63b654f943a77a56509ed/src/plots/Volume/avtICETCompositor.C#L335-L341

The non-ICET compositing logic for parallel engine needs to be fleshed out. Or perhaps the 'Parallel' render type option should be disabled if ICET is not available (?)

To Reproduce

Run a parallel engine on Windows, create a volume plot with 'Parallel' renderer type chosen. Result will be blank.

Expected behavior

Volume plot should work regardless of ICET availability.

Desktop

biagas commented 1 month ago

Will need to remove volume_X from windows skip list when this is fixed.

cyrush commented 1 month ago

we should see if we can build ice-t on windows, if not we can look at if ascent's compositor can help

biagas commented 1 month ago

@cyrush I was able to build icet on Windows, and tests look good. This solves the Windows issue, but we still have that section of code that hasn't been fleshed out if ICET isn't available. Should I leave this ticket standing ?

cyrush commented 1 month ago

@biagas awesome work getting ice-t up and running for windows to avoid this.

I think we should still leave it open b/c there could be gap depending on how we build. Just less likely given we have major cases covered now with ice-t