Skip to content

Releases: artis-mcrt/artis

v2024.09.1

13 Sep 14:16
8763322
Compare
Choose a tag to compare

What's Changed

  • Fix resetting particle dep estimators (low impact) by @lukeshingles in #124
  • Replace level transition and phixtarget pointers with indicies into block allocations by @lukeshingles in #123
  • Move warning for Planck peak outside NU_MIN_R, NU_MAX_R from packet prop to grid update

Full Changelog: v2024.09...v2024.09.1

Performance

sim2010 classic mode 2-120 days 2e7pkt 960 core JUWELS runtime decreased from 1.18k core hrs (v2024.09) to 1.13k core hours (4.5% faster). Compared to classic (11.45k core hours) this is 10.1x faster.

v2024.09

06 Sep 07:16
ec46b73
Compare
Choose a tag to compare

What's Changed

Full Changelog: v2024.08...v2024.09

Performance

The previous release v2024.08 was not benchmarked, but significant gains have been made since v2024.04 with bit-identical output (except for the classic phixs read-in fix in v2024.08).

  • W7 (Shingles et al. 2022) NLTE nebular 960 core 2e9pkt 150-410d JUWELS runtime decreased from 18.6k core hrs (published 2022) to 10.4k core hrs (v2024.04 version) to 6.4k core hrs (2.9x faster than 2022).
    • With the Simpson-rule integrator, time decreases to 4.96k core hrs (3.7x faster than 2022)
  • subMch Shen+2018 NLTE nebular 960 core 1e9pkt 150-410d runtime decreased from 13.14k core hrs (20210417 version) to 7.30 k core hrs (v2024.04) to 5.36k core hrs (2.45x faster than 20210417).
  • sim2010 classic mode 2-120 days 2e7pkt 960 core JUWELS runtime decreased from 11.45k core hrs (ARTIS-CLASSIC) to 3.81k core hrs (20230526 version) to 1.87k core hrs (v2024.04) to 1.18k core hrs (9.7x faster than classic).

v2024.08

28 Aug 11:04
9a31c2b
Compare
Choose a tag to compare

What's Changed

Important fix for reading classic phixsdata.txt tables (broken since v2023.05)

Other changes

  • Reduce bfrate raw on each node and Broadcast reduced quantity; Replace nt_bcast with MPI Pack/Unpack by @jpollin98 in #82
  • Extend electron binding energies and shell occupancy data for work function approximation of non-thermal ionisation by @ccollins22 in #62
  • Update Just opacity in every time step by @gleck97 in #84
  • Add Wollaeger thermalisation scheme by @gleck97 in #89
  • Makefile: Avoid unnecessary compilation and linking of up-to-date sn3d and exspec by @lukeshingles in #87
  • Avoid dereferencing pointers to zero-size photoionisation arrays by @lukeshingles in #90
  • Fix time bug in Barnes gamma thermalisation and ray-tracing error in Wollaeger gamma thermalisation by @lukeshingles in #95
  • Track per-cell emission and deposition rates for alphas, positrons, and electrons by @lukeshingles in #86
  • Add Guttman Gamma Thermalisation by @gleck97 in #93
  • Fix compilation errors for nvc++ 24.5 with unified-memory GPUs and clang 19 by @lukeshingles in #98
  • Use stable_sort for test reproducibility across C++ standard library implementations by @lukeshingles in #102
  • Fix some clang-tidy 19 warnings, use more std::ranges, const correctness, and anonymous namespaces by @lukeshingles in #103
  • Convert more raw pointers to std::vectors, flatten nested arrays, and simplify naming by @lukeshingles in #104
  • Communicate elemental abundance updates between ranks by @lukeshingles in #105
  • Use node-shared memory for non-thermal excitation ratecoeffs by @jpollin98 in #99
  • Nonthermal: simplify and reduce memory use, clean up comments by @lukeshingles in #107
  • NLTE: Reuse matrix and vector storage instead of alloc/free on each element solution by @lukeshingles in #108
  • Non-thermal: Reduce heap allocations during update_grid by @lukeshingles in #109
  • Shrink upper-triangular Spencer-Fano matrix during construction and avoid linelist lookups while looping through excitations by @lukeshingles in #110
  • Use stable_sort only for reproducible CI mode by @lukeshingles in #111
  • Improve checks during phixs file reads and make PHIXS_CLASSIC_NO_INTERPOLATION constexpr by @lukeshingles in #114

Full Changelog: v2024.06.03...v2024.08

v2024.06.03

03 Jun 13:48
6f710eb
Compare
Choose a tag to compare

What's Changed

  • Fix race condition with node-shared corrphotoionrenorm array by removing unnecessary zero-fill by @lukeshingles in #80
  • Revert attempted classic fix by @lukeshingles in #81
  • Normalise bound-free estimators on each rank independently to eliminate MPI_Bcast and skip NLTE solver if Te=MINTEMP by @jpollin98 in #54
  • Add Just grey opacity mode 6 by @gleck97 in #71
  • CI: Test in 2x2 multi-node configuration by adding optional MAX_NODE_SIZE override by @lukeshingles in #78

Full Changelog: v2024.05.2...v2024.06.03

v2024.05.2

28 May 12:50
d3921c6
Compare
Choose a tag to compare

What's Changed

  • Fix major issues in classic mode for deflagration model by @lukeshingles in #72
  • Add optional thermalisation coefficient for bound-bound interactions by @lukeshingles in #67

Full Changelog: v2024.5.1...v2024.05.2

v2024.5.1

21 May 07:44
Compare
Choose a tag to compare

What's Changed

Full Changelog: v2024.5...v2024.5.1

v2024.5

16 May 09:06
595b941
Compare
Choose a tag to compare

What's Changed

  • Fix virtual packet save contribs mode on resume from crash by @lukeshingles #55
  • Add option for Barnes thermalisation of gamma-ray energy by @gleck97 #56
  • Assert grid corner < CLIGHT not needed with FORCE_SPHERICAL_ESCAPE_SURFACE by @ccollins22 #57
  • CI: Add gcc-14 and run on Ubuntu-24.04 by @lukeshingles in #61

Full Changelog: v2024.04...v2024.5

v2024.04

26 Apr 12:01
d9e7d90
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v2023.10...v2024.04

v2023.10

21 Oct 08:37
00661cf
Compare
Choose a tag to compare

What's Changed

Full Changelog: v2023.5.3...v2023.10

v2023.5.3

06 Oct 09:04
240684a
Compare
Choose a tag to compare

What's Changed

  • Fix for assertion failure cooling_contrib_ion != C_ion when resuming in an LTE timestep with NLTE_POPS_ON
  • Add citation information by @lukeshingles in #38
  • Update cambridge icelake scripts by @lukeshingles in #39

Full Changelog: v2023.5.2...v2023.5.3