Interviews3D: APlatform for Interactive Handing of Massive Data Sets 读后感
横向比较:
Inadequacy of current system design( 现代系统和一些软件的不足)
软件特点:
Output sensitivity
Out-of core data handing
Incremental updates
Scalabity
Visibility-guided rendering
作者对所有节点赋予了可见性权值,该权值影响节点在 (外存-内存-显存)交换中的优先度。
整体架构:

Queuing occlusion queries
GPU向CPU发送命令时具有一定的延迟,所以如果利用深度优先搜索整个队列会造成CPU在等待GPU的命令时,不再向GPU发送命令,GPU无命令
执行而轮空的现象。所以可以利用一个查询队列,改为广度优先搜索。

广度优先遮挡查询:
(1)向GPU发送所有相互需要查询的节点,并把该节点加入到查询队列中。
(2)当要查询的节点发送完毕后,利用API查询该队列首项是否收获查询结果
(2-1)如果有结果:
(2-1-1)可见:则把其子节点继续发送到查询队列
(2-1-2)不可见:无操作
(2-2)没有结果:则按照上一帧可见性进行处理,重复2-1-X,
(3)继续查看队列下一个节点
Frame to frame coherence
利用帧与帧的连续性维护kdTree和进一步优化遮挡查询的对象(只有最后渲染的对象,才能获得真正是否可见的信息)。

假定上一帧可见对象仍然均可见,则不再对其进行遮挡查询,并且优先渲染,每次仅从其不确定的父节点进行重新查询,
查询不可见节点。那么什么时候更新这些假定可见节点的可见信息呢?
LOD
Two-level cache mechanism

两级缓存,此外还有一些系统应该具有的基本设定如内存管理,资源管理。
VRAM management
作者提到优先对显存也进行划分。这是我之前想偷懒而没去思考的地方,看来我的显存管理器还是要改进的。。
终于到最后的Performance了!

16G Data 700,000 objects 350 M polygons 20+FPS(07 Video)
Interviews3D: APlatform for Interactive Handing of Massive Data Sets 读后感的更多相关文章
- 微软云计算 Massive Data 处理语言Scope 1
Massive Data处理一直是云计算中很重要的一个环节.目前像Google,Yahoo在相关方面都有自己专有的技术.例如Google的基于MapReduce的Sawzall语言.和Yahoo基于H ...
- Multithreading C++ Out of Core Sotring for Massive Data|多线程C++的大规模数据外部排序
先说一下,这个其实是我为实现PantaRay或者是类似Dreamworks的Out of Core点云GI的技术储备,为大规模点云光线跟踪所准备的第一步.在实际的应用中,int类型会被64bit的ui ...
- Handing Incomplete Heterogeneous Data using VAEs
目录 概 主要内容 ELBO 网络结构 不同的数据 HI-VAE 代码 Nazabal A., Olmos P., Ghahramani Z. and Valera I. Handing incomp ...
- How To Build Compelling Stories From Your Data Sets
How To Build Compelling Stories From Your Data Sets Every number has a story. As a data scientist, y ...
- Working with large data sets in MySQL
What does working with large data sets in mySQL teach you ? Of course you have to learn a lot about ...
- Result window is too large, from + size must be less than or equal to: [10000] but was [78440]. See the scroll api for a more efficient way to request large data sets
{"error":{"root_cause":[{"type":"query_phase_execution_exception& ...
- Massive Data Mining学习记录
第一周: 学习PageRank, 知识点:每个节点的权值由其他节点的投票决定,所有节点的权值和为1 当节点很多时候必须转换成矩阵运算来计算节点的最终值,由马尔可夫链可以证明,这个值可以迭代得到 问题: ...
- machine learning data sets
http://archive.ics.uci.edu/ml/datasets.html 例如 3 分类 鸢尾花 数据集: http://archive.ics.uci.edu/ml/datasets/ ...
- 最大信息系数(MIC)——Detecting Novel Associations in Large Data Sets
本文介绍了一种发现两个随机变量之间依赖关系强度的度量MIC(最大信息系数,类似于相关系数的作用).MIC具有以下性质和优势: MIC度量具有普适性.其不仅可以发现变量间的线性函数关系,还能发现非线性函 ...
随机推荐
- fastjson的坑 com.alibaba.fastjson.JSONObject cannot be cast to xxx
解析json对象时,使用了new TypeReference()对象 fastjson会对解析的对象类型进行缓存 new TypeReference<ResultData>(){} ...
- 滑动条 Trackbar[OpenCV 笔记9]
OpenCV中没有实现按钮的功能,我们可以利用滑动条来实现按钮功能. , ); trackbarname 轨迹条的名字. winname 窗口的名字,轨迹条会依附在这个窗口上. value 一个指向整 ...
- itoa : Convert integer to string
Quote from: http://www.cplusplus.com/reference/cstdlib/itoa/ function Required header : <s ...
- 九度OJ 1118 数制转换
题目地址:http://ac.jobdu.com/problem.php?pid=1118 题目描述: 求任意两个不同进制非负整数的转换(2进制-16进制),所给整数在long所能表达的范围之内. ...
- 3DMAX 建立场景 工作流程
建立3D渲染首先建立房型.毕竟我们在做的是三维房间的渲染.建立房型线有几个环节都要用到 我们看一眼最终的渲染效果. 利用我们第一步建立的房型线做模型 房型线通过膨胀变成墙壁 再通过房型线生成屋顶天花和 ...
- 【Asp.Net】小BUG汇总[更新]
目录结构 1.Dictionary<T>遍历 2.Asp.net网站部署在C盘无法上传下载文件 3.Asp.Net网站发布后远程无法访问 4.GDI+中发生一般性错误 1.Dictiona ...
- 前端工程的构建工具对比 Gulp vs Grunt
1. Grunt -> Gulp 早些年提到构建工具,难免会让人联想到历史比较悠久的Make,Ant,以及后来为了更方便的构建结构类似的Java项目而出现的Maven.Node催生了一批自动化工 ...
- Omnithreadlibary学习(1)-异步执行
program main; {$APPTYPE CONSOLE} {$R *.res} uses System.SysUtils, OtlParallel; begin Parallel.Async( ...
- 【python】分片copy和等号的区别
例一 >>> list1=[1,2,3,4]>>> list2=list1>>> list3=list1[:]>>> list1 ...
- JVM 学习笔记(一)
JVM ----Java Virtual Machine (熟称:JAVA虚拟机),JVM 在执行JAVA程序的过程中将内容划分为若干个区域,其有各自的用途和管理机制.如下图: 1. 程序计 ...