Skip to content
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠
CFD中文网

CFD中文网

W

w352405196

@w352405196
关于
帖子
19
主题
3
群组
0
粉丝
0
关注
0

帖子

最新

  • openfoam中cyclic周期性边界的问题
    W w352405196

    @dzw05 请问老师,您这边清楚interface并行边界如何处理吗?我想从openfoam中拿到完整矩阵数据,但是并行的话只能拿到各个线程对应的子矩阵,如何知道并行边界的关系将其组装成一个完整的矩阵


  • openfoam中cyclic周期性边界的问题
    W w352405196

    @Micro 请问老师,您这边搞清楚interface并行边界如何处理的了吗


  • Interface到底是做什么的呢?
    W w352405196

    @ZY-GONG 好的,多谢老师,辛苦了


  • Interface到底是做什么的呢?
    W w352405196

    @ZY-GONG 多谢老师,这部分内容非常关键,写的非常好。我还有个问题,并行耦合边界条件是如何处理的?也就是说不同线程之间如何交互?怎么知道线程0和线程1之间相邻网格的对应关系


  • openfoam中cyclic周期性边界的问题
    W w352405196

    @Tong 老师,您好。我想请教您一下,interface是针对周期边界、多求解域(如旋转机械)、并行边界这类复杂边界的吗,对于常规边界条件有影响吗,我理解的是边界条件的离散系数已经添加到lduMatrix中的对角线系数和源项中了。在测试中发现initMatrixInterfaces和updateMatrixInterfaces对于X和B都没有影响啊


  • Interface到底是做什么的呢?
    W w352405196

    新手请教各位老师,AX=B,边界条件的影响不是应该加到稀疏矩阵A的对角系数和源项B中了吗,initMatrixInterfaces和updateMatrixInterfaces是什么作用呢,针对特定边界条件吗?汽车的算例,我测试X和B都没有发生改变

            initMatrixInterfaces
            (
                bouCoeffsCmpt,
                interfaces,
                psiCmpt,
                sourceCmpt,
                cmpt
            );
            updateMatrixInterfaces
            (
                bouCoeffsCmpt,
                interfaces,
                psiCmpt,
                sourceCmpt,
                cmpt
            );
    
    void Foam::lduMatrix::Amul
    (
        scalarField& Apsi,
        const tmp<scalarField>& tpsi,
        const FieldField<Field, scalar>& interfaceBouCoeffs,
        const lduInterfaceFieldPtrsList& interfaces,
        const direction cmpt
    ) const
    {
        scalar* __restrict__ ApsiPtr = Apsi.begin();
    
        const scalarField& psi = tpsi();
        const scalar* const __restrict__ psiPtr = psi.begin();
    
        const scalar* const __restrict__ diagPtr = diag().begin();
    
        const label* const __restrict__ uPtr = lduAddr().upperAddr().begin();
        const label* const __restrict__ lPtr = lduAddr().lowerAddr().begin();
    
        const scalar* const __restrict__ upperPtr = upper().begin();
        const scalar* const __restrict__ lowerPtr = lower().begin();
    
        initMatrixInterfaces
        (
            interfaceBouCoeffs,
            interfaces,
            psi,
            Apsi,
            cmpt
        );
    
        const label nCells = diag().size();
        for (label cell=0; cell<nCells; cell++)
        {
            ApsiPtr[cell] = diagPtr[cell]*psiPtr[cell];
        }
    
    
        const label nFaces = upper().size();
    
        for (label face=0; face<nFaces; face++)
        {
            ApsiPtr[uPtr[face]] += lowerPtr[face]*psiPtr[lPtr[face]];
            ApsiPtr[lPtr[face]] += upperPtr[face]*psiPtr[uPtr[face]];
        }
    
        // Update interface interfaces
        updateMatrixInterfaces
        (
            interfaceBouCoeffs,
            interfaces,
            psi,
            Apsi,
            cmpt
        );
        tpsi.clear();
    }

  • 在工作站中测试openfoam并行效率很低,大佬们帮忙看看是什么导致的呢
    W w352405196

    @bestucan 好的,多谢老师解惑,我再好好找找原因


  • 在工作站中测试openfoam并行效率很低,大佬们帮忙看看是什么导致的呢
    W w352405196

    @bestucan 老师,该主板型号如下所示。我这边测试,在大网格量线程数较多时如32核跨cpu计算效率比单cpu更高,但在核数较少如8核的情况下单cpu更好。感觉跟正常理解不太一样,按理说单cpu计算性能更高才对

    3c2b7a1b-f5ae-4493-beab-509562d0bb01-image.png


  • 在工作站中测试openfoam并行效率很低,大佬们帮忙看看是什么导致的呢
    W w352405196

    @bestucan 多谢老师回复。这台工作站两个cpu,跨cpu线程计算的,不知道跟上传下载流量有关没,还是因为我这边是远程网络连接导致的。

    我在指定跨cpu的线程计算时,如8和16线程,cpu很大概率上会有线程闲置或者无法满负荷运行,极少的情况下会100%运行,该情况下效率比较高;如果指定的是单cpu的线程时都是满负荷运行,但是在核数较多时效率反而较低,比如说32核。

    如果是内存带宽受限的话,会体现在那个数据上呢,多谢老师解惑


  • 在工作站中测试openfoam并行效率很低,大佬们帮忙看看是什么导致的呢
    W w352405196

    @bestucan 多谢老师,安装您说的这个软件监测了一下,用的2000万网格测得,也没看懂哪里受限了。
    2870a2ce-4864-47b4-88fa-2922193f859e-image.png


  • 在工作站中测试openfoam并行效率很低,大佬们帮忙看看是什么导致的呢
    W w352405196

    @李东岳 好的,多谢李老师


  • 在工作站中测试openfoam并行效率很低,大佬们帮忙看看是什么导致的呢
    W w352405196

    @李东岳 李老师,我工作站的配置如下,内存会对性能有影响吗
    7da35ca7-b347-433d-977e-316b0f322f48-0138914eb81df573d072f8ccabc6cd4.jpg


  • 在工作站中测试openfoam并行效率很低,大佬们帮忙看看是什么导致的呢
    W w352405196

    @李东岳 了解了,多谢李老师解惑


  • 在工作站中测试openfoam并行效率很低,大佬们帮忙看看是什么导致的呢
    W w352405196

    @李东岳 但是我这个测试时间只是高斯赛德尔求解矩阵方程的时间,理论上是完全并行的,这种情况下这样的效率也是可以接受的吗


  • 在工作站中测试openfoam并行效率很低,大佬们帮忙看看是什么导致的呢
    W w352405196

    学到了,李老师,这我还是第一次知道。我一直以为单机多核的并行效率不会低于80%呢。


  • 在工作站中测试openfoam并行效率很低,大佬们帮忙看看是什么导致的呢
    W w352405196

    是的,ubuntu22.04系统。小白理解单机多核的加速比不是应该比集群更高吗,而且64核只有不到20%也太低了吧


  • 在工作站中测试openfoam并行效率很低,大佬们帮忙看看是什么导致的呢
    W w352405196

    我用SPMP和openfoam都进行了并行测试,SPMP使用的openmp。
    测试算例:openfoam自带的2200万网格的汽车算例
    测试统计时间为迭代128步的高斯赛德尔计算时间
    配置:cpu为64核128线程,内存256g。
    执行命令:mpirun -np 32 foamRun -parallel
    b2b5edb2-1d85-44c6-a022-84cf51fcf7ca-image.png
    测试结果如下图所示:
    8e0a4ea3-4712-4caa-9b17-d9573f05478d-image.png
    并行效率很低,在哪里有问题呢


  • Openfoam矩阵求解,segreated和coupled
    W w352405196

    好的,多谢李老师,我去看看学习下foam-extend,看看能不能输出一个这样的系数矩阵


  • Openfoam矩阵求解,segreated和coupled
    W w352405196

    在OpenFoam中离散后对矩阵进行求解时有两种方式,默认为segreated,另外一种为coupled。在使用coupled时,只有速度矢量有用。而Openfoam中解算器求解顺序规定了分别求解密度、速度、温度、压力、湍流粘性等,是不是意味着Openfoam中没有真正意义上的耦合求解器,即求解速度和压力等耦合成的一个大稀疏矩阵

  • 登录

  • 登录或注册以进行搜索。
  • 第一个帖子
    最后一个帖子
0
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]