横向比较:

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 读后感的更多相关文章

  1. 微软云计算 Massive Data 处理语言Scope 1

    Massive Data处理一直是云计算中很重要的一个环节.目前像Google,Yahoo在相关方面都有自己专有的技术.例如Google的基于MapReduce的Sawzall语言.和Yahoo基于H ...

  2. Multithreading C++ Out of Core Sotring for Massive Data|多线程C++的大规模数据外部排序

    先说一下,这个其实是我为实现PantaRay或者是类似Dreamworks的Out of Core点云GI的技术储备,为大规模点云光线跟踪所准备的第一步.在实际的应用中,int类型会被64bit的ui ...

  3. Handing Incomplete Heterogeneous Data using VAEs

    目录 概 主要内容 ELBO 网络结构 不同的数据 HI-VAE 代码 Nazabal A., Olmos P., Ghahramani Z. and Valera I. Handing incomp ...

  4. 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 ...

  5. 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 ...

  6. 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& ...

  7. Massive Data Mining学习记录

    第一周: 学习PageRank, 知识点:每个节点的权值由其他节点的投票决定,所有节点的权值和为1 当节点很多时候必须转换成矩阵运算来计算节点的最终值,由马尔可夫链可以证明,这个值可以迭代得到 问题: ...

  8. machine learning data sets

    http://archive.ics.uci.edu/ml/datasets.html 例如 3 分类 鸢尾花 数据集: http://archive.ics.uci.edu/ml/datasets/ ...

  9. 最大信息系数(MIC)——Detecting Novel Associations in Large Data Sets

    本文介绍了一种发现两个随机变量之间依赖关系强度的度量MIC(最大信息系数,类似于相关系数的作用).MIC具有以下性质和优势: MIC度量具有普适性.其不仅可以发现变量间的线性函数关系,还能发现非线性函 ...

随机推荐

  1. 【转】Java编程之字符集问题研究

    发现这是对字集说得最明了的一篇文章了. 转发自:http://tomcat-oracle.iteye.com/blog/2037160 1. 概述 本文主要包括以下几个方面:编码基本知识,java,系 ...

  2. apache虚拟主机安装注意事项

    apache虚拟主机在添加的时候,总是会有一些莫名其妙的问题,后来发现可以使用一个参数去验证的: xxxxx/httpd -S //这个参数会去检查虚拟主机配置的正确性,很好用 因为有时候可能就是缩进 ...

  3. js 中如何通过提示框跳转页面

    通过提示框跳转页面 <!doctype html> <html lang="en"> <head> <meta charset=" ...

  4. Cassandra1.2文档学习(1)——Cassandra基本说明

    参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/architecture/a ...

  5. PHP生成制作验证码

    看完就会,不会你打我,话不多说.开搞(人狠话不多) 1.0 首先先看代码 <?php header("Content-Type:text/html;Charset=UTF-8" ...

  6. ~/.vimrc config

    runtime! debian.vim "设置编码 set encoding=utf- set fencs=utf-,ucs-bom,shift-jis,gb18030,gbk,gb2312 ...

  7. 如何处理ajax中嵌套一个ajax

    在做项目的时候 遇到过第二次了 当我第二次去问'公子'的时候 被吐槽了 原来我以前遇到过 只是忘记了...他老人家竟然还记得... ajax由于他的异步特性 在第一次请求中的循环中嵌套第二个ajax会 ...

  8. Mvc学习笔记(4)

    上文我介绍了如何将控制器里的值传递给视图,但是是如何传递的呢?原理是什么? 视图 page.cshtml在编译的时候也会编译成一个类,然而这个类会继承于WebViewPage<object> ...

  9. C与OC、C++的区别

    C语言的特点:1)C语言是结构化语言,层次清晰,调试和维护比较容易2)表现能力和处理能力比较强,可直接访问内存的物理地址3)c语言实现对硬件的编辑,c语言课用语系统软件的开发,也可用语应用软件的开发, ...

  10. php实例-正则获取网站音频地址的实例(Listen to this 1)

    主要用到了:file_get_contents();preg_match_all(); 这2个函数 查看地址:http://git.oschina.net/xiaoz6/phpExample