Skip to content
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

Geometry template and barrel extension #35

Merged
merged 35 commits into from
Feb 7, 2023

Conversation

ebrondol
Copy link
Collaborator

@ebrondol ebrondol commented Dec 7, 2022

This PR aims to address the following open issues:

BEGINRELEASENOTES

  • Template CLUEAlgo and CLUEAlgoGPU on TILE_CONST
  • Correct treatment of different part of the ECAL detector: EB, EE+ and EE-
  • Phi search extension in CLUEAlgo
    ENDRELEASENOTES

Still to do to finalize this PR:

  • More clear readme.md
  • Recipe on how to add a new detector
  • Clean up code in several places
  • Template on the TILE and insert constants_type_t to access to the variables in the TILE_CONST
    Macro folder also to be cleaned up and make accessible to other developers -> keep it for a later PR

Developments on GPU:

@vvolkl

@vvolkl
Copy link
Contributor

vvolkl commented Dec 12, 2022

With the added suffix, LayerTilesGPUT becomes a bit hard to read, maybe better LayerTilesGPU_T?

Otherwise LGTM.

@ebrondol
Copy link
Collaborator Author

ebrondol commented Dec 12, 2022

With the added suffix, LayerTilesGPUT becomes a bit hard to read, maybe better LayerTilesGPU_T?

Otherwise LGTM.

Thanks, this was addressed in the last commit.

@ebrondol ebrondol changed the title WIP: Geometry template and barrel extension Geometry template and barrel extension Dec 16, 2022
@ebrondol
Copy link
Collaborator Author

From my side this PR is ready.

The tests (and fixes, if needed) on the GPU part can also be done in another PR when the temporary fix on the initializer list for nvcc is merged.

@ebrondol
Copy link
Collaborator Author

@rovere might also want to send a review of this PR before merging

@ebrondol
Copy link
Collaborator Author

ebrondol commented Dec 21, 2022

Hi @vvolkl @tmadlener ,
from my side this PR is ready to go in.
I have reported the situation on the GPU side in the description of the PR but given that the tests are running fine and the compilation as well, I would open an issue and postpone this to a future PR.

@ebrondol
Copy link
Collaborator Author

ebrondol commented Jan 5, 2023

Hi @vvolkl @tmadlener
Any news on the merging of this PR ?
Happy 2023!

@andresailer andresailer self-requested a review January 10, 2023 08:14
@ebrondol ebrondol requested a review from vvolkl January 16, 2023 10:53
Copy link
Contributor

@andresailer andresailer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generic Comment

  • move the header files to include/clue and #include "clue/...", to separate things a little bit more in common insallations or views
  • Otherwise also mostly minor comments, nothing blocking, I think.

Thanks!

include/LayerTilesConstants.h Show resolved Hide resolved
include/LayerTiles.h Show resolved Hide resolved
include/LayerTiles.h Outdated Show resolved Hide resolved
include/LayerTiles.h Outdated Show resolved Hide resolved
include/LayerTiles.h Outdated Show resolved Hide resolved
src/CLUEAlgo.cc Show resolved Hide resolved
src/CLUEAlgoGPU.cu Show resolved Hide resolved
src/CLUENtuplizer.cpp Show resolved Hide resolved
src/CLUENtuplizer.cpp Outdated Show resolved Hide resolved
src/ClueGaudiAlgorithmWrapper.cpp Outdated Show resolved Hide resolved
@ebrondol
Copy link
Collaborator Author

Hi @andresailer, with regards to the suggestion here below (and other similar ones):

Generic Comment

  • move the header files to include/clue and #include "clue/...", to separate things a little bit more in common insallations or views

We were in an ongoing discussion with @vvolkl about introducing kalos/clue in the key4hep stack so that we could have taken the entire library instead of copy-paste. I would keep this library independent from DD4hep geometry, for example. This is still under discussion and I hope it will be implemented soon.

@ebrondol
Copy link
Collaborator Author

Hi @andresailer , if I am not mistaken, I have resolved all comments.
The one related to the possibility of phi being zero needed some changes in the code. It was also resolved today and tested. Please have a look if I missed anything - thank you.

docs/clic-recipe.md Outdated Show resolved Hide resolved
First attempt to template, still with Segm Fault

Extend template to Cupla, still with Segm Fault

Fix memory allocation, it runs correctly now

Total number of layers defined in LTConstants now

Template also the GPU part
Correct parameters for CLICdet

Include CLD geometry

Add template class for CLD
Change x input in CLUE for barrel

Separate barrel from endcap

Run correctly EE+ and EE-

Consistency checks on x and y added
Include phi search in barrel tile

CLD and generic layer updated
Update clicRec config file after PR#91 in k4MarlinWrapper

Change name to make it more clear

Update recipes and config files
Include phi search in barrel tile for GPU code

Small fix
@andresailer andresailer force-pushed the geometryTemplateGPU_rebase branch from c78db02 to 6aacca7 Compare February 7, 2023 16:21
@andresailer andresailer enabled auto-merge (rebase) February 7, 2023 16:21
@andresailer andresailer merged commit 70931cf into key4hep:main Feb 7, 2023
@ebrondol ebrondol deleted the geometryTemplateGPU_rebase branch February 13, 2023 14:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Extend to use CLUE in barrel Template CLUE class to include multiple geometries
3 participants