Age | Commit message (Collapse) | Author | |
---|---|---|---|
2011-08-15 | woops. dot product should be clamped to [-1.0,1.0]. | Anthony LaTorre | |
2011-08-15 | fix nan bug by clamping dot() of surface normal and -photon direction to ↵ | Anthony LaTorre | |
[0.0,1.0] | |||
2011-08-14 | Rewrite the color_solid function in gpu.GPU (and associated CUDA code) | Stan Seibert | |
to make it 100x faster. Instead of having each CUDA thread loop over the full triangle list, we give each thread a single triangle and ask it to look up the hit status and color for that triangle. The hit array and color array are small enough (approx 30,000 entries) to fit into the cache, so this goes much faster. Now the event viewer is quite snappy! | |||
2011-08-14 | Add a helper function to the ROOT Channel class that will populate 3 | Stan Seibert | |
arrays with hit information: hit or not, time and charge. Handy for fetching all the hits in an event into numpy arrays. | |||
2011-08-14 | Oops, view.py is still in use. | Stan Seibert | |
2011-08-13 | Remove unused render and view files. They have both been superceded by ↵ | Stan Seibert | |
camera.py. | |||
2011-08-13 | A faulty optical process can make the position or direction of the | Stan Seibert | |
photon into NaN on the GPU. Now we abort these photons rather than let them lock up the intersect_mesh() method. There is a new history bit (#31) that indicates when a NAN_ABORT has occurred, and this bit is checked for by GPU.propagate(). If set for any of the photons, a warning message is printed. While not as good as preventing the NaN problem in the first place, this at least ensures we are aware of the problem. | |||
2011-08-13 | For consistency, we should keep the water index of refraction down to | Stan Seibert | |
200 nm, like all the other optical properties. It no longer is a speed benefit, anyway. | |||
2011-08-13 | Finally get GEANT4 to stop printing debug information about all the physics ↵ | Stan Seibert | |
processes | |||
2011-08-12 | merge | Anthony LaTorre | |
2011-08-12 | do not check child nodes of a node at which the distance to the bounding box ↵ | Anthony LaTorre | |
is further than a triangle the ray/photon has already intersected | |||
2011-08-12 | Merge | Stan Seibert | |
2011-08-12 | Use an input and output photon queue in order to consolidate all the | Stan Seibert | |
photons that didn't die during propagation into the beginning of the list. This speeds up propagation by reducing the number of partially filled CUDA warps on the next propagation step. 2.2 million photons/sec on LBNE! | |||
2011-08-12 | merge | Anthony LaTorre | |
2011-08-12 | speedup Mesh.remove_duplicate_vertices() | Anthony LaTorre | |
2011-08-12 | Widen the field of view in camera to make it easier to look at Cherenkov ↵ | Stan Seibert | |
rings from inside the detector. | |||
2011-08-12 | Allow multiple GEANT4 generator threads to keep up with the speed of photon ↵ | Stan Seibert | |
propagation. Defaults to 4. | |||
2011-08-12 | Segmented cylinder FOR MOAR SPEED! 1.8 Mphotons/sec! | Stan Seibert | |
2011-08-12 | G4Generator and sim.py can now generate boosted pi0 decays. | Stan Seibert | |
The ROOT data structure has been extended to allow storage of the individual gamma rays as subtracks. | |||
2011-08-12 | Refactor ROOT file writing into fileio.root.RootWriter class | Stan Seibert | |
2011-08-12 | Storage for subtracks in ROOT data structure. | Stan Seibert | |
2011-08-11 | Make the generator process a "daemon" process, so it will be cleaned | Stan Seibert | |
up when the parent exits, and also start the generator process earlier. | |||
2011-08-11 | merge | Stan Seibert | |
2011-08-11 | Tell CUDA to enlarge L1 cache. | Stan Seibert | |
2011-08-11 | merge heads | Anthony LaTorre | |
2011-08-11 | add consume() to itertoolset. checksum the number of bits shifted in each ↵ | Anthony LaTorre | |
iteration of the bounding volume hierarchy construction. only cache the bounding volume hierarchy information. | |||
2011-08-11 | No need for __noinline__ now that kernel caching works. | Stan Seibert | |
2011-08-11 | Show number of registers used in CUDA kernels | Stan Seibert | |
2011-08-11 | Switch from texture to float3 array for upper and lower bounds. 10% speed ↵ | Stan Seibert | |
boost! | |||
2011-08-10 | Set the GEANT4 and CUDA RNG seeds using current time and process ID if not ↵ | Stan Seibert | |
set on command line. | |||
2011-08-10 | Use WCSim properties for water with the lbne detector | Stan Seibert | |
2011-08-10 | Fix misuse of Material.set(), so now wavelengths and values of material | Stan Seibert | |
properties are not transposed. | |||
2011-08-10 | Using gzip compression level 1, the BVH at 10 bit is 7x smaller. Adds | Stan Seibert | |
10 seconds to cache load time if the BVH file is in the memory cache, otherwise this is faster if the BVH file must be read fresh from disk. | |||
2011-08-10 | Rename chroma.io to chroma.fileio to avoid collision with Python package ↵ | Stan Seibert | |
named io | |||
2011-08-10 | merge heads | Anthony LaTorre | |
2011-08-10 | add the ability to cache a geometry along with its bounding volume ↵ | Anthony LaTorre | |
hierarchy. cached files are stored in $HOME/.chroma. fixed the timeit() decorator so that the decorated function is still able to pass back a return value. | |||
2011-08-09 | Automatically detect kernprof and profile main() in sim.py. Also ↵ | Stan Seibert | |
synchronize CUDA calls. | |||
2011-08-09 | The --use-fast-math gives the simulation another 25% speed boost. | Stan Seibert | |
2011-08-09 | Autodetect presence of Space Navigator rather than require an option. | Stan Seibert | |
2011-08-09 | Raise exception if unable to spnav_x11_open() | Stan Seibert | |
2011-08-09 | Bug fix that caused sim.py to only record hits on the first 3 PMTs | Stan Seibert | |
2011-08-09 | fix variable name in GPU.color_solids() | Anthony LaTorre | |
2011-08-09 | merge heads | Anthony LaTorre | |
2011-08-09 | switch to indexing child nodes by start and stop indices instead of start ↵ | Anthony LaTorre | |
and length; this reduces a bit of arithmetic when traversing the bounding volume hierarchy and makes the code in Geometry.build() more concise. add an untested cuda kernel to interleave the bits in three uint64 arrays. | |||
2011-08-09 | Put number of detected photons into charge value for channel. | Stan Seibert | |
2011-08-09 | Store a photon history for each hit channel. If multiple photons hit the | Stan Seibert | |
same channel, their history bits are OR'ed together. | |||
2011-08-09 | Update camera to use SpaceNav over X11 protocol. Now events pass through ↵ | Stan Seibert | |
pygame loop. | |||
2011-08-09 | Update spnav ctypes wrapper to support X11-based communication. | Stan Seibert | |
2011-08-08 | propagate() takes an array of photon offsets and a range of | Stan Seibert | |
offsets to load. Now events with more photons than RNG states can be propagated through multiple kernel calls. Also lays the groundwork for consolidating photons between steps to reduce the amount of propagation work required. | |||
2011-08-08 | Record generated particle information in data structure | Stan Seibert | |