ATLAS Offline Software
SeedMakingDataStructures.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRIGINDETCUDA_SEEDMAKINGDATASTRUCTURES_H
6 #define TRIGINDETCUDA_SEEDMAKINGDATASTRUCTURES_H
7 
8 static constexpr unsigned int MAX_MIDDLE_SP = 300000;
9 static constexpr unsigned int MAX_DOUBLET = 50000000;
10 static constexpr unsigned int NUM_MIDDLE_THREADS = 32;
11 static constexpr unsigned int OUTER_THREADS_MULTIPLIER = 4; // i.e thread block is 32 x 4*192/32
12 static constexpr unsigned int MAX_NUMBER_DOUBLETS = 1500;
13 static constexpr unsigned int NUM_TRIPLET_BLOCKS = 1024;
14 static constexpr unsigned int NUM_TRIPLET_THREADS = 1024;
15 static constexpr unsigned int NUM_DOUBLET_THREADS = 16;
16 static constexpr unsigned int MAX_TRIPLETS = 300;
17 static constexpr unsigned int TRIPLET_BUFFER_DEPTH = 3;
18 
19 typedef struct doubletInfo {
20 public:
21  int m_nInner[MAX_MIDDLE_SP];
22  int m_nOuter[MAX_MIDDLE_SP];
23  char m_good[MAX_MIDDLE_SP];
25 
26 typedef struct doubletStorage {
27 public:
28  int m_nItems;
29  int m_nI;
30  int m_nO;
31  int m_spmIdx[MAX_MIDDLE_SP];
32  int m_innerStart[MAX_MIDDLE_SP];
33  int m_outerStart[MAX_MIDDLE_SP];
34  int m_inner[MAX_DOUBLET];
35  int m_outer[MAX_DOUBLET];
37 
38 #include "CommonStructures.h"
39 
40 
41 #endif
CommonStructures.h
doubletStorage::m_nItems
int m_nItems
Definition: SeedMakingDataStructures.h:28
DOUBLET_INFO
struct doubletInfo DOUBLET_INFO
doubletInfo::m_good
char m_good[MAX_MIDDLE_SP]
Definition: SeedMakingDataStructures.h:23
doubletInfo::m_nInner
int m_nInner[MAX_MIDDLE_SP]
Definition: SeedMakingDataStructures.h:21
doubletStorage::m_outer
int m_outer[MAX_DOUBLET]
Definition: SeedMakingDataStructures.h:35
doubletStorage::m_spmIdx
int m_spmIdx[MAX_MIDDLE_SP]
Definition: SeedMakingDataStructures.h:31
doubletInfo
Definition: SeedMakingDataStructures.h:19
doubletInfo::m_nOuter
int m_nOuter[MAX_MIDDLE_SP]
Definition: SeedMakingDataStructures.h:22
DOUBLET_STORAGE
struct doubletStorage DOUBLET_STORAGE
doubletStorage::m_nO
int m_nO
Definition: SeedMakingDataStructures.h:30
doubletStorage::m_nI
int m_nI
Definition: SeedMakingDataStructures.h:29
doubletStorage::m_innerStart
int m_innerStart[MAX_MIDDLE_SP]
Definition: SeedMakingDataStructures.h:32
doubletStorage::m_outerStart
int m_outerStart[MAX_MIDDLE_SP]
Definition: SeedMakingDataStructures.h:33
doubletStorage
Definition: SeedMakingDataStructures.h:26
doubletStorage::m_inner
int m_inner[MAX_DOUBLET]
Definition: SeedMakingDataStructures.h:34