| View Issue Details [ Jump to Notes ] | [ Print ] | ||||||||
| ID | Project | Category | View Status | Date Submitted | Last Update | ||||
| 0009061 | VTK | (No Category) | public | 2009-05-24 14:45 | 2013-04-05 20:15 | ||||
| Reporter | Nick Gnedin | ||||||||
| Assigned To | Utkarsh Ayachit | ||||||||
| Priority | normal | Severity | major | Reproducibility | always | ||||
| Status | closed | Resolution | fixed | ||||||
| Platform | OS | OS Version | |||||||
| Product Version | |||||||||
| Target Version | Fixed in Version | ||||||||
| Summary | 0009061: Los of performance in 5.4.0 vs 5.2.0 | ||||||||
| Description | vtkPolyDataMapper in 5.4.0 resets display lists at every call. It seems that the problem is with vtkOpenGLDisplayListPainter.cxx. In the following piece of the code: // First check for the cases where all display lists (irrespective of // typeflags are obsolete. if ( // Since input changed input->GetMTime() > this->Internals->BuildTime || // actor's properties were modified actor->GetProperty()->GetMTime() > this->Internals->BuildTime || // mapper information was modified this->Information->GetMTime() > this->Internals->BuildTime) { this->Internals->ReleaseAllLists(); } the if(...) statement is always true, and the display list is always re-created, even when the input data does not change. Perhaps, input gets Modified() somewhere where it should not. That results in the major performance loss. That only happens when display non-opaque geometry with scalar data. The test code that shows the catastrophic perfomance difference between 5.2.0 and 5.4.0 is attached. | ||||||||
| Tags | No tags attached. | ||||||||
| Project | |||||||||
| Type | |||||||||
| Attached Files | |||||||||
| Relationships | |
| Relationships |
| Notes | |
|
(0019965) Utkarsh Ayachit (administrator) 2010-03-19 11:32 |
The vtkScalarsToColorsPainter was using the LUT alpha in deciding if we needed to regenerate the colors. This was incorrect since the LUT alpha is anyways not taken into consideration when generating the colors. This was causing the display lists to be re-generated when actor::property::alpha < 1. Fixed that. /cvsroot/ParaView3/ParaView3/VTK/Rendering/vtkScalarsToColorsPainter.cxx,v <-- VTK/Rendering/vtkScalarsToColorsPainter.cxx new revision: 1.22; previous revision: 1.21 |
| Notes |
| Issue History | |||
| Date Modified | Username | Field | Change |
| 2009-05-24 14:45 | Nick Gnedin | New Issue | |
| 2009-05-24 14:45 | Nick Gnedin | File Added: Test.cpp | |
| 2010-03-19 11:32 | Utkarsh Ayachit | Note Added: 0019965 | |
| 2010-03-19 11:32 | Utkarsh Ayachit | Status | backlog => @80@ |
| 2010-03-19 11:32 | Utkarsh Ayachit | Resolution | open => fixed |
| 2010-03-19 11:32 | Utkarsh Ayachit | Assigned To | => Utkarsh Ayachit |
| 2011-01-13 17:00 | Source_changeset_attached | => VTK master a2bd8391 | |
| 2011-01-13 17:00 | Source_changeset_attached | => VTK master 020ef709 | |
| 2011-06-16 13:11 | Zack Galbreath | Category | => (No Category) |
| 2013-04-05 20:15 | Berk Geveci | Status | customer review => closed |
| Issue History |
| Copyright © 2000 - 2018 MantisBT Team |