主题问题:“并行处理” https://knowledge.亚搏在线safe.com/questions/topics/single/21673.html “并行处理”主题的最新问题 Parallel Processing using Custom Transformers https://knowledge.亚搏在线safe.com/articles/86723/parallel-processing-using-custom-transformers.html

Parallel Processing is the division of work over a number of processes.现代计算机有多个CPU核心,在这些核心上分散工作可以充分利用可用的计算能力。

FME中的并行处理是指FME引擎将其工作划分为多个工作进程。工作区作者决定何时使用并行处理以及应该创建多少个进程。The operating system then decides how resources are allocated to those processes.


Parallel Processing and Custom Transformers

Parallel processing in FME is applied to custom transformers (in FME 2019 onwards,它现在是找到并行处理选项的唯一地方)。In essence,通过自定义转换器的每一组功能,在单独的过程中进行。当数据退出自定义转换器时,它会重新组合成一个组。

Because the custom transformer is considered a unit of processing tasks,the individual transformers that it contains are all included in each parallel process.This allows the author to set up multiple transformers to be parallel processed in a single setup.It also minimizes the number of required processes,因此,启动和停止进程的开销更少,and passing data back and forth.

并行处理的定义是groups,然而,有些变压器是基于特性的,不基于组,因此不适合并行处理。However,自定义转换器充当基于组的包装器,providing a way for feature-based transformers to be processed in parallel.


Setting Up Parallel Processing

FME中的每个并行过程都使用自己的数据组,where the group is defined by an attribute.首先,必须在自定义转换器定义的导航器窗口中选择并行处理级别:


之后,使用Transformer的参数对话框选择要分组的属性:


Here a user is parallel processing using the ZoneCategory attribute to define the groups.


下载

Start workspace as a template

作为模板完成工作区


Example

Follow these steps as an example of how to use parallel processing on a custom transformer.

1。Start FME Workbench and open the attached workspace template:



The workspace is reading a set of parks (spatial) data.它使用neighhoodName作为分组参数来计算每个公园(区域计算器和统计计算器)的平均大小。This creates an average park size per neighborhood.

The workspace then dissolves together neighboring park polygons,稍微缓冲一下,以确保相邻的公园合并。The second Bufferer shrinks the park size back.

这里可以并行处理,其中每个邻域都作为一个单独的过程进行处理。这是因为所有基于组的变压器(统计计算器和分解器)都使用相同的组。

其他变压器是基于特性的,因此分组并不重要。


2.Select all five transformers on the canvas (exclude any Inspector transformers).Press Ctrl+T (or select Transformers > Create Custom Transformer from the menubar).

提示时,enter a simple name like ParkProcessor...


然后单击“确定”关闭对话框并创建自定义转换器。


3.While in the custom transformer definition (the active tab should be labelled ParkProcessor) browse the Navigator window for the Parallel Processing parameter.在变压器参数下。

双击参数,选择“中等”作为处理级别:


Click OK and parallel processing will be turned on.


4。Return to the main canvas (active tab is Main).单击齿轮按钮打开ParkProcessor Transformer的参数对话框。在group by参数中选择neighhoodName作为并行处理的属性:

现在,运行时,自定义转换器将为每个邻居创建单独的进程。Several processes will run in parallel (with Moderate processing,每个CPU内核一个)。


5。注意,in the workspace and the above screenshot,已经有了neighhoodName的参数。

Recall that FME publishes all attributes used in a Custom Transformer automatically.This lets the transformer be used in multiple places,where (in this example) "NeighborhoodName" might not be available.So FME automatically made the first of these published parameters when the custom transformer was created,第二次激活并行处理。

Do we need both?好,that depends where NeighborhoodName is used.可以删除Group By参数中对它的任何引用,因为整个自定义转换器现在是一个大组。

So let's clear up these references.返回自定义转换器定义。

打开StatisticsCalculator参数对话框,然后取消设置分组依据,by deselecting NeighborhoodName.对溶解变压器重复此过程:


Check for other uses of the NeighborhoodName attribute in the AreaCalculator and Bufferer transformer.没有用,我们可以删除提示输入该属性的用户参数。为此,打开输入端口的参数对话框,and unchecking NeighborhoodName:


这告诉FME变压器中不再需要该属性(并行处理除外)。and that the user parameter prompt can be removed.


6.检查自定义转换器的参数对话框。运行工作区。The output will be the same as before,but - with parallel processes - will likely run much more quickly.

One final point of interest: although the feature-based transformers don't have groups to parallel process by,它们仍然是并行处理的。This is another way in which performance improves.

自定义变压器 parallel processing Mon,11 Feb 2019 17:05:54 GMT MARK2AT亚搏在线SAFE
如何在FME中使用并行处理 https://knowledge.亚搏在线safe.com/articles/74703/how-to-use-parallel-processing-in-fme.html

FME can be set up to take advantage of multiple-core processors by carrying out multiple processes in parallel.并行处理有可能提高单进程翻译的性能。

Notes:

  • FME2019,the Parallel Processing options have been removed from most transformers and exist only in the custom transformer infrastructure.有一篇单独的文章可以解释在自定义变压器中设置并行处理.
  • 有关并行处理的更深入信息,including assorted tips and tricks and a series of example scenarios where parallel processing may be of use,see the article entitled simplyParallel Processing.

Setting Up Parallel Processing

FME中的每个并行过程都使用自己的数据集,无法在进程之间传递数据。Therefore you must divide data into groups using a Group-By parameter,并将每个组设置为由不同的进程处理。


Here a user is calculating statistics about the number of visitors to parks in the city of Vancouver,using FME's StatisticsCalculator transformer.每个公园都有一个属性来定义它所居住的社区。邻域属性用于对数据分组,并通过设置并行处理级别,each group is handled by a separate process,可能会提高性能。

下载

作为模板启动工作区

Source Dataset


Example

Follow these steps as an example of how to use parallel processing on a transformer.

1。Start FME Workbench and open the attached workspace template:

请注意,工作区读取包含停车计时器违规行为的csv文件。每个犯罪行为都由属性评估主变压器给予货币价值。

The task is to calculate the number of offences and the total amount of fines recorded under each bylaw.


2.在attributeValueManager之后添加一个statisticscaleculator转换器:

打开统计计算器转换器的参数对话框。Under the Group-By parameter,select the attribute BYLAW.This will ensure that each different bylaw generates its own set of statistics.Select FineAmount as the Attribute to Analyze:

现在设置以下内容:

  • Total Count Attribute: BylawInfractions
  • Sum Attribute: BylawTotalFines
  • Mean Attribute: BylawAverageFine

清空任何其他参数字段:


3.Add an Inspector transformer to the StatisticsCalculator:Summary output port (or turn on Feature Caching) and run the workspace.On my computer,有了一个检测变压器,it takes approximately 53 seconds to run to completion.

However,because we are using groups of data we have the capability to turn on Parallel Processing.


4。重新打开统计计算器转换器的参数对话框。将并行处理参数设置为中等。On a quad-core computer this will run four processes simultaneously.

Optionally,open a task manager window,and then re-run the workspace:

fmeworkbench.exe is the process for the FME Workbench user interface.

fme.exe是主要的fme翻译过程,and each fmeworker.exe process is a parallel process calculating statistics.

在我的电脑上,整个翻译现在只需要29秒就可以运行,演示并行处理如何能够缩短翻译时间。


数据属性

The data used here originates from open data made available by the温哥华市,不列颠哥伦比亚省。它包含根据开放式政府许可证(温哥华)获得许可的信息。






猪瘟病毒 性能 统计计算器 parallel processing Wed,18 Jul 2018 22:32:32 GMT MARK2AT亚搏在线SAFE
并行处理无法启动 https://knowledge.亚搏在线safe.com/questions/70983/parallel-processing-doesnot-start.html

上周我不得不在笔记本电脑上重新安装Windows10,从那时起,并行处理在FME中似乎就不起作用了。I tried both FME2017.1 (64-bit b17539) and FME2018.0.0.3 (64-bit b18305),但这并没有什么区别。Does anyone has a clue?

I am on 64-bit Windows 10 Pro for Workstations and the current version is 1803.我的机器有Intel i7-6700HQ处理器。

desktop parallel processing Parallel Processing 清华大学,2018年5月24日11:51:03格林威治标准时间 拉尔斯德弗里斯
FME服务器上的光栅拼接性能提示 https://knowledge.亚搏在线safe.com/questions/67555/raster-mosaicking-performance-tips-on-fme-server.html

我正在寻找任何镶嵌大量光栅的性能提示。

I already know about parallel processing and don't need any further advice on that aspect (thanks!).

我想知道使用大量的FME服务器引擎或FME云实例是否可以获得任何好处,以及是否有一个简单的工作流来实现这一点。亚搏在线我最初的想法是构建我自己的并行处理版本,并将拼接分为几个工作区,供FMeserverJobSubmitter提交。Anyone got any other ideas?

parallel processing 性能优化 mosaicker 镶嵌光栅 镶嵌 清华大学,05 Apr 2018 07:38:21 GMT nic_ran
FME服务器中并行处理失败的颚化器 https://knowledge.亚搏在线safe.com/questions/63118/tiler-for-parallel-processing-failing-in-fme-serve.html

Hello everyone,

我正试图利用tiler在FME服务器环境中进行并行处理。Workbench that has tiler transformers and parallel processing enabled,在FME桌面环境下运行良好。However,if i try to run the same workbench via FME Server,它引发以下错误:

Tiler_2_PointCloudTiler(PointCloudTilingFactory): The keyword TILE_ROW_ATTRIBUTE has incorrect arguments.子句必须看起来像:tile_row_属性 ,哪里 is the name of a new attribute that will be added to output features

Any help with this issue would be much appreciated.

谢谢!


Boris

泰勒 parallel processing Wed,2018年1月31日20:25:14格林尼治标准时间 boriskirov
How to align a group of texts with regular interval parallel to a line feature in a dgn file https://knowledge.亚搏在线safe.com/questions/58923/how-to-align-a-group-of-texts-with-regular-interva.html

FME DGN-V8 parallel processing Parallel Processing 清华大学,2017年11月30日16:11:14格林尼治标准时间 nitiktm
发动机性能问题 https://knowledge.亚搏在线safe.com/questions/57897/engines-performance-issue.html

We have a 4 vcpu server and just added a 4th engine.When all 4 engine run concurrently,CPU使用率上升了100%。In order to optmize performances,我们应该在我们的vcpu中添加核心还是添加vcpu。My understanding is that an engin runs on only one core,therefore adding vCPU wouldn't help,在vcpu中添加核心是什么可以帮助optmize并行处理的?

TKS。

parallel processing 核心 星期二,2017年11月14日15:46:25格林尼治标准时间 阿文76
路网提取 https://knowledge.亚搏在线safe.com/questions/49087/road-network-extraction.html网站

你好,

I am trying to build a network using the OSM roads dataset.From this i would like to extract all roads within a set distance from a point.This should not be a simple as the crow flies buffer selection but by road distance on each road from the point.

思想?

networks parallel processing 网络 networkcostcalculator 道路 Sun,2017年7月30日19:13:29格林尼治标准时间 lemzip
Using Parallele Processing using FME Server https://knowledge.亚搏在线safe.com/questions/48327/using-parallele-processing-using-fme-server.html

你好,

这是一个一般性的问题。我理解并行处理是利用CPU的核心来处理某些分组的数据。However,since the FME engines are running/licensed each based on the existing cores in the server's CPU;would the processed workspace consume an additional engine?
谢谢。
Lyes

parallel processing 清华大学,20 Jul 2017 05:37:19 GMT 改革创新
Performance issue with LineOnAreaOverlayer https://knowledge.亚搏在线safe.com/questions/46378/performance-issue-with-lineonareaoverlayer.html

In my 亚搏在线workflow I need to check whether multiple lines (paths) crosses within some areas (hazard zones).I'm doing this with LineOnAreaOverlayer,但它太慢了,只有17K的线路和8个区域。已经花了两个多小时,但过程没有完成(在工作台的底部,我收到执行低级交叉阶段x%的消息)。

I've read that I could enable paralellism with grouping.However,当我这样做的时候,过程没有发现任何与该区域重叠的线条,当它确实是行做它。How could I improve the performance of this process?

FME 性能 parallel processing 线条几何覆盖 Wed,2017年6月21日16:03:52格林尼治标准时间 RRDLPL
FME Citrix Xenap-并行处理 https://knowledge.亚搏在线safe.com/questions/45181/fme-citrix-xenapp-parallel-processing.html

你好,

我管理着一个FME桌面2016.1.3.2环境,作为已发布的应用程序,Citrix XenApp 7.6.300已用完。

我们遇到了任何使用并行处理的问题,我们已经设法使它工作了(不知道为什么它开始工作),而且它已经工作了几个月,但最近它却没有任何真正的原因。未对环境进行任何更改。

Some things I have found.

When running a workspace that has Parallel Processing turned on (any level) via the Citrix Published FME it fails at the stage

“将功能存储到FME功能存储文件E:\multiprocessor U 11245\inspector.ffs”

然后我们得到一个错误框,“FME EXE已经停止工作”“关闭程序”

运行相同的工作区,但关闭并行处理-工作正常

如果我将RDP以相同的帐户手动进入XenApp服务器,并以相同的设置运行完全相同的工作区,包括并行处理…it works every time.

在我看来,这似乎与它是一个通过Citrix发布的应用程序有关——当它试图衍生出额外的fme.exe过程时,它似乎就失败了。

想知道以前是否有人见过这种行为?

parallel processing Parallel Processing 思杰 塞纳普 Wed,2017年5月31日02:07:54格林尼治标准时间 humdinger_32
有序输入与并行性 https://knowledge.亚搏在线safe.com/questions/43553/ordered-input-and-parallelism.html

FME 2016 (but happens in 2017 too).

A simple 亚搏在线workflow:

输入->溶解器->聚合器->输出

Both the Dissolver and Aggregator are set to group by an ID,the features are ordered by that ID,变形金刚也知道这一点。Parallelism is off for the Dissolver.The result is that features flow smoothly through the 亚搏在线workflow,而且在任何时候都没有特性缓存。完全符合要求。

However,if I then change the Dissolver to use Parallelism (any level) (to see if I get more speed),别想改变什么,流动停止了。现在,在子线程完成溶解过程后,溶解器似乎缓存了所有功能,并且仅在工作流结束时发布到聚合器。亚搏在线

还有人经历过吗?这是预期的行为吗?I can't see anything in the docs about the Input Ordered and Parallelism being mutually exclusive,但也许我错过了。

小组通过 溶解器 parallel processing Parallel Processing 输入有序 Mon,01 May 2017 11:56:02 GMT jonathan
并行处理-许可问题 https://knowledge.亚搏在线safe.com/questions/34738/parallel-processing-licensing-issues.html(https://knowledge.safe.com/questions/34738/parallel-processing-licensing-iss

我似乎也遇到了同样的问题:http://gis.stackexchange.com/questions/22427/fme-error-failed-to-validate-fme-worker-license-key

After the same amount of time I get "Failed to validate FME worker licence key" - after approx processing 1 000 000 objects.I need parallell processing due to the size of the data,I have tried Aggressive only,and also Extreme.

Below is a screenshot showing part of the process.The Parallell runs in Parallell (:)).

大约1小时20分钟后,日志文件将填充“未能验证FME工作人员许可证密钥”,并且FMEworker.exe将无法完成任何工作(CPU持续为0.01%)。

我使用了FME 2016.1-浮动许可证-Oracle版本。

Also tried on FME 2017 - same issue

@ MARK2A亚搏在线TSAFE

许可 parallel processing Parallel Processing Fri,30 Sep 2016 07:11:38 GMT sigtill
空间继电器组参数导致测试仪不工作 https://knowledge.亚搏在线safe.com/questions/28040/spatial-relator-group-by-parameter-causing-tester.html

我有一个空间中继变压器是相交的两个功能类。When I change the Input is Ordered by Group parameter to "No,附加的测试变压器(用于交叉点测试)可以正确地传递值Yes(是)It does intersect(它不相交)或No(不相交)。当我将输入按组参数排序为“是”时,the same tester passes all values as does not intersect.

Both feature classes are intersected with the same grid feature class and the attribute names are the same,我还有两个分拣机变压器,每个功能类一个,以确保它们按相同的顺序排序。

任何帮助都将不胜感激!

捕获器

测试器 spatialrelator 小组通过 parallel processing Parallel Processing 清华大学,28 Apr 2016 14:29:18 GMT KJSMIT1
在并行处理期间重复使用同一组功能 https://knowledge.亚搏在线safe.com/questions/19661/use-the-same-set-of-features-repeatedly-during-par.html Simple setup:

大量线路特征(百万)需要覆盖一组区域特征(25000)。So a simple LineOnAreaOverlayer is used.This process is very slow and I am running into memory problems even with FMEx64.我在行功能上有一个属性,可以将它们分为大约250个组。因此,我认为这是一个并行处理的案例(我的经验有限)。

我的问题是这些地区。I want to process each group Line features with the same set of Area features.因此,在初始输入之后,我想对每个批次重复使用相同的区域期货集。I cannot seem to think of a good idea to accomplish this.即使是定制变压器。区域特征没有组属性,由于各种原因,每批线条特征必须与所有区域特征相交。

我能想到的唯一(相当不雅)的解决方案是将区域功能与使用功能合并的组列表交叉连接,但这也会将我的区域功能分解成数百万个。

Any other ideas?

Regards
性能 剪刀 小组通过 parallel processing 清华大学,2015年11月5日06:21:44格林威治标准时间 chiron