|
[Sponsors] |
Is temporal parallelization good for modern CFD codes? |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
August 31, 2022, 16:27 |
Is temporal parallelization good for modern CFD codes?
|
#1 |
Senior Member
Sayan Bhattacharjee
Join Date: Mar 2020
Posts: 495
Rep Power: 8 |
Hello everyone,
I was reading Chapter-11 of Ferziger's book. The authors directly recommend spatial and temporal parallelization for improving solver performance. Spatial parallelization is obviously very common i.e domain decomposition. I'm not sure if temporal parallelization is any good. I don't know if I misunderstood it, but the authors seem to recommend it very strongly, and say if we compute multiple timesteps at once, then our parallelization efficiency improves, as obviously we would be doing more work, and communication overhead will thus be very less in comparison. Paolo mentioned this once, in a random comment one year ago, but I'm not sure how it actually works, or if it's actually any good. Ferziger recommends many papers, and I'm interested to check them out later. What are your views on temporal parallelization? Are they any good? Thanks! |
|
September 1, 2022, 05:30 |
|
#2 |
Senior Member
Filippo Maria Denaro
Join Date: Jul 2010
Posts: 6,855
Rep Power: 73 |
To be honest I have no experience and my idea is that only for a steady solution that could be useful.
Since the mathematical character of the equation is not elliptic in time, if you want to solve a physical transient I don’t see how you can really parallelize in effective way. |
|
September 1, 2022, 06:05 |
|
#3 | |
Senior Member
Sayan Bhattacharjee
Join Date: Mar 2020
Posts: 495
Rep Power: 8 |
Quote:
Not sure how to use temporal parallelization for steady state though, because we do use an artificial time to advance it, and even though the equations should be elliptic in time, i don't know if the artificial time would cause any issue, or if it makes the time advancement parabolic. The book recommends using the old solution from the outer iterations and then running the inner iterations with temporal parallelization. Last edited by aerosayan; September 1, 2022 at 07:32. |
||
September 1, 2022, 10:02 |
|
#4 |
Senior Member
mauricio
Join Date: Jun 2011
Posts: 172
Rep Power: 18 |
i read about it there too.. it's temping but even for steady problems it's tough to digest the idea..lol...
First, i see you gotta decide whether, for 8 cores, how to split the solution .. 4-t_dom + 4s_dom or 6 s_dom + 2 tem_dom ?.this alone is a hard call to make.. anyway.. i think they saw this window in implicit solvers,,thus it could work for both steady and transient cases? idk.. but i see they're playing with the idea of predictions and corrections between inner and outer data... i guess they are trying to use the old outer data to start the next time steps... but i see you'd be facing the same issues of higher order spacial discretizations, where you need more downstream data to run/start the solver....anyway.. i think you gotta put your hands explicitly on it to see the stability and efficiency issues of this idea..
__________________
Best Regards /calim "Elune will grant us the strength" |
|
September 1, 2022, 10:24 |
|
#5 |
Senior Member
Lucky
Join Date: Apr 2011
Location: Orlando, FL USA
Posts: 5,750
Rep Power: 66 |
Temporal parallelization means partitioning the the outer iterations which as mentioned already is not really a thing. You can't solve for the solution at the last time-step independently of the first time step.
Accelerating the inner iterations via using multigrid methods or preconditioners is not what we would call temporal parallelization, or paralellization. Parallelization implies some kind of partitioning. Think parfor versus for. Very misleading. |
|
September 1, 2022, 10:36 |
|
#6 | |
Senior Member
Sayan Bhattacharjee
Join Date: Mar 2020
Posts: 495
Rep Power: 8 |
Quote:
The "parallelization" term is definitely misleading. The solution is supposed to use solution from the outer iterations and predict the solution then correct them later on. I don't know, it's advanced for me, but very interesting. Trying first with simple 1D system might help me. |
||
September 2, 2022, 08:57 |
|
#7 |
Senior Member
|
I don't recall that part in ferziger, but the last (of th every few) work I've read about the topic actually worked on unsteady hyperbolic cases, with a splitting based on characteristics (or sort of). Very complex, specific and questionable in the end, as you can never be sure that point x won't need info from point x+r before time t+T. If it does you need to correct your already complex time parallel computation.
|
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
CFD salary | dan collen | Main CFD Forum | 5 | August 22, 2001 10:56 |
Question about cfd codes. | Bill | Main CFD Forum | 24 | August 14, 2001 21:17 |
CFD Codes | Jonas Larsson | Main CFD Forum | 5 | September 14, 1998 08:08 |
CFD - Trends and Perspectives | Jonas Larsson | Main CFD Forum | 16 | August 7, 1998 17:27 |
salary range | Frank Muldoon | Main CFD Forum | 7 | August 3, 1998 20:04 |