visit-dav / visit

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

Software rendering problems with multiple domains. #1494

Open aowen87 opened 5 years ago

aowen87 commented 5 years ago

These issues were reported by Matthew Wheeler at AWE. email: ======Id like to report a couple of VisIt issues that one of our users came across recently. There appear to be two problems:Initially we were not sure if they were related but we now suspect them to be different problems. (?)(The user was seeing both problems at the same time) I have now managed to reproduce them in much simpler form with smaller and public domain datasets.(See notes further down). Hopefully these will help someone who understands that area better than me to pin it down. 1) Visible white lines/breaks, randomly between some domains when using Parallel Software-Rendering. User was running ClientServer, Software Rendering with a large 2D AMR dataset and trying to display a Pseudocolor Plot with a slightly transparent Mesh Plot superimposed. White lines appear between some domains as you zoom in and out but disappear if you switch to Hardware Rendering or force the problem to run on a single processor (np 1). The resultant images can look very bad with a large complicated dataset. I have shown that the dataset does not have to be AMR other 2D multi-domain datasets also seems to exhibit the same problem if you look carefully but they dont always look as bad. The problem seems similar to the reported VisIt Bug #1054 VisIt generates plots with gaps in between domainsAlso possibly similar to Bug #1350 although this seems to have a different cause (and has been fixed?). I think I have now managed to reproduce the problem with a much simpler dataset so hopefully this may help in debugging - see later. 2) AMR levels appearing coarser than the levels defined in the dataset, i.e. not all the finer levels being shown. Sometimes switching levels off and on again seems to help but not always. Again switching to Non-Scalable Rendering (=Hardware Rendering) mode produces the correct result.Plotting the Mesh isnt necessary to reproduce this problem.See test datasets and example pictures. We have tried experimenting with a whole bunch of factors .e.g.:Whether SR is on or off Before you start the Plot.Sometimes the first time you produce the Plot it is different to subsequent renderingsAdding extra Operators doesnt seem to affect the problem.ReOpening the dataset ? Not sure if this affects itOccurs in different versions of VisIt discovered in 2.6.1 but seems to be present in all the other versions that we still have installed ~ 2.4.* 2.7.0b- Difficult to see what the common factors are. User has a short term workaround to use Hardware Rendering for both problems but there must come a point when the datasets will become too large to display in this manner. Test DatasetsI have used two datasets to illustrate the problems which you should be able to get at: multi_curv2d.silo - illustrates problem 1, A 2D Curvilinear Mesh database part of VisIt test suite (?) Consists of 5 domains/blocks in an arc. amr2d_wmrgtree.silo - illustrates problems 1 and 2A 2D AMR dataset downloaded from https://wci.llnl.gov/codes/silo/examples.html(This is not actually as simple a dataset as it could be Id be interested if you can find a more straightforward AMR dataset that we could both gain access to) To Reproduce- Problem 1 Domain breaks: In Parallel Software Rendering mode, running over multiple processors (np > 1) Open multi_curv2d.silo (or amr2d_wmrgtree.silo) Do a Pseudocolor Plot of an appropriate variable (say u or Density) Add a Mesh PlotNow turn the Transparency of the Mesh lines down below 100% e.g. 16% Observe the flickering white lines between domains as you zoom in and out. Note that if you switch to Hardware Rendering (which would be the default for small datasets!) you would get quite a pleasing result the Mesh would appear as a subtle hint superimposed on top of the colored surface.This must say something about where the problem is occurring it would suggest that the data is being read-in and manipulated correctly the problem would appear to be further down the rendering pipeline. Problem 2 - Coarse AMR levels: Just try to plot a Pseudocolor Plot of the AMR dataset while in Multi-Processor, Software Rendering mode.Note the chunky representation which is resolved when you switch to Hardware Rendering. I am sending you some images illustrating the problems.They are in pairs with a good/OK (HW) and a BAD (SR) version but otherwise using the same setup Let me know if I can provide more information or need to clarify anything.

-----------------------REDMINE MIGRATION----------------------- This ticket was migrated from Redmine. As such, not all information was able to be captured in the transition. Below is a complete record of the original redmine ticket.

Ticket number: 1487 Status: Pending Project: VisIt Tracker: Bug Priority: Normal Subject: Software rendering problems with multiple domains. Assigned to: - Category: - Target version: - Author: Brad Whitlock Start: 06/05/2013 Due date: % Done: 0% Estimated time: Created: 06/05/2013 06:02 pm Updated: 06/26/2014 01:51 pm Likelihood: 3 - Occasional Severity: 3 - Major Irritation Found in version: 2.6.2 Impact: Expected Use: OS: All Support Group: Any Description: These issues were reported by Matthew Wheeler at AWE. email: ======Id like to report a couple of VisIt issues that one of our users came across recently. There appear to be two problems:Initially we were not sure if they were related but we now suspect them to be different problems. (?)(The user was seeing both problems at the same time) I have now managed to reproduce them in much simpler form with smaller and public domain datasets.(See notes further down). Hopefully these will help someone who understands that area better than me to pin it down. 1) Visible white lines/breaks, randomly between some domains when using Parallel Software-Rendering. User was running ClientServer, Software Rendering with a large 2D AMR dataset and trying to display a Pseudocolor Plot with a slightly transparent Mesh Plot superimposed. White lines appear between some domains as you zoom in and out but disappear if you switch to Hardware Rendering or force the problem to run on a single processor (np 1). The resultant images can look very bad with a large complicated dataset. I have shown that the dataset does not have to be AMR other 2D multi-domain datasets also seems to exhibit the same problem if you look carefully but they dont always look as bad. The problem seems similar to the reported VisIt Bug #1054 VisIt generates plots with gaps in between domainsAlso possibly similar to Bug #1350 although this seems to have a different cause (and has been fixed?). I think I have now managed to reproduce the problem with a much simpler dataset so hopefully this may help in debugging - see later. 2) AMR levels appearing coarser than the levels defined in the dataset, i.e. not all the finer levels being shown. Sometimes switching levels off and on again seems to help but not always. Again switching to Non-Scalable Rendering (=Hardware Rendering) mode produces the correct result.Plotting the Mesh isnt necessary to reproduce this problem.See test datasets and example pictures. We have tried experimenting with a whole bunch of factors .e.g.:Whether SR is on or off Before you start the Plot.Sometimes the first time you produce the Plot it is different to subsequent renderingsAdding extra Operators doesnt seem to affect the problem.ReOpening the dataset ? Not sure if this affects itOccurs in different versions of VisIt discovered in 2.6.1 but seems to be present in all the other versions that we still have installed ~ 2.4.* 2.7.0b- Difficult to see what the common factors are. User has a short term workaround to use Hardware Rendering for both problems but there must come a point when the datasets will become too large to display in this manner. Test DatasetsI have used two datasets to illustrate the problems which you should be able to get at: multi_curv2d.silo - illustrates problem 1, A 2D Curvilinear Mesh database part of VisIt test suite (?) Consists of 5 domains/blocks in an arc. amr2d_wmrgtree.silo - illustrates problems 1 and 2A 2D AMR dataset downloaded from https://wci.llnl.gov/codes/silo/examples.html(This is not actually as simple a dataset as it could be Id be interested if you can find a more straightforward AMR dataset that we could both gain access to) To Reproduce- Problem 1 Domain breaks: In Parallel Software Rendering mode, running over multiple processors (np > 1) Open multi_curv2d.silo (or amr2d_wmrgtree.silo) Do a Pseudocolor Plot of an appropriate variable (say u or Density) Add a Mesh PlotNow turn the Transparency of the Mesh lines down below 100% e.g. 16% Observe the flickering white lines between domains as you zoom in and out. Note that if you switch to Hardware Rendering (which would be the default for small datasets!) you would get quite a pleasing result the Mesh would appear as a subtle hint superimposed on top of the colored surface.This must say something about where the problem is occurring it would suggest that the data is being read-in and manipulated correctly the problem would appear to be further down the rendering pipeline. Problem 2 - Coarse AMR levels: Just try to plot a Pseudocolor Plot of the AMR dataset while in Multi-Processor, Software Rendering mode.Note the chunky representation which is resolved when you switch to Hardware Rendering. I am sending you some images illustrating the problems.They are in pairs with a good/OK (HW) and a BAD (SR) version but otherwise using the same setup Let me know if I can provide more information or need to clarify anything.

Comments: I think this is the 2D case of #1860.

rusu24edward commented 5 years ago

1494_amrs_bad 1494_amrs_ok 1494_amrz_bad 1494_amrz_ok 1494_curve_bad 1494_curve_ok