View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0025703 | Open CASCADE | OCCT:Visualization | public | 2015-01-13 16:04 | 2015-05-14 15:32 |
Reporter | Assigned To | bugmaster | |||
Priority | normal | Severity | feature | ||
Status | closed | Resolution | fixed | ||
Target Version | 6.9.0 | Fixed in Version | 6.9.0 | ||
Summary | 0025703: Visualization, TKOpenGl - Decrease number of samplers used in ray-tracing mode | ||||
Description | Currently ray-tracing implementation uses more than 16 samplers, thus compatibility with some entry-level GPUs is suffering. It is necessary to decrease number of samplers by packing data. | ||||
Steps To Reproduce | N/A | ||||
Tags | No tags attached. | ||||
Test case number | Not needed | ||||
|
Branch CR25703 has been created by dbp. SHA-1: cc9912ea88e18d2624767dec4c257889f2ad323f Detailed log of new commits: Author: dbp Date: Tue Jan 13 16:01:30 2015 +0300 3 samplers were rejected. |
|
Branch CR25703 has been updated by dbp. SHA-1: 715d4ee320f7bef5dff245e7fbafd4dff3eced7a Detailed log of new commits: Author: dbp Date: Tue Jan 13 17:24:41 2015 +0300 Optimization. |
|
Branch CR25703_1 has been created by dbp. SHA-1: 338d7f36bc793415c0b61868b4ef2519e0e8ba42 Detailed log of new commits: Author: dbp Date: Tue Jan 13 18:32:47 2015 +0300 0025703: Visualization - Decrease number of samplers used in ray-tracing mode |
|
Branch CR25703_1 has been updated forcibly by dbp. SHA-1: b021133902d2989d1365c13ccaffc6b64573224b |
|
Dear Denis, please provide in commit description the way you have achieved result (e.g. the data previously stored in sampler A has been appended to the end of sampler B data, or something like this). - if (aHead == theSentinel) - return aTriIndex; - aNode = Stack[aHead--]; + aToContinue = (aHead != theSentinel); + if (aToContinue) + aNode = Stack[aHead--]; please add to commit description the reason for this change unrelated to bug (compatibility? performance?). Also variable "aToContinue" does not meet name conventions - it should be "toContinue". Otherwise patch looks OK. |
|
Branch CR25703_2 has been created by dbp. SHA-1: 3930852287945ab31acc87fc6c84c2c20ca3fde6 Detailed log of new commits: Author: dbp Date: Wed Jan 14 10:59:49 2015 +0300 0025703: Visualization - Decrease number of samplers used in ray-tracing mode This patch eliminates 3 samplers used in ray-tracing mode: //! Texture buffer of data records of bottom-level BVH nodes. Handle(OpenGl_TextureBufferArb) myObjectNodeInfoTexture; //! Texture buffer of minimum points of bottom-level BVH nodes. Handle(OpenGl_TextureBufferArb) myObjectMinPointTexture; //! Texture buffer of maximum points of bottom-level BVH nodes. Handle(OpenGl_TextureBufferArb) myObjectMaxPointTexture; Serialized data contained in corresponding texture buffers were added to global scene buffers: //! Texture buffer of data records of high-level BVH nodes. Handle(OpenGl_TextureBufferArb) mySceneNodeInfoTexture; //! Texture buffer of minimum points of high-level BVH nodes. Handle(OpenGl_TextureBufferArb) mySceneMinPointTexture; //! Texture buffer of maximum points of high-level BVH nodes. Handle(OpenGl_TextureBufferArb) mySceneMaxPointTexture; This modifications leads also to small performance improvement (~2%) due to higher texture cache efficiency. Some modifications in traversal function (GLSL code) also improve performance (~3%). |
|
Branch CR25703_2 has been updated forcibly by dbp. SHA-1: edbe4abbce5625a07e263b65e839e8ade556d33d |
|
Dear kgv, please review updated commit description in branch CR25703_2. |
|
Branch CR25703_2 has been updated forcibly by apv. SHA-1: 2eebec00f109fab6f58899ca73ec249f1bc3d04e |
|
Branch CR25703_2 has been rebased on the current master |
|
Dear BugMaster, Branch CR25703_2 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested. SHA-1: 2eebec00f109fab6f58899ca73ec249f1bc3d04e Number of compiler warnings: occt component: Linux: 18 (18 on master) Windows: 0 (0 on master) products component : Linux: 11 (11 on master) Windows: 1 (1 on master) Regressions/Differences: Not detected Testing cases: Not needed Testing on Linux: Total MEMORY difference: 370110360 / 369907280 Total CPU difference: 46257.55000000006 / 46828.580000000045 Testing on Windows: Total MEMORY difference: 276240724 / 276837572 Total CPU difference: 39059.0625 / 39964.359375 |
|
Branch CR25703_2 has been deleted by inv. SHA-1: 2eebec00f109fab6f58899ca73ec249f1bc3d04e |
|
Branch CR25703_1 has been deleted by inv. SHA-1: b021133902d2989d1365c13ccaffc6b64573224b |
|
Branch CR25703 has been deleted by inv. SHA-1: 715d4ee320f7bef5dff245e7fbafd4dff3eced7a |
occt: master e2da917a 2015-01-14 08:04:27
Committer: bugmaster Details Diff |
0025703: Visualization - Decrease number of samplers used in ray-tracing mode This patch eliminates 3 samplers used in ray-tracing mode: //! Texture buffer of data records of bottom-level BVH nodes. Handle(OpenGl_TextureBufferArb) myObjectNodeInfoTexture; //! Texture buffer of minimum points of bottom-level BVH nodes. Handle(OpenGl_TextureBufferArb) myObjectMinPointTexture; //! Texture buffer of maximum points of bottom-level BVH nodes. Handle(OpenGl_TextureBufferArb) myObjectMaxPointTexture; Serialized data contained in corresponding texture buffers were added to global scene buffers: //! Texture buffer of data records of high-level BVH nodes. Handle(OpenGl_TextureBufferArb) mySceneNodeInfoTexture; //! Texture buffer of minimum points of high-level BVH nodes. Handle(OpenGl_TextureBufferArb) mySceneMinPointTexture; //! Texture buffer of maximum points of high-level BVH nodes. Handle(OpenGl_TextureBufferArb) mySceneMaxPointTexture; This modifications leads also to small performance improvement (~2%) due to higher texture cache efficiency. Some modifications in traversal function (GLSL code) also improve performance (~3%). |
Affected Issues 0025703 |
|
mod - src/OpenGl/OpenGl_SceneGeometry.cxx | Diff File | ||
mod - src/OpenGl/OpenGl_Workspace.hxx | Diff File | ||
mod - src/OpenGl/OpenGl_Workspace_Raytrace.cxx | Diff File | ||
mod - src/Shaders/RaytraceBase.fs | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2015-01-13 16:04 |
|
New Issue | |
2015-01-13 16:04 |
|
Assigned To | => dbp |
2015-01-13 16:05 | git | Note Added: 0036005 | |
2015-01-13 17:25 | git | Note Added: 0036009 | |
2015-01-13 18:33 | git | Note Added: 0036017 | |
2015-01-13 18:39 | git | Note Added: 0036018 | |
2015-01-13 18:45 |
|
Assigned To | dbp => kgv |
2015-01-13 18:45 |
|
Status | new => resolved |
2015-01-13 18:45 |
|
Steps to Reproduce Updated | |
2015-01-14 09:38 | kgv | Note Added: 0036023 | |
2015-01-14 09:38 | kgv | Assigned To | kgv => dbp |
2015-01-14 09:38 | kgv | Status | resolved => assigned |
2015-01-14 09:42 | kgv | Note Edited: 0036023 | |
2015-01-14 11:01 | git | Note Added: 0036031 | |
2015-01-14 11:05 | git | Note Added: 0036032 | |
2015-01-14 11:07 |
|
Note Added: 0036033 | |
2015-01-14 11:07 |
|
Assigned To | dbp => kgv |
2015-01-14 11:07 |
|
Status | assigned => resolved |
2015-01-14 11:07 |
|
Steps to Reproduce Updated | |
2015-01-14 11:10 | kgv | Assigned To | kgv => bugmaster |
2015-01-14 11:10 | kgv | Severity | minor => feature |
2015-01-14 11:10 | kgv | Status | resolved => reviewed |
2015-01-14 11:10 | kgv | Summary | Visualization -- Decrease number of samplers used in ray-tracing mode => Visualization, TKOpenGl - Decrease number of samplers used in ray-tracing mode |
2015-01-16 17:06 |
|
Assigned To | bugmaster => apv |
2015-01-16 18:03 | git | Note Added: 0036163 | |
2015-01-16 18:04 |
|
Note Added: 0036164 | |
2015-01-21 15:33 |
|
Test case number | => Not needed |
2015-01-21 16:33 |
|
Note Added: 0036338 | |
2015-01-21 16:33 |
|
Assigned To | apv => bugmaster |
2015-01-21 16:33 |
|
Status | reviewed => tested |
2015-01-23 16:19 | bugmaster | Changeset attached | => occt master e2da917a |
2015-01-23 16:19 | bugmaster | Status | tested => verified |
2015-01-23 16:19 | bugmaster | Resolution | open => fixed |
2015-01-26 12:31 | git | Note Added: 0036515 | |
2015-01-26 12:32 | git | Note Added: 0036526 | |
2015-01-26 12:32 | git | Note Added: 0036527 | |
2015-01-30 10:09 | kgv | Relationship added | parent of 0025762 |
2015-05-14 15:29 |
|
Status | verified => closed |
2015-05-14 15:32 |
|
Fixed in Version | => 6.9.0 |