Replies: 12 comments 5 replies
|
Automatic mention of the @trilinos/muelu team |
|
@spdomino We maintain some performance runs on Aurora (ALCF). Here is the module environment & configuration for those runs: modulescmake options |
Is this with Trilinos develop? How are you running (MPI ranks, threads), and could you please provide some continuity timing logs? |
|
Thank you for the reply. Have your internal tests showed anything out of the ordinary lately by way of performance? Here, I should note that Aurora is not the same as this Intel CPU-based machine (Saphire Rapids). However, all I see by way of MKL specification is a few diffs. Would you think that could affect the AMG efficiency? This is a "small" case by my old standards (roughly 30 million elements), however, a study that still requires a capability-class machine provided by the NSF (we have multiple cases to run). My three cases have been specifying the following: I also have this line floating around:
I have not timed Muelu yet, however, I can try at the expense of my allocation:) If you have no other suggestions, I can try that in the next week. If I see anything different between the most recent development and one from April 14th, 2026 (when I built on a Stanford platform) I will send that and we can proceed as you see best. |
|
@jhux2 - could you also please review the vintage "milestone.xml" file to see if things still look okay with a modern viewpoint perspective? |
|
Understood... This is an orthogonal mesh and, as such, exercising the edge-based (seven-point canonical stencil on Hex8). ContinuityEQS 29 0.00398241 0.0785238 1 However, for around one second of a 3x3 momentum solve, I see 45 s of continuity - unlike anything I have ever seen since (dare I say) we were running SGS/GMRES for continuity (back in the Aztec/ML days) and taking 200 steps. Moreover, we are sitting on a CPU-based 35K elem/core balancing. I guess I'll create a verbose run and report back. Also, for this data point, I reverted to my April 14th build on SPX. |
|
Hi @rcknaus. Could you look at our Trilinos config for a Sapphire rapids build and provide ant input? I don’t recall anything I did differently on previous builds. But it would be useful knowing what SHA1 you are currently using. |
|
That build configuration looks standard to me. We're using 8e7286, 17.1, and haven't noticed a performance regression in the recent past, certainly nothing dramatic that'd cause 29 iterations to take 45 seconds with that node / core count. Anyway, nothing sticks out, but a verbose run might help like you say. You can also try https://github.com/kokkos/kokkos-tools kokkos-tools profiling to see what in particular is slow, to narrow things down. |
|
Thank you for the info. This is useful. On the SPR side, I found that Stampede3 has 1/2 the memory as the SNL SPR resource. The 30Mil case runs at 15 nodes (112 tasks per node; thread = 1). That places the elem/core count rather low (18k) and a bit expensive to run:) The data on the ICX side (dual socket, 2x40 cores) paints a very clear picture that something is off in the CVFEM (element-based) setup. I ran a case for ten time steps, with The formal log files are attached for all cases, as is a small table. Any insight as to why CVFEM setup costs are 50x edge-based would be useful to know. Personally, never have seen this before. In the meantime, I'll try to revert back to the last 17.1 Trilinos snapshot. Sometimes keeping up with development on the Apps side makes this hard.
mpf_K1h_600x400x100_0p001_Full_cvfem.logIcxVerbosity.txt |
|
Some observations. From the first file:
This could explain why the setup is so slow. Not sure if this means that the matrix is bad or that something in MueLu broke. |
|
The results look sane [1], with the solver convergence in the 20-ish range. The simulation is simply extremely slow. I am also concerned over the lack of reuse being operational. The Nalu code base calls an internal Muelu “reuse” function. I’ll try to look at the release Robert is using to see if my app code is too up to date. |
|
I think we moved to this xml since the previous bug report I field in April was again killed due to a bad memory allocation. The edge case is handling this, and I checked to make sure the CVFEM was using a reduced LHS laplace operator. I’ll revert to testing with the standard distance laplacian approach. I’ll also test more on our local cases what might be going on with the MueluReuse call. Is that well tested? |
Uh oh!
There was an error while loading. Please reload this page.
Question
Greetings,
I am running a research-based simulation study on the NSF TACC Stampeded3 partition, see: https://docs.tacc.utexas.edu/hpc/stampede3/
Are there any best practices for building on an Intel-based Saphire Rapids? This machine mirrors an institutional resource at the Labs (112 cores on two sockets (2 x 56 cores)) where we successfuly ran Nalu (200 node, 600 Mil element mesh) on a production simulation of an elevated cylinder subjected to crossflow in both the sub and supercritical drag regime. I avoided any -spr internal flags as I wanted to be able to run the same executable over the Stampede resource (SPR, SPX, SKX). What I found is that we have Muelu dying in a platform memory allocation - I suppose not unlike what I reported a few months ago, but again at the Muelu construction. Sadly, all I see are system errors "bad allocation".
Second, and just as complicated, I backed down to the TACC ICX partition (dual socket, 40 cores/socket), simulation time seem roughly the same speed as a legacy Stanford platform (circa 2015) of Xenon nodes, 32 cores on two sockets (2x16 cores using hyper threading; matching the overall core count of O(1000)).
Something looks painfully apparent in our continuity solve with XML as follows: https://github.com/COMERI/Mare-Nalu/blob/main/reg_tests/xml/milestone.xml When I say painfully apparent, I mean like Haswell vs KNL like shock:)
I am retreating to my Trilinos build in late March (the same build the Stanford resource is using) to see if there was a performance regression (I know I have reported on a few diffs over the months; and I doubt the latest Intrepid ticket is related to this - but I need to try something).
Any suggestions on either nuance (SPR first, comments on performance regression second) would be appreciated. Are there any SPR tests in-house to the development process?
All reactions