Release Notes¶
main¶
Oct. 24, 2024 don la dieu (nega at icecube.umd.edu)¶
IceTray Release v1.12.0
Update majority of tests to I3MTRandomService (#3658)
Clean up doxygen warnings (#3640)
add pre-commit for executable bit for shebangs (#3627)
Update tooling and code to use ruff v0.6.4 (#3624)
specify CL2.0 build option flag (#3616)
remove usage of trapz in clsim and ice-models (#3611)
remove execute bit from a few C++ source files
[CLSim] Fix copyright and license statements (#3542)
fix of hardcoded 0, replaced with more general iterator (#3514)
Cosmetic improvements to stubs (#3494)
[clsim] Fix double precision (#3506)
Non-spherical OMs data structures for clsim (#3520)
Update simprod-scripts to I3MTRandomService and fix shell script tests so failures are caught (#3631)
June 18, 2024 don la dieu (nega at icecube.umd.edu)¶
IceTray Release v1.11.0
Run mypy in CI (#3480)
mypy cleanup for simulation projects (#3417)
mypy cleanup for core projects (#3414)
Add stubs for even more pybindings (#3413)
Fix the photon path example (#3460)
Feb. 20, 2024 don la dieu (nega at icecube.umd.edu)¶
IceTray Release v1.9.2
Respect device UseNativeMath setting
Delete mailinglist files (#3357)
Fix extension for various files (#3330)
Add upgrade rules to ruff (#3316)
Remove all tab characters used for indentation from python files (#3300)
Dec. 14, 2023 don la dieu (nega at icecube.umd.edu)¶
IceTray Release v1.9.0
Remove Uber Header (I3.h) (#3151)
Remove naive datetime() objects (#3304)
Clean up invalid escape sequences for python3.12 (#3286)
Fix E731 lambda-assignment (#3271)
general python cleanups (ruff/E712) (#3268)
general python cleanups (ruff/E713) (#3269)
fix E703 useless-semicolon (#3266)
fix B028 no-explicit-stacklevel (#3265)
fix E714 not-is-test (#3270)
python ruff cleanup fix EXE001 (#3289)
Fix a number of issues identified by ruff (#3262)
remove unnecessary
__future__
imports (#3243)conform to newer versions of numpy slicing
general python cleanups
Oct. 12, 2023 don la dieu (nega at icecube.umd.edu)¶
IceTray Release v1.8.2
support for multiple modes of BFR scattering length correction (#3190)
add default PPC scattering length BFR correction
init version 10 support in python
include bfr scaling correction as last element of bfrParas
fix bug in concatenation
remove extraneous comment
June 22, 2023 don la dieu (nega at icecube.umd.edu)¶
IceTray Release v1.7.0
Make I3Tray.I3Tray and icecube.icetray.I3Tray the same thing. (#3102)
Remove all references to load_pybindings (#3086)
Dec. 12, 2022 don la dieu (nega AT icecube.umd.edu)¶
IceTray Release v1.5.0
Improve script for tilt map plot
Pull in version files and read in for clsim. (#2977)
Support for full-tilt parametrization (#2974)
Clsim - disable failing assert in testCableShadow and log results
Add optional hole-ice argument
Documentation cleanups
Jul. 27, 2022 don la dieu (nega AT icecube.umd.edu)¶
IceTray Release v1.4.0
Drop support for Python 2
Clean up python bindings / modules
Move SimServer/Client from CLSim to sim-services (#2799)
bfr-v2 implementation (#2841)
Clean up tests
Update opencl.hpp
Make OpenCL optional
Feb. 21, 2022 Tianlu Yuan¶
IceTray Release v1.3.0
Split off UnshadowedFraction into two parameters: UnshadowedFraction and DOMEfficiency. Users should only need to change the UnshadowedFraction argument to DOMEfficiency for the same behavior, leaving UnshadowedFraction to its default (#2809).
Restore functionality to save photon histories when PhotonHistoryEntries > 0
Working I3CLSimTabulatorModule (#2791)
Reimplement I3CLSimMakeHitsFromPhotons in terms of I3CLSimPhotonToMCPEConverterForDOMs. This makes it possible to use I3CLSimMakeHitsFromPhotons with photons generated by I3CLSimClientModule, at the expense of no longer being able to use it with photons generated with previous versions.
Tolerate weight*acceptance of up to 1+1e-4
Hobo-SnowStorm support:
I3CLSimFunction can be multiplied by a scalar and stored in I3Frame
setupDetector’s GCDFile takes either a file path or a tuple of (G,C) frames
I3CLSimLightSourceToStepConverters can be re-initialialized
I3CLSimMediumProperties can vary aniostropy strength
Feb. 5, 2020 Alex Olivas (aolivas@umd.edu)¶
Combo Release V00-00-01
Finalize frame cache in the edge case where no frames contained work (prevents crashes in edge cases) Fixes #2402. -jvs
Minor changes to the shadowed photon remover -amedina
Correct typo. Fixes #2404 -jvs
Gracefully shut down if photon->PE conversion raises an exception -jvs
Tolerate weight*acceptance of up to 1+1e-6 -jvs
Fix a bug that double-counted DeepCore DOM efficiency. In combo release V00-00-00, all high-QE DOMs detected 35% too many photons. -jvs
Dec. 20, 2019 Alex Olivas (aolivas@umd.edu)¶
Combo Release V00-00-00
Merge multiprocess-server branch. This is a major restructuring of clsim.
I3CLSimServer accepts steps over a ZMQ socket and distributes them to instances of I3CLSimStepToPhotonConverter. Multiple clients can share a server, allowing M:N CPU:GPU ratios rather than only 1:N.
I3CLSimModule is replaced by I3CLSimClientModule. I3CLSimClientModule only emits I3CompressedPhotons, so no pretty photon histories.
MaxParallelEvents and MaxEnergyToProcess options are gone; internal queues are filled dynamically to create complete propagator kernel invocations.
I3CLSimLightSourceToStepConverterGeant4 is factored into I3CLSimLightSourceToStepConverterAsync and I3CLSimLightSourcePropagatorGeant4. The latter is truly optional, making it possible to use clsim without initializing Geant4.
I3CLSimLightSourcePropagatorFromI3PropagatorService allows e.g. PROPOSAL to be run in a thread in I3CLSimClientModule. This can be used to save memory by discarding stochastic losses as soon as their light yield has been simulated.
Both I3CLSimLightSourcePropagatorGeant4 and I3CLSimLightSourcePropagatorFromI3PropagatorService can optionally record the secondaries they produce in an MCTree.
I3CompressedPhoton positions are relative to the module they hit, and have oversizing removed.
Photons are converted directly to (coalesced) I3MCPE in the collector thread of I3CLSimClientModule. This can save significant memory for high-energy events.
Merge spe-template branch.
I3CLSimLightSourcePropagatorGeant4 can be reinitialized, making it possible to change the wavelength bias without starting a new process. This is useful for implementing a hobo SnowStorm simulaton where systematic parameters change every N frames.
Removed MMCTrackListName option from I3CLSimMakePhotons. PROPOSAL now emits muon track segments directly, and they do not need to be reverse-engineered by I3MuonSlicer.
Direct, in-kernel cable shadow simulation can be enabled by setting the CableOrientation parameter in I3CLSimMakePhotons. This reduces isotropic efficiency by ~10%, but in a directionally specific way.
Nov. 12, 2018 Juan Carlos Diaz-Velez (juancarlos@icecube.wisc.edu)¶
Release V04-04-00
Individual SPE template correction factors and RDE
Reads DOMefficiency from icemodel cfg.
Unshadowed fraction parameter multiplies by IceModel DOMefficiency
June 22, 2018 Juan Carlos Diaz-Velez (juancarlos@icecube.umd.edu)¶
Release V04-03-02
Changes default hole-ice model to
Changes Summary service to XML agnostic version
Dec 7, 2017 Juan Carlos Diaz-Velez (juancarlos@icecube.wisc.edu)¶
Release V04-03-01
update geant4 detection script for py2-v3 support
Nov 3, 2017 Juan Carlos Diaz-Velez (juancarlos@icecube.wisc.edu)¶
Release V04-03-00
trac:r157950/IceCube GPU optimization: Fix double buffering in
TotalEnergyToProcess
mode ResettingmaxNumParallelEvents_
andmaxNumParallelEventsSecondFlush_
Fixes bug trac:#1461
August 22, 2017 Juan Carlos Diaz-Velez (juancarlos@icecube.wisc.edu)¶
Release V04-02-02
generation of compressed MCPEs.
June 26, 2017 Alex Olivas (olivas@icecube.umd.edu)¶
Release V04-02-01
clsim now works with Geant4 versions >= 4.10.x
Emit
I3CompressedPhotons
ifPhotonHistoryEntries
== 0fixed benchmark.py and tray segment parameters
March 24, 2017 Juan Carlos Diaz-Velez (juancarlos@icecube.wisc.edu)¶
Release V04-02-00
Major bug fixes are marked with “***
”.
Do not use older versions of clsim without these for anything!
r153861 + r153865: Make thread unpinning to work around stupid cluster managers also work on Ubuntu, and make the tabulator raise an error if no CPU OpenCL devices are found.
r153710: I3CLSimMakePhotons can now take a wavelength acceptance directly. The user is responsible for getting all the scaling factors right.
r149069 + r150508: new parameterizations for hadronic and EM showers are used (thanks andrii.terliuk) -> now re-factored into CMC (thanks jvs!)
***
r148636: fixed the hadronic shower parametrization by using the correct radiation length (thanks musner!)***
r149250: clsim/Geant4 does no longer use seawater when simulating glacial ice. This mostly affects late pulses from neutrons. (thanks asteuer!)r149878: hole ice parameterizations can now be configured when setting up clsim (thanks sebastian.sanchez)
several minor improvements to support mDOMs better (such as optional oversizing [r148281])
***
r147029 and r150787: Make clsim run efficiently on GTX 1080* cards and on TITAN X GPUs. Do NOT use older versions of clsim on these cards or you will waste a ton of GPU cycles.r143614: Moved I3Photon and I3CompressedPhoton to simclasses
***
r140057: Fixed a bug where in rare cases the last few frames would not be processed by clsim. (Thanks dschultz!)r131448: The cutoff distance for sources further away from any DOM than a certain distance is now configurable using the I3CLSimModule option “ClosestDOMDistanceCutoff”. It used to be hard-coded to 300m.
r130869: New “TotalEnergyToProcess” option to keep collecting input events as long as the total energy to be propagated is below a threshold. (Instead of just processing a fixed number of events in parallel.) Using this option should reduce fluctuations in the memory requirements of clsim jobs. This cannot currently be used with flasher simulations. If unset, the previous behavior is used.
various tablemaker fixes
December 22, 2014 Alex Olivas (olivas@icecube.umd.edu)¶
Release V04-00-05
Loading safeprimes files (without the .txt extension).
November 24, 2014 Alex Olivas (olivas@icecube.umd.edu)¶
Release V04-00-04
Builds without OpenGL and with Intel i7.
Newer, tighter safeprimes.
Switch to default value of numberOfPhotonsAtMaxBrightness.
Incorporate hybrid mode between GEANT4 and parametrization.
Get all devices, even those that are neither CPUs nor GPUs, like the Xeon Phi.
July 11, 2014 Claudio Kopper (ckopper@icecube.wisc.edu)¶
Release V04-00-03
some code cleanup: removed the dataclasses header backports
Warning
this version will not work with outdated dataclasses
minor OpenCL cleanups to make some implementations happy
added a benchmark script which can be used to check the GPU/CPU performance by propagating a couple of photons
safeprimes file will now be taken from I3_DATA if it exists
February 03, 2013, Alex Olivas (olivas@icecube.umd.edu)¶
more cleanups to move from I3MCPulse to I3MCPE
fixed a bug where the MCTree chopping would ignore secondary losses leading to light from muon stochastic losses to be ignored when looking at data pre-processed with CMC
January 29, 2013 Claudio Kopper (ckopper@icecube.wisc.edu)¶
Release V03-00-00
support for ice tilt and anisotropy
tuned when running on AMD cards (Radeon 7970 on cobaltamdgpu)
June 14, 2012 Claudio Kopper (ckopper@icecube.wisc.edu)¶
Release V00-02-01
replaces the OpenCL 1.1 version of the cl.hpp OpenCL C++ bindings with the 1.2 version. This currently breaks compatibility with some older OpenCL 1.0 implementations (notably Mac OS X 10.6 Snow Leopard), but allows clsim to be compiled with newer versions of the AMD APP SDK.
May 31, 2012 Claudio Kopper (ckopper@icecube.wisc.edu)¶
Release V00-02-00
fixes a bug where particles that fall below the Cherenkov threshold are immediately killed in Geant4
allows “device fission” to be used to make the photon propagator only use a fixed number of cores
can send statistics to a I3SummaryService
includes a new propagation mode where absorption is ignored (for generating photon-tables)
comes with a preliminary version of photon-tabulation code
flashers now have the appropriate time delay distributions
allows Standard Candle simulation
I3PhotonSeriesMap is now based on ModuleKey instead of OMKey (if available)
support mDOM simulations when compatible dataclasses are available
the safeprimes auto-downloader should be compatible with more systems now
oversized DOMs are compressed to ellipsoids to get better timing distributions
April 18, 2012 Claudio Kopper (ckopper@icecube.wisc.edu)¶
Release V00-01-05
This is a minor release that should improve compatibility with older nVidia cards (such as GTX 295) that do not have as much GPU memory as newer cards. The maximum amount of memory will now only be used on nVidia cards that have either “Tesla”, “GTX 580” or “GTX 680” in their names.
Performance for large I3MCTrees should be significantly improved in this release.