并行Pout输出内容在log文件里的位置不确定是为什么?
-
今天突然发现了一个奇怪的现象,如果是单核计算的话,输出的内容应该是这个顺序:
Solving 3-D cloud sprayCloud pAmbient = 101571.1 Composite::collide WeColl = 8.30375; B = 0.693729; delta = 0.6744853 Regime: Bouncing Composite collision model: nc_Composite_parcel =1 total collision number of Composite = 2 Ncoal = 0; Nbounc = 1; NSS = 1; NRS = 0 product the number of child parcel = 0
这和写代码时候想让他输出的位置是一样的;
但一旦并行后,输出的顺序就变成了这样:
Solving 3-D cloud sprayCloud [1] Composite::collide pAmbient = 101571.1 [0] Composite::collide [1] Regime: Bouncing Composite collision model: nc_Composite_parcel =1 total collision number of Composite = 2 Ncoal = 0; Nbounc = 1; NSS = 1; NRS = 0 product the number of child parcel = 0
甚至还会在这种地方出现语句:
Parcel fate (number, mass) : patch (top|down|side) - escape = 0, 0 - stick = 0, 0 Temperature min/max = 293, 293 Mass transfer phase change = 0 [1] Composite::collide D10, D32, Dmax (mu) = 99.81255, 101.9875, 105 Liquid penetration 95% mass (m) = 0.0006347351 Liquid penetration_y 95% mass (m) = 0.0005967672
使用并行输出Pout后和写这些输出语句的先后位置就不一样了
请问各位大佬这是为什么呢?