openmc icon indicating copy to clipboard operation
openmc copied to clipboard

Delta tracking

Open paulromano opened this issue 12 years ago • 7 comments

At some point, it would be nice to have the capability to do delta tracking. Jaakko Leppanen has found that delta tracking speeds up certain problems greatly (those with high mfp?).

paulromano avatar Jul 27 '11 02:07 paulromano

Any news on this? I recently ran some single LWR assembly calculations in OpenMC and found them to be about 50% slower than Serpent 2 both using 4 cores.

gridley avatar May 21 '18 18:05 gridley

Hi, @gridley. I can't speak with certainty for all of the developers, but I don't think there have been any recent major attempts to implement delta tracking. I think most of us believe that tracking isn't the biggest concern at the moment for runtime. The problems that are most painful for us are those with tons of nuclides (i.e. depletion) or tons of tallies (depletion or detailed MGXS). So currently those are the two biggest areas we're focusing on.

Also I should mention that if you're looking for a speedup in terms of tracking, it's worth trying to define your geometry in a couple of different ways. Complex cells (cells that use the ~ or | operators in their region specification) can significantly slow a calculation down. OpenMC will also slow down a lot if you have one surface that is used by many cells. This can happen, for example, if you cut a fuel pin into 100 axial cells and each uses the same ZCylinder for the outer radius; and you'll see a big speedup if you instead use lattices to do the axial cuts.

smharper avatar May 21 '18 18:05 smharper

Thanks for the lightning-fast response @smharper. This geometry did only include an axially infinite pin lattice, so no fancy complements here. It makes sense that other topics would take priority in speeding calculations up.

gridley avatar May 21 '18 18:05 gridley

@gridley If you're willing to share models, one of us can take a peek to see if there's anything obvious that is hurting performance.

paulromano avatar May 21 '18 18:05 paulromano

Hey @paulromano, thanks. The OpenMC model is here and the Serpent model to match is here.

Seems that Serpent takes 30 s but OpenMC 45 s.

gridley avatar May 21 '18 19:05 gridley

I note that you don't have equivalent boundary conditions in both codes, Serpent should be BC 2 to match your reflective condition in OpenMC. Or OpenMC should be 'periodic' to match Serpents BC 3. I dont know if this is the cause in the runtime difference, but you arent comparing apples to apples.

makeclean avatar May 22 '18 12:05 makeclean

Delta tracking will be useful for TRISO modeling. We've found that for an HTGR core, with random-TRISO, a roughly 6x runtime for OpenMC vs. Serpent.

tjlaboss avatar Aug 17 '22 17:08 tjlaboss