ArcGlobe 缓存管理
分享
ArcGlobe拥有缓存机制,因此可以应对大量3D数据的可视化,下面就总结下有关缓存的知识点。
首先,需要了解,ArcGlobe具有两种缓存机制:内存缓存,硬盘缓存。
内存缓存 指的是分配可供 ArcGlobe 使用的物理内存 (RAM) 大小。要获得最佳性能,可设置对每个所使用的数据类型所分配的内存大小。ArcGlobe 通过设置内存缓存来改善 3D 视图的交互性能,可针对每个 ArcGlobe 文档(.3dd 文件)配置特定的内存值。
磁盘缓存 会为 ArcGlobe 中的每个图层创建临时文件或缓存,从而有助于高效地显示和导航数据。每个图层,而不是数据源,对应一“套”缓存文件,以文件夹的形式保存。文件夹通常以图层名+GUID命名。例如下图:
保存 ArcGlobe 文档(*.3dd)或创建图层文件(*.lyr)可确保不会无意中删除磁盘缓存,以及保留缓存的链接以供以后使用。如果图层的显示发生更改,则会自动删除它的磁盘缓存并重新进行计算。
默认缓存是按需进行创建,也可以进行手动创建图层的部分缓存、全部缓存。
磁盘缓存的格式可以根据需要选择,ArcGlobe 支持两种磁盘缓存格式:JPEG 和 DXT。一般来说,JPEG 磁盘缓存格式占用的磁盘空间较少,而 DXT 缓存可提高渲染速度。
下面的问题引自帮助,稍加整理,放在这里辅助这两种格式的选择:
JPEG 和 DXT 格式的区别是什么?
在显卡较新的计算机上,DXT 缓存不必在渲染前解压缩。但 JPEG 缓存却需要在渲染前解压缩,因此存在性能开销。
具有 16 位色彩格式的 JPEG 缓存数据要求每像素占 2 个字节内存,而 DXT 缓存数据则要求每像素仅占 1 个字节内存。这意味着,DXT 数据所占用的图形内存只占 JPEG 16 位色彩数据所占用图形内存的一半。但 DXT 缓存所占用的磁盘空间通常比 JPEG 缓存大 8 到 12 倍。
JPEG 与 DXT 分别应于何时使用?
1)显卡硬件的版本
如果计算机的显卡版本较低,有可能不支持 DXT 格式。在此类情况下,ArcGlobe 将使用仿真软件代替硬件,使计算机支持 DXT 缓存,但这样的话,使用 DXT 磁盘缓存选项并不会提高性能。版本较新的计算机则可以实现 DXT 格式的硬件支持,因此适合使用 DXT 缓存选项。如果注重应用程序的性能,则建议使用该格式。
2)数据范围
决定 JPEG 和 DXT 缓存性能差异的一个关键性因素是数据范围。对于本地区域范围内的图像数据,DXT 缓存的渲染速度比 JPEG 缓存最多可快 40%(以每秒的帧数衡量)。但是,如果数据是全球范围的,则两种格式之间几乎没有差异。但是,无论数据范围如何,DXT 磁盘缓存格式与 JPEG 磁盘缓存格式的缓存生成时间相同。
3)物理内存的大小
决定选择哪种格式的另一个关键性因素是计算机的物理内存大小。使用 DXT 缓存而非 JPEG 缓存时,ArcGlobe 将节省 10% 到 30% 的整体内存,从而在渲染大型数据集而计算机内存(RAM 和图形卡纹理内存)却有限的情况下可以提高性能。
4)磁盘空间
最后一个值得考虑的因素是磁盘空间。尽管 DXT 缓存的交互性能通常比 JPEG 缓存要好,但是它所占据的磁盘存储空间却会多出很多。根据数据的不同,DXT 缓存所占用的磁盘空间比 JPEG 缓存大 8 到 12 倍。因此,应考虑是需要更好的性能还是更大的磁盘空间。
使用 DXT 缓存时有哪些特殊注意事项?
能否使用 DXT 取决于 OpenGL 图形卡驱动程序和图形卡硬件。有时,一些 OpenGL 工具可能无法支持或无法正常支持 DXT 压缩。这可能导致 DXT 缓存中产生失真。要解决此类问题,可以更新显卡驱动程序版本或使用其他显卡。
文章来源:http://blog.csdn.net/kikitamoon/article/details/38223531
首先,需要了解,ArcGlobe具有两种缓存机制:内存缓存,硬盘缓存。
内存缓存 指的是分配可供 ArcGlobe 使用的物理内存 (RAM) 大小。要获得最佳性能,可设置对每个所使用的数据类型所分配的内存大小。ArcGlobe 通过设置内存缓存来改善 3D 视图的交互性能,可针对每个 ArcGlobe 文档(.3dd 文件)配置特定的内存值。
磁盘缓存 会为 ArcGlobe 中的每个图层创建临时文件或缓存,从而有助于高效地显示和导航数据。每个图层,而不是数据源,对应一“套”缓存文件,以文件夹的形式保存。文件夹通常以图层名+GUID命名。例如下图:
保存 ArcGlobe 文档(*.3dd)或创建图层文件(*.lyr)可确保不会无意中删除磁盘缓存,以及保留缓存的链接以供以后使用。如果图层的显示发生更改,则会自动删除它的磁盘缓存并重新进行计算。
默认缓存是按需进行创建,也可以进行手动创建图层的部分缓存、全部缓存。
磁盘缓存的格式可以根据需要选择,ArcGlobe 支持两种磁盘缓存格式:JPEG 和 DXT。一般来说,JPEG 磁盘缓存格式占用的磁盘空间较少,而 DXT 缓存可提高渲染速度。
下面的问题引自帮助,稍加整理,放在这里辅助这两种格式的选择:
JPEG 和 DXT 格式的区别是什么?
在显卡较新的计算机上,DXT 缓存不必在渲染前解压缩。但 JPEG 缓存却需要在渲染前解压缩,因此存在性能开销。
具有 16 位色彩格式的 JPEG 缓存数据要求每像素占 2 个字节内存,而 DXT 缓存数据则要求每像素仅占 1 个字节内存。这意味着,DXT 数据所占用的图形内存只占 JPEG 16 位色彩数据所占用图形内存的一半。但 DXT 缓存所占用的磁盘空间通常比 JPEG 缓存大 8 到 12 倍。
JPEG 与 DXT 分别应于何时使用?
1)显卡硬件的版本
如果计算机的显卡版本较低,有可能不支持 DXT 格式。在此类情况下,ArcGlobe 将使用仿真软件代替硬件,使计算机支持 DXT 缓存,但这样的话,使用 DXT 磁盘缓存选项并不会提高性能。版本较新的计算机则可以实现 DXT 格式的硬件支持,因此适合使用 DXT 缓存选项。如果注重应用程序的性能,则建议使用该格式。
2)数据范围
决定 JPEG 和 DXT 缓存性能差异的一个关键性因素是数据范围。对于本地区域范围内的图像数据,DXT 缓存的渲染速度比 JPEG 缓存最多可快 40%(以每秒的帧数衡量)。但是,如果数据是全球范围的,则两种格式之间几乎没有差异。但是,无论数据范围如何,DXT 磁盘缓存格式与 JPEG 磁盘缓存格式的缓存生成时间相同。
3)物理内存的大小
决定选择哪种格式的另一个关键性因素是计算机的物理内存大小。使用 DXT 缓存而非 JPEG 缓存时,ArcGlobe 将节省 10% 到 30% 的整体内存,从而在渲染大型数据集而计算机内存(RAM 和图形卡纹理内存)却有限的情况下可以提高性能。
4)磁盘空间
最后一个值得考虑的因素是磁盘空间。尽管 DXT 缓存的交互性能通常比 JPEG 缓存要好,但是它所占据的磁盘存储空间却会多出很多。根据数据的不同,DXT 缓存所占用的磁盘空间比 JPEG 缓存大 8 到 12 倍。因此,应考虑是需要更好的性能还是更大的磁盘空间。
使用 DXT 缓存时有哪些特殊注意事项?
能否使用 DXT 取决于 OpenGL 图形卡驱动程序和图形卡硬件。有时,一些 OpenGL 工具可能无法支持或无法正常支持 DXT 压缩。这可能导致 DXT 缓存中产生失真。要解决此类问题,可以更新显卡驱动程序版本或使用其他显卡。
文章来源:http://blog.csdn.net/kikitamoon/article/details/38223531
0 个评论
推荐内容
相关问题
- gis开发群的管理不讲理,求围观。
- arcgis 门户能正常访问,但是arcgis server 管理界面打不开?
- ArcGIS Server制作的缓存地图服务中,能否实现大比例尺下楼房阴影类似的3d效果?
- 在一台计算机上安装ArcGIS Data Store的关系、切片缓存和时空类型
- 对已发布的缓存服务,如何只更新局部范围的切片
- 通过Web Adaptor管理Portal时出问题的tomcat版本有哪些
- arcgis data store配置切片缓存失败,错误提示internal server error
- 您好!请问在ArcMap中添加两个影像服务(大约8G的缓存),软件就会无响应,死机。这种情况一般是什么原因导致?
- server发布服务时能将动态绘制地图与使用缓存的切片这两种方案一起使用吗?
- 基于ArcGIS Server创建地图缓存,切图进程突然内存暴涨导致服务器挂死
- ArcGIS 版本管理对同一要素进行编辑版本冲突解决