-
Notifications
You must be signed in to change notification settings - Fork 4.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Patatrack integration - Pixel track reconstruction (10/N) #31722
Patatrack integration - Pixel track reconstruction (10/N) #31722
Commits on Jan 15, 2021
-
Use the
gpu
modifier to read the pixel clusters from the unpacker (#31Configuration menu - View commit details
-
Copy full SHA for ec0cc29 - Browse repository at this point
Copy the full SHA ec0cc29View commit details -
Implement Riemann fit for pixel tracks (#34)
Matrix operations are based on Eigen. A first GPU version, running Eigen together with CUDA, is available in the test directory but currently disabled.
Configuration menu - View commit details
-
Copy full SHA for a10a72d - Browse repository at this point
Copy the full SHA a10a72dView commit details -
Implement a Heterogeneous version of Raw2Cluster and RecHit (#62)
- reorganize `SiPixelRawToDigi` as `SiPixelRawToDigiHeterogeneous` using `HeterogeneousEDProducer` - output a `HeterogeneousEvent` - use `PixelThresholdClusterizer` - add `SiPixelDigiHeterogeneousConverter` - make cabling and gain transfers asynchronous - reorganize `SiPixelRecHits` as `SiPixelRecHitHeterogeneous` - move `PixelThresholdClusterizer` (back?) to interface+src in order to use it outside of RecoLocalTracker/SiPixelClusterizer - replace __host__ __device__ with constexpr to avoid weird compilation failures - split clusters to their own converter
Configuration menu - View commit details
-
Copy full SHA for 7dc6682 - Browse repository at this point
Copy the full SHA 7dc6682View commit details -
Heterogeneous Cellular Automaton for pixel tracks
Port the Cellular Automaton (back) to GPUs and CUDA, using the `HeterogeneousEDProducer` approach: - do memory allocations in the framework begin stream - run the memory copies and kernels asynchronously, in a dedicated CUDA stream per framework stream Use the new GPU::VecArray for holding repeated data structures. By default, run on the GPU in all gpu-enable workflows (e.g. 10824.8).
Configuration menu - View commit details
-
Copy full SHA for b117d17 - Browse repository at this point
Copy the full SHA b117d17View commit details -
Clean up
CAHitNtupletHeterogeneousEDProducer
(#83)Apply some clean up to the code and formatting of `CAHitNtupletHeterogeneousEDProducer` and `CAHitQuadrupletGeneratorGPU`, as suggested by @makortel during the review of #48: - clean up the `BuildFile.xml` - remove unused data members and arguments from function calls; - percolate the CUDA stream instead of storing it as a data member. Also: - add `cudaCheck` calls around memory allocations and copies; - reduce the number of memory allocations used to set up the GPU state.
Configuration menu - View commit details
-
Copy full SHA for ba46ad5 - Browse repository at this point
Copy the full SHA ba46ad5View commit details -
Port the Riemann fit to CUDA (#60)
- the CPU Riemann fit works using all combinations between the 2 booleans: `useErrors` and `useMultipleScattering`; - the standalone version of the GPU Riemann fit has been updated in order to explore all possibilities among the 2 booleans above: all of them work and produce identical results up to 1e-5 precision (the default one, 1e-6 fails when enabling multiScattering, most likely due to matrix inversions); - the GPU version of the Riemann fit within CMSSW works, with 1 fit assigned to each thread, with 32 threads/warps, all dynamically computed. Things that needs a "hack": - limit the "dynamic" size of Eigen matrices to at most, 4x4, which is just fine for quadruplets. Using anything wider will cause errors which I *believe* is related to the stack size of threads on the GPU; - cast matrices to be inverted to 4x4 (was done before the previous point: will revert it back and see if that's still needed or not, but I believe it is); this was done in order to "specialize" the `invert()` call to something that is "natively" supported by Eigen on GPU (that brought in also few `__host__` `__device__` here and there in Eigen); - fix the alignment of the `struct` holding the results of the fit, since its size was different on GPU and CPU, causing an annoying off-by-one effect.
Configuration menu - View commit details
-
Copy full SHA for b263509 - Browse repository at this point
Copy the full SHA b263509View commit details -
Configuration menu - View commit details
-
Copy full SHA for a2e681d - Browse repository at this point
Copy the full SHA a2e681dView commit details
Commits on Apr 1, 2021
-
Customize function to provide a minimal configuration for profiling (#…
…106) Can be included with the following snippet in the configuration: from RecoPixelVertexing.Configuration.customizePixelTracksForProfiling import customizePixelTracksForProfiling process = customizePixelTracksForProfiling(process) Removes validation, DQM, and output modules. As suggested in #70 (comment), an `AsciiOutputModule` is used to require the `pixelTracks`.
Configuration menu - View commit details
-
Copy full SHA for bb60075 - Browse repository at this point
Copy the full SHA bb60075View commit details -
Heterogeneous ClusterTPAssociation (#105)
Implement a heterogeneous Cluster-to-TrackingParticle associator running on the GPU.
Configuration menu - View commit details
-
Copy full SHA for a7c22e4 - Browse repository at this point
Copy the full SHA a7c22e4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1a43506 - Browse repository at this point
Copy the full SHA 1a43506View commit details -
Configuration menu - View commit details
-
Copy full SHA for b6b2fff - Browse repository at this point
Copy the full SHA b6b2fffView commit details -
Pixel doublets (actually CACells) are created on GPU and fed to CA. The whole workflow up to quadruplets candidates is now fully on GPU.
Configuration menu - View commit details
-
Copy full SHA for ecd1465 - Browse repository at this point
Copy the full SHA ecd1465View commit details -
Cleanup defines, includes, file names, and debug messages (#122)
Do not #ifdef on __NVCC__: to protect CUDA-aware code sections, check if the __CUDACC__ symbol is defined. The symbol __NVCC__ is defined when building with nvcc, but not when building CUDA code with clang. Move header files referenced from outside their directory to the interface/ directory, and update the include guards accordingly. Include <cuda_runtime.h> instead of <cuda.h> to handle the CUDA attributes in non-CUDA compilations. Rename PixelTrackReconstructionGPU_impl.cu to PixelTrackReconstructionGPU.cu. Other cleanup: #defines, debug messages, change __inline__ to inline, fix include guards, whitespaces, etc.
Configuration menu - View commit details
-
Copy full SHA for e539007 - Browse repository at this point
Copy the full SHA e539007View commit details -
Move all CUDA code to the plugins/ directory (#123)
Keep RiemannFit.h in the interface, as it is include-only.
Configuration menu - View commit details
-
Copy full SHA for 979dbdb - Browse repository at this point
Copy the full SHA 979dbdbView commit details -
Configuration menu - View commit details
-
Copy full SHA for f5e6831 - Browse repository at this point
Copy the full SHA f5e6831View commit details -
Cleanup after merging with CMSSW 10.2.2 (#134)
Clean up unnecessary changes, whitespaces, defines and include directives.
Configuration menu - View commit details
-
Copy full SHA for 4f361d1 - Browse repository at this point
Copy the full SHA 4f361d1View commit details -
Add optional flags to disable SOA->legacy conversion and GPU->CPU tra…
…nsfer (#132) Always produce the CPU cluster and rechit collections, since they are needed anyway. Add transfer and conversion flags to clusterizer, rechits and CA. Add a skeleton for the future pixel track producer. Add customize functions to disable conversions to legacy formats, and to disable unnecessary GPU->CPU transfers.
Configuration menu - View commit details
-
Copy full SHA for 65ac243 - Browse repository at this point
Copy the full SHA 65ac243View commit details -
Reformat the Riemann fit code (#143)
Apply clang-format reformatting to RiemannFit.h
Configuration menu - View commit details
-
Copy full SHA for 3ef1e8a - Browse repository at this point
Copy the full SHA 3ef1e8aView commit details -
Clean up and bugfixes for the Riemann fit (#148)
Fix for uninitialised variables. Always assume multiple scattering treatment and remove unused parameters. Remove test that has diverged from the actual implementation.
Configuration menu - View commit details
-
Copy full SHA for 14a9169 - Browse repository at this point
Copy the full SHA 14a9169View commit details -
Configuration menu - View commit details
-
Copy full SHA for c82fc4d - Browse repository at this point
Copy the full SHA c82fc4dView commit details -
Add MTV instance for pixel tracks from PV (#156)
Add separate plots for tracks associated to the primary vertex.
Configuration menu - View commit details
-
Copy full SHA for 2396633 - Browse repository at this point
Copy the full SHA 2396633View commit details -
Tune and speed up doublet algo (#158)
Tune and speed up the pixel doublet alforithm, and take advantage of GPU read-only memory for a further speedup. Includes a python notebook to tune the cuts for doublets and triplets.
Configuration menu - View commit details
-
Copy full SHA for f76d1a9 - Browse repository at this point
Copy the full SHA f76d1a9View commit details -
Optimise gpuPixelDoublets::doubletsFromHisto() kernel (#167)
Pre-compute few constants that could not be declared constexpr. Reduce temporary buffer size. Reduce the block size of the calls to gpuPixelDoublets::getDoubletsFromHisto() from 256 to 64, to make better usage of the GPU processors.
Configuration menu - View commit details
-
Copy full SHA for 9b538fc - Browse repository at this point
Copy the full SHA 9b538fcView commit details -
Add Rieman fit to the CA (#169)
Also, add back the stand-alone GPU fit test.
Configuration menu - View commit details
-
Copy full SHA for 0d80e17 - Browse repository at this point
Copy the full SHA 0d80e17View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6d9630c - Browse repository at this point
Copy the full SHA 6d9630cView commit details -
Clean up Riemann fit in CA (#178)
Reduce the number of blocks used to launch the Riemann fit kernels within the CA. Rename the kernels to avoid the ambiguiity with the standalone Riemann fit. Work around spurious warnings in the Eigen test.
Configuration menu - View commit details
-
Copy full SHA for 79fcd95 - Browse repository at this point
Copy the full SHA 79fcd95View commit details -
Riemann fit multiple scattering (#174)
Implement the multiple scattering treatments in the Riemann Fit. In particular: - modify the previous implementation of the multiple scattering in the circle fit to correctly cover both the barrel and the forward case; - implement the multiple scattering in the line fit in the S-Z plane both for the barrel and the forward case. The effective radiation length is still an approximate value since the phi angle is not taken into account (it is not known on a layer-by-layer case). Ad ad-hoc correction based on the inverse of the pt has been added, with a cut-off of 1 GeV. The pulls are ok-ish, the material could be further tuned. The Chi2 is flat on all eta range.
Configuration menu - View commit details
-
Copy full SHA for f932567 - Browse repository at this point
Copy the full SHA f932567View commit details -
Configuration menu - View commit details
-
Copy full SHA for e1c1a7e - Browse repository at this point
Copy the full SHA e1c1a7eView commit details -
The Riemann Fit has been reworked so that both barrel and forward cases are naturally supported without branching. The underlying assumption is the uniform material distribution within the Pixel Tracker. The line fit has been reworked and is now using an ordinary least square fit in the S-Z plane. See the motivations and explanations inside the comments in the code. Additional changes: - code clean up - remove unused functions - fix standalone test of RiemannFit on GPU
Configuration menu - View commit details
-
Copy full SHA for e14fd83 - Browse repository at this point
Copy the full SHA e14fd83View commit details -
Configuration menu - View commit details
-
Copy full SHA for eef1ec8 - Browse repository at this point
Copy the full SHA eef1ec8View commit details -
Migrate tracker local reconstruction and pixel tracking to Tasks (bac…
…kport cms-sw#25163) (#202) Backport "Migrate tracker local reconstruction and pixel tracking to Tasks" (cms-sw#25163) to the Patatrack branch: - migrate RecoLocalTracker_cff to Tasks; - migrate RecoPixelVertexing_cff to Tasks; - keeping sequences to avoid massive migration (for now).
Configuration menu - View commit details
-
Copy full SHA for ffa2d95 - Browse repository at this point
Copy the full SHA ffa2d95View commit details -
Fix MTV validation of initialStepPreSplitting tracks and add B-hadron…
… MTV variation to pixel track validation sequence (#199) - add B-hadron MTV variation to pixel track validation sequence - fix MTV validation of initialStepPreSplitting tracks
Configuration menu - View commit details
-
Copy full SHA for adea719 - Browse repository at this point
Copy the full SHA adea719View commit details -
Address code style and quality issues (#203)
Cleaned up by clang-tidy 7.0.0. Enabled checks: - boost-use-to-string - misc-uniqueptr-reset-release - modernize-deprecated-headers - modernize-make-shared - modernize-use-bool-literals - modernize-use-equals-delete - modernize-use-nullptr - modernize-use-override - performance-unnecessary-copy-initialization - readability-container-size-empty - readability-redundant-string-cstr - readability-static-definition-in-anonymous-namespace - readability-uniqueptr-delete-release See http://releases.llvm.org/7.0.0/tools/clang/tools/extra/docs/clang-tidy/index.html for details.
Configuration menu - View commit details
-
Copy full SHA for 15e668c - Browse repository at this point
Copy the full SHA 15e668cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9e6f88d - Browse repository at this point
Copy the full SHA 9e6f88dView commit details -
Full workflow from raw data to pixel tracks and vertices on GPUs (#216)
Port and optimise the full workflow from pixel raw data to pixel tracks and vertices to GPUs. Clean the pixel n-tuplets with the "fishbone" algorithm (only on GPUs). Other changes: - recover the Riemann fit updates lost during the merge with CMSSW 10.4.x; - speed up clustering and track fitting; - minor bug fix to avoid trivial regression with the optimized fit.
Configuration menu - View commit details
-
Copy full SHA for 917c412 - Browse repository at this point
Copy the full SHA 917c412View commit details -
Remove unnecessary pragmas (#249)
`#pragma unroll` is not supported by GCC, leading to compilation warnings in host code. GCC 8 supports `#pragma GCC unroll N` which could be used instead. However, benchmarking on a V100 with and without the `#pragma unroll` there is no observable difference, so it is simpler to remove them.
Configuration menu - View commit details
-
Copy full SHA for 3deb206 - Browse repository at this point
Copy the full SHA 3deb206View commit details -
Skip CUDA-related tests if no GPU is present (#252)
Make unit tests that require a CUDA device skip the test and exit succesfully if the CUDA runtime is not available, or no CUDA devices are available.
Configuration menu - View commit details
-
Copy full SHA for 0f2c2e0 - Browse repository at this point
Copy the full SHA 0f2c2e0View commit details -
Speed up the doublet finder (#260)
Introduce the inner loop parallelization in the doublet finder using the stride pattern already used in the "fishbone", and make use of a 2D grid instead of a hand-made stride.
Configuration menu - View commit details
-
Copy full SHA for 64b28b4 - Browse repository at this point
Copy the full SHA 64b28b4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5a77d60 - Browse repository at this point
Copy the full SHA 5a77d60View commit details -
Next prototype of the framework integration (#100)
Provide a mechanism for a chain of modules to share a resource, that can be e.g. CUDA device memory or a CUDA stream. Minimize data movements between the CPU and the device, and support multiple devices. Allow the same job configuration to be used on all hardware combinations. See HeterogeneousCore/CUDACore/README.md for a more detailed description and examples.
Configuration menu - View commit details
-
Copy full SHA for 96b2f73 - Browse repository at this point
Copy the full SHA 96b2f73View commit details -
Various updates to pixel track/vertex DQM and MTV (#285)
* Add DQM for pixel vertices * Add pT>0.9GeV pixel track collections to MTV * Add dzPV0p1, Pt0to1, Pt1 variants of pixel track DQM
Configuration menu - View commit details
-
Copy full SHA for 4ed9088 - Browse repository at this point
Copy the full SHA 4ed9088View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3e828dd - Browse repository at this point
Copy the full SHA 3e828ddView commit details -
Implementation of the broken line fit (#340)
Create modifiers for enabling the broken line fit on the cpu and on the gpu. Use dinamically-sized-matrices: the advantage over statically-sized ones is that the code would also work with n>4); the switch can be easily done at the start of the file. Update Eigen tests with the features used by the broken line fit.
Configuration menu - View commit details
-
Copy full SHA for a74051b - Browse repository at this point
Copy the full SHA a74051bView commit details -
Rework the Riemann fit and broken line fit (#338)
Merge the Riemann and broken line fits into single configurable pixel n-tuplet fitter, and extend it to work with up to 5 hits. Mmake the broken line fit the default algorithm. Try both triplets and quadruplets in the pixel "hole". Limit pT used to compute the multple scattering. Use the inline Cholesky decomposition. Generic clean up and improvements.
Configuration menu - View commit details
-
Copy full SHA for 874102c - Browse repository at this point
Copy the full SHA 874102cView commit details -
Improve pixel doublets and CA, and extend debugging functionality (#338)
Improve pixel doublets and CA: - add pixel cluster size and shape cuts in doublets; - add triplet cleaner; - improved cluster size studies - implement layer-dependent cuts in the CA. Add counters in GPU code and possibility to test full doublet combinatorics. Update python notebook and include z0 resolution.
Configuration menu - View commit details
-
Copy full SHA for f07cca0 - Browse repository at this point
Copy the full SHA f07cca0View commit details -
Migrate the pixel rechits producer and CA to the new heterogeneous fr…
…amework (#338) Use cleaned hits. Use pixel layer and ladders geometry, and use pixel triplets in the gaps. Optimise GPU memory usage: - reduce the number of memory allocations - fix the size of the cub workspace - allocate memory per event via the caching allocator - use constant memory for geometry and parameters - use shared memory where the content is the same for every thread Optimise kernel launches, and add a protection for empty events and overflows.
Configuration menu - View commit details
-
Copy full SHA for 260c0b2 - Browse repository at this point
Copy the full SHA 260c0b2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 548f5cf - Browse repository at this point
Copy the full SHA 548f5cfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 47dc7f7 - Browse repository at this point
Copy the full SHA 47dc7f7View commit details -
Configuration menu - View commit details
-
Copy full SHA for e5372ab - Browse repository at this point
Copy the full SHA e5372abView commit details -
Configuration menu - View commit details
-
Copy full SHA for daae2fa - Browse repository at this point
Copy the full SHA daae2faView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2b385c3 - Browse repository at this point
Copy the full SHA 2b385c3View commit details -
Implement triplets in the pixel ntuplet producer (#382)
Enable pixel triplets with: process.pixelTracksHitQuadruplets.minHitsPerNtuplet = 3 process.pixelTracksHitQuadruplets.includeJumpingForwardDoublets = True Changes: - adjust for the average pixel geometry and the beam spot position; - allow "jumping doublets" in the forward region (FPIX1-FPIX3) for triplets.
Configuration menu - View commit details
-
Copy full SHA for 9e6ca10 - Browse repository at this point
Copy the full SHA 9e6ca10View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0806471 - Browse repository at this point
Copy the full SHA 0806471View commit details -
Port the whole pixel workflow to new heterogeneous framework (#384)
- port the whole pixel workflow to new heterogeneous framework - implement a legacy cluster to SoA converter for the pixel RecHits - update the vertex producer to run on CPU as well as GPU
Configuration menu - View commit details
-
Copy full SHA for 8df4bc8 - Browse repository at this point
Copy the full SHA 8df4bc8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3ae0df1 - Browse repository at this point
Copy the full SHA 3ae0df1View commit details -
Move event and stream caches, and caching allocators out from CUDASer…
…vice (#364) To reduce dependencies on edm::Service, and to make CUDAService less of a collection of everything, split off from it: - the CUDAEventCache - the CUDAStreamCache - the caching allocators Other changes: - clean up unnecessary use of CUDAService - fix maxCachedFraction, add debug printouts - add make_*_unique_uninitialized that avoid the static_assert
Configuration menu - View commit details
-
Copy full SHA for a68be03 - Browse repository at this point
Copy the full SHA a68be03View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2d6d811 - Browse repository at this point
Copy the full SHA 2d6d811View commit details -
Configuration menu - View commit details
-
Copy full SHA for 468e9ac - Browse repository at this point
Copy the full SHA 468e9acView commit details -
Configuration menu - View commit details
-
Copy full SHA for 604a797 - Browse repository at this point
Copy the full SHA 604a797View commit details -
Replace use of API wrapper stream and event with plain CUDA, part 1 (#…
…389) Replace cuda::stream_t<> with cudaStream_t in client code Replace cuda::event_t with cudaEvent_t in the client code Clean up BuildFiles
Configuration menu - View commit details
-
Copy full SHA for 80ec6eb - Browse repository at this point
Copy the full SHA 80ec6ebView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4181007 - Browse repository at this point
Copy the full SHA 4181007View commit details -
Synchronize event in the CUDAProductBase destructor (#391)
Otherwise there are possibilities for weird races, e.g. combination of non-ExternalWork producers, consumed-but-not-read CUDAProducts, CUDA streams executing work later than expected (= on the next event).
Configuration menu - View commit details
-
Copy full SHA for 3756786 - Browse repository at this point
Copy the full SHA 3756786View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5a135cb - Browse repository at this point
Copy the full SHA 5a135cbView commit details -
Optimize doublet reconstruction and cuts (#411)
Reorder cuts and some factorize code to speed up doublets. Increase various buffers size not to overflow in case of very relaxed cuts. Rename some parameters to better reflect their actual action in code.
Configuration menu - View commit details
-
Copy full SHA for f532901 - Browse repository at this point
Copy the full SHA f532901View commit details -
Migrate cluster track associator (#409)
Migrate ClusterTPAssociationHeterogeneous using the depreacted HeterogeneousEDProducer to ClusterTPAssociationProducerCUDA, and implement a simple analyzer to consume its procuct. To test it, add a dummy analyzer to an MC workflow: process.load("SimTracker.TrackerHitAssociation.clusterTPCUDAdump_cfi") process.validation_step = cms.EndPath(process.globalValidationPixelTrackingOnly + process.clusterTPCUDAdump) process.tpClusterProducerCUDAPreSplitting.dumpCSV = True
Configuration menu - View commit details
-
Copy full SHA for 2b7e4cb - Browse repository at this point
Copy the full SHA 2b7e4cbView commit details -
Configuration menu - View commit details
-
Copy full SHA for ae764c5 - Browse repository at this point
Copy the full SHA ae764c5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7df797f - Browse repository at this point
Copy the full SHA 7df797fView commit details -
Configuration menu - View commit details
-
Copy full SHA for b43a1ed - Browse repository at this point
Copy the full SHA b43a1edView commit details -
Configuration menu - View commit details
-
Copy full SHA for f77f909 - Browse repository at this point
Copy the full SHA f77f909View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9ecedf7 - Browse repository at this point
Copy the full SHA 9ecedf7View commit details -
Implement changes from the CUDA framework review (#429)
Rename the cudautils namespace to cms::cuda or cms::cudatest, and drop the CUDA prefix from the symbols defined there. Always record and query the CUDA event, to minimize need for error checking in CUDAScopedContextProduce destructor. Add comments to highlight the pieces in CachingDeviceAllocator that have been changed wrt. cub. Various other updates and clean up: - enable CUDA for compute capability 3.5. - clean up CUDAService, CUDA tests and plugins. - add CUDA existence protections to BuildFiles. - mark thread-safe static variables with CMS_THREAD_SAFE.
Configuration menu - View commit details
-
Copy full SHA for 78dc66e - Browse repository at this point
Copy the full SHA 78dc66eView commit details -
Synchronise with CMSSW_11_1_0_pre2
Major changes: - restructure the RecoPixelVertexing/PixelVertexFinding package; - update the interface of PixelCPEFast.
Configuration menu - View commit details
-
Copy full SHA for 0491687 - Browse repository at this point
Copy the full SHA 0491687View commit details -
Apply feedback from upstream PR (#441)
Fix include guard in CUDADataFormats/Track/src/classes.h . Remove unused variables in DataFormats/Math/test/CholeskyInvert_t.cpp .
Configuration menu - View commit details
-
Copy full SHA for 712dc8b - Browse repository at this point
Copy the full SHA 712dc8bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3ecdd54 - Browse repository at this point
Copy the full SHA 3ecdd54View commit details -
Integrate the comments from the upstream PRs (#442)
Clean up the Patatrack code base following the comments received during the integration into the upstream release. Currently tracks the changes introduced due to - cms-sw#29109: Patatrack integration - trivial changes (1/N) - cms-sw#29110: Patatrack integration - common tools (2/N) List of changes: * Remove unused files * Fix compilation warnings * Fix AtomicPairCounter unit test * Rename the cudaCompat namespace to cms::cudacompat * Remove extra semicolon * Move SimpleVector and VecArray to the cms::cuda namespace * Add missing dependency * Move HistoContainer, AtomicPairCounter, prefixScan and radixSort to the cms::cuda namespace * Remove rule exception for HeterogeneousCore * Fix code rule violations: - replace using namespace cms::cuda in test/OneToManyAssoc_t.h . - add an exception for cudaCompat.h: cudaCompat relies on defining equivalent symbols to the CUDA intrinsics in the cms::cudacompat namespace, and pulling them in the global namespace when compiling device code without CUDA. * Protect the headers to compile only with a CUDA compiler
Configuration menu - View commit details
-
Copy full SHA for 23bc909 - Browse repository at this point
Copy the full SHA 23bc909View commit details -
Configuration menu - View commit details
-
Copy full SHA for cd2faf1 - Browse repository at this point
Copy the full SHA cd2faf1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 668deea - Browse repository at this point
Copy the full SHA 668deeaView commit details -
Clean up instances of using namespace ... from header files, following the comments from the upstream integration.
Configuration menu - View commit details
-
Copy full SHA for 71563e8 - Browse repository at this point
Copy the full SHA 71563e8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2bfeeb9 - Browse repository at this point
Copy the full SHA 2bfeeb9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 14de161 - Browse repository at this point
Copy the full SHA 14de161View commit details -
Replace cub prefix scan with home-brewed one (#447)
Replace the use of the prefix scan from CUB with a home-brewed implementation, using dynamic instead of static shared memory. No changes to physics or timing performance.
Configuration menu - View commit details
-
Copy full SHA for b20bd1b - Browse repository at this point
Copy the full SHA b20bd1bView commit details -
Configuration menu - View commit details
-
Copy full SHA for ca80b70 - Browse repository at this point
Copy the full SHA ca80b70View commit details -
Configuration menu - View commit details
-
Copy full SHA for ddeaccb - Browse repository at this point
Copy the full SHA ddeaccbView commit details -
Reduce GPU memory usage (#509)
Adjust the growth factor in the caching allocators to use more granular bins, reducing the memory wasted by the allocations. Use a dynamic buffer for CA cells components. Fix a possible data race in the prefix scan.
Configuration menu - View commit details
-
Copy full SHA for 17accf2 - Browse repository at this point
Copy the full SHA 17accf2View commit details -
Configuration menu - View commit details
-
Copy full SHA for ceb4e96 - Browse repository at this point
Copy the full SHA ceb4e96View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2004cbd - Browse repository at this point
Copy the full SHA 2004cbdView commit details -
Add customisations for profiling the Pixel-only workflow (#553)
customizePixelOnlyForProfilingGPUOnly: Customise the Pixel-only reconstruction to run on GPU Run the unpacker, clustering, ntuplets, track fit and vertex reconstruction on GPU. customizePixelOnlyForProfilingGPUWithHostCopy: Customise the Pixel-only reconstruction to run on GPU, and copy the data to the host Run the unpacker, clustering, ntuplets, track fit and vertex reconstruction on GPU, and copy all the products to the host in SoA format. The same customisation can be also used on the SoA CPU workflow, running up to the tracks and vertices on the CPU in SoA format, without conversion to legacy format. customizePixelOnlyForProfiling: Customise the Pixel-only reconstruction to run on GPU, copy the data to the host, and convert to legacy format Run the unpacker, clustering, ntuplets, track fit and vertex reconstruction on GPU; copy all the products to the host in SoA format; and convert them to legacy format. The same customisation can be also used on the CPU workflow, running up to the tracks and vertices on the CPU.
Configuration menu - View commit details
-
Copy full SHA for e641460 - Browse repository at this point
Copy the full SHA e641460View commit details -
Configuration menu - View commit details
-
Copy full SHA for 28d292a - Browse repository at this point
Copy the full SHA 28d292aView commit details -
Further clean up after merging CMSSW_11_2_0_pre7 (#556)
Minor bug fixes: - fix a typo in EventFilter/EcalRawToDigi/plugins/BuildFile.xml . Clean up: - remove obsolete ArrayShadow class; - remove obsolete profiling functions.
Configuration menu - View commit details
-
Copy full SHA for a817147 - Browse repository at this point
Copy the full SHA a817147View commit details -
Update the RelVal workflows and the CPU customisation (#549)
Update the RelVal workflows and the CPU customisation: - change the .501 workflow to run the full Patatrack pixel track reconstruction on CPU - add a customisation to run the Patatrack reconstruction with triplets, on CPU and GPU - add the .505 and .506 workflows to reconstruct triplets, on CPU and GPU Co-authored-by: Andrea Bocci <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c31b20f - Browse repository at this point
Copy the full SHA c31b20fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2636448 - Browse repository at this point
Copy the full SHA 2636448View commit details -
Configuration menu - View commit details
-
Copy full SHA for c6ac806 - Browse repository at this point
Copy the full SHA c6ac806View commit details -
Configuration menu - View commit details
-
Copy full SHA for bb61e1c - Browse repository at this point
Copy the full SHA bb61e1cView commit details -
Move hit indexes to 32 bits (#583)
Add a counter for forlorn doublets.
Configuration menu - View commit details
-
Copy full SHA for 7473687 - Browse repository at this point
Copy the full SHA 7473687View commit details -
Clean up the pixel local reconstruction code (#593)
Address the pixel local reconstruction review comments. General clean up of the pixel local reconstruction code: - remove commented out and obsolete code and data members - use named constants more consistently - update variable names to follow the coding rules and for better consistency - use member initializer lists in the constructors - allow `if constexpr` in CUDA code - use `std::size` instead of hardcoding the array size - convert iterator-based loops to range-based loops - replace `cout` and `printf` with `LogDebug` or `LogWarning` - use put tokens - reorganise the auto-generated cfi files and use them more consistently - adjust code after rearranging an `#ifdef GPU_DEBUG` block - apply code formatting - other minor changes Improve comments: - improve comments and remove obsolete ones - clarify comments and types regarding `HostProduct` - update comments about `GPU_SMALL_EVENTS` being kept for testing purposes - add notes about the original cpu code Reuse some more common code: - move common pixel cluster code to `PixelClusterizerBase` - extend the `SiPixelCluster` constructor Rename classes and modules for better consistency: - remove the `TrackingRecHit2DCUDA.h` and `gpuClusteringConstants.h` forwarding headers - rename `PixelRecHits` to `PixelRecHitGPUKernel` - rename SiPixelRecHitFromSOA to SiPixelRecHitFromCUDA - rename `siPixelClustersCUDAPreSplitting` to `siPixelClustersPreSplittingCUDA` - rename `siPixelRecHitsCUDAPreSplitting` to `siPixelRecHitsPreSplittingCUDA` - rename `siPixelRecHitsLegacyPreSplitting` to `siPixelRecHitsPreSplittingLegacy` - rename `siPixelRecHitHostSoA` to `siPixelRecHitSoAFromLegacy` Re-apply changes from cms-sw#29805 that were lost in the Patatrack branch.
Configuration menu - View commit details
-
Copy full SHA for 50f697e - Browse repository at this point
Copy the full SHA 50f697eView commit details -
Configuration menu - View commit details
-
Copy full SHA for e2c52fb - Browse repository at this point
Copy the full SHA e2c52fbView commit details -
Clean up the pixel local reconstruction code (#602)
Address the pixel local reconstruction review comments: - remove obsolete comments; - consistently use named constants; - rename data members and methods to be more descriptive; - rename local variables according to the coding rules and for consistency with cms-sw#32591; - update transient dictionaries to match data types.
Configuration menu - View commit details
-
Copy full SHA for 2455463 - Browse repository at this point
Copy the full SHA 2455463View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2f0c8d4 - Browse repository at this point
Copy the full SHA 2f0c8d4View commit details -
Clean up the pixel track reconstruction code (#606)
Updat EDM access: - switch to consumes() scheme for event setup; - simplify some event data access. Style fixes: - make class member private & fixed problematic cast; - format of comments for clang-tidy; - chang to enum class to avoid creating a namespace (usage becomes: pixelTrack::Quality::loose); - add article reference in comment (it was already further down in the file); - fix member functions and classes capitalization; - fix one letter or upper case variable names in formulas (trying to keep the naming from the reference article). Avoid some code repetitions.
Configuration menu - View commit details
-
Copy full SHA for 35c6817 - Browse repository at this point
Copy the full SHA 35c6817View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8d19af6 - Browse repository at this point
Copy the full SHA 8d19af6View commit details -
Minor fixes and clean up for the pixel track reconstruction code (#611)
Fix RecoPixelVertexing/PixelTrackFitting/test/BuildFile.xml following file renames. Remove unnecessary customisation from RecoPixelVertexing/Configuration/python/customizePixelTracksSoAonCPU.py .
Configuration menu - View commit details
-
Copy full SHA for 5bde441 - Browse repository at this point
Copy the full SHA 5bde441View commit details -
Configuration menu - View commit details
-
Copy full SHA for a75ae0b - Browse repository at this point
Copy the full SHA a75ae0bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 16e7fdb - Browse repository at this point
Copy the full SHA 16e7fdbView commit details