调整内存资源
当您处理非常大的数据集时,一个可能影响FME性能的问题是可用RAM。
如果通过工作区运行非常大的数据集,您可能会看到一个消息框,上面写着“内存不足”。请释放一些记忆,然后选择“重试”。这意味着不能再分配内存。
尝试下列选项:
- 参考FME知识中心中的提示,在里面性能调整FME.
- 正在设置临时目录。
- 清除临时文件
- 添加交换空间(仅限Linux)
- 使用/3GB开关(仅限32位Windows)。
设置临时目录
当FME运行较大时,多数据集转换,它通常需要大量的临时磁盘空间。这在运行数据集扇出,因为无法保证这些特性将在单个数据集组中到达扇出。因此,FME必须将所有数据集写入临时存储,然后把它们扇开。因此,可用磁盘空间的数量非常重要,但是在性能问题上,您可能更关心所有这些磁盘活动的速度。
当缓存较大数据集的数据或在FME数据检查器中显示时,会创建许多FME临时文件。如果磁盘缓存I/O速度提高,使用更快的硬盘可以对FME转换产生显著的影响。例如,如果您的计算机上有一个SSD(固态驱动器)。这些通常比传统的hhd驱动器快一点,所以如果你能指出菲米特温度一个SSD,然后,在处理较大的数据集时,您会看到性能有所提高。
在可能的情况下,将临时文件夹设置为指向可用的最快磁盘。
注:FME知识中心文章设置其他临时文件夹告诉你如何设置菲米特温度环境变量。(在Windows 7中,查看控制面板>系统>高级>环境变量)。
使用说明
不要将临时文件夹设置在操作系统使用的同一磁盘上;操作系统同时写入同一磁盘可能会减慢FME的速度。
尝试将临时文件夹设置为具有大量可用空间的磁盘,这不会提高速度,但它可能会防止由于缺少磁盘空间而导致的大型转换失败。
清除临时文件
FME在翻译过程中创建临时文件。在正常停机期间,FME自动清除这些文件。
如果故障模式与影响分析没有完全关闭,不会清除临时文件,它们将占用不必要的磁盘空间。
通过选择工具>清除临时文件定期清除任何剩余文件是一个好主意。
在Linux上添加交换空间
在Linux系统上,您可以在中看到以下警告日志:
系统内存不足。FME有被操作系统终止的风险。
在Linux上,FME依靠操作系统使用交换空间来管理内存使用,这要求您的系统有足够的交换空间分配给FME和其他运行过程的整个内存占用。
为了增加交换空间,见Ubuntu Swapfaqhttps://help.ubuntu.com/亚搏国际在线官网community/swapfaq.
使用/3GB开关(仅限32位Windows)
注:并非所有人都需要/3GB开关,甚至大多数,FME的用户。3GB开关将只对那些需要翻译但当前不使用2GB可寻址内存运行的用户有利。
32位版本的Windows操作系统最多可以管理4GB的可寻址内存。4GB分为用户应用程序2GB和内核进程2GB。这意味着任何给定的应用程序都只限于2GB内存。
FME利用A/3GB开关,使操作系统将可用的4GB内存划分为3GB(用户应用程序)和1GB(内核进程)。
![关闭](http://www.baooytra.com/docs/fme/2017.1/html/FME_Desktop_Documentation/FME_Workbench/Skins/Default/Stylesheets/Images/transparent.gif)
以下操作系统支持/3GB开关:
- 视窗7
- 视窗8
- 视窗10
- Windows Vista
- Windows XP专业版
- Windows服务器2003
- Windows Server 2003,企业版
- Windows Server 2003,数据中心
- Windows 2000高级服务器
- Windows 2000数据中心服务器
- Windows NT服务器4.0,企业版
Windows 2000 Server不支持/3GB开关。
![关闭](http://www.baooytra.com/docs/fme/2017.1/html/FME_Desktop_Documentation/FME_Workbench/Skins/Default/Stylesheets/Images/transparent.gif)
FME 2006 GB及以上。
![关闭](http://www.baooytra.com/docs/fme/2017.1/html/FME_Desktop_Documentation/FME_Workbench/Skins/Default/Stylesheets/Images/transparent.gif)
- 打开“开始”菜单的“附件”程序组,然后右键单击命令提示符.
- 点击以管理员身份运行.
- 在命令提示下,输入:
- 重新启动计算机。
bcdedit/设置increaseuserva 3072
![关闭](http://www.baooytra.com/docs/fme/2017.1/html/FME_Desktop_Documentation/FME_Workbench/Skins/Default/Stylesheets/Images/transparent.gif)
- 打开“开始”菜单的“附件”程序组,然后右键单击命令提示符.
- 点击以管理员身份运行.
- 在命令提示下,输入:
- 重新启动计算机。
bcdedit/deleteValue增加用户va
![关闭](http://www.baooytra.com/docs/fme/2017.1/html/FME_Desktop_Documentation/FME_Workbench/Skins/Default/Stylesheets/Images/transparent.gif)
在FME可以使用/3GB开关之前,您需要编辑系统的Boo.ini文件。
您可以通过执行以下操作来访问此文件:
- 打开“系统属性”对话框。您可以通过打开“控制面板”并选择“系统”来访问此对话框。或者右键单击“我的电脑”并选择“属性”。
- 选择“系统属性”对话框顶部的“高级”选项卡。
- 单击“Startup and Recovery(启动和恢复)”下的“Settings(设置)”按钮。
- 单击系统启动下的编辑按钮。记事本将用boot.ini文件打开。
在[操作系统]下,应该有一行以/fastdetect结尾。在这行末尾添加/3GB。
以下是添加/3gb开关之前boot.ini文件的示例:
[boot loader]timeout=30默认值=multi(0)disk(0)rdisk(0)partition(2)\windows[操作系统]multi(0)disk(0)rdisk(0)partition(2)\windows=“microsoft Windows XP professional”/fastdetect
添加/3GB开关时,上面的boot.ini文件应该如下所示:
[引导加载程序]超时=30默认值=多(0)磁盘(0)RDISK(0)分区(2)\Windows[操作系统]多(0)磁盘(0)RDISK(0)分区(2)\Windows=“Microsoft Windows XP Professional”/快速检测/3GB
现在需要重新启动计算机。计算机重新启动完成后,你的翻译应该能够在不耗尽内存的情况下完成。
要为其他版本的Windows禁用3GB开关,请执行以下操作:
注意:建议您在不需要时卸下/3GB开关。
只需将/3GB开关从Boo.ini
文件并重新启动计算机。
![关闭](http://www.baooytra.com/docs/fme/2017.1/html/FME_Desktop_Documentation/FME_Workbench/Skins/Default/Stylesheets/Images/transparent.gif)
不需要!对于64位版本的Windows,FME可以利用4GB的可寻址内存。如果您在64位版本的Windows上运行FME,无需采取进一步措施。以前由于内存有限而失败的翻译现在应该可以工作了。