dded and corrected defines for new Fermi GPU type (David)
authorrichterm <richterm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 26 Oct 2010 12:40:40 +0000 (12:40 +0000)
committerrichterm <richterm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 26 Oct 2010 12:40:40 +0000 (12:40 +0000)
HLT/TPCLib/tracking-ca/AliHLTTPCCAGPUConfig.h
HLT/TPCLib/tracking-ca/AliHLTTPCCANeighboursFinder.h
HLT/TPCLib/tracking-ca/AliHLTTPCCATrackletSelector.h

index b7ba962..718afb4 100644 (file)
@@ -2,8 +2,24 @@
 #define ALIHLTTPCCAGPUCONFIG_H
 
 //GPU Run Configuration
-#define HLTCA_GPU_BLOCK_COUNT 15
+
+//#define FERMI
+
+#ifdef FERMI
+#define HLTCA_GPU_BLOCK_COUNT 30
+#define HLTCA_GPU_BLOCK_COUNT_SELECTOR 45
+#define HLTCA_GPU_THREAD_COUNT 256
+#define HLTCA_GPU_THREAD_COUNT_CONSTRUCTOR 256
+#define HLTCA_GPU_THREAD_COUNT_SELECTOR 256
+#define HLTCA_GPU_THREAD_COUNT_FINDER 256
+#else
+#define HLTCA_GPU_BLOCK_COUNT 30
+#define HLTCA_GPU_BLOCK_COUNT_SELECTOR 30
 #define HLTCA_GPU_THREAD_COUNT 256
+#define HLTCA_GPU_THREAD_COUNT_CONSTRUCTOR 256
+#define HLTCA_GPU_THREAD_COUNT_SELECTOR 256
+#define HLTCA_GPU_THREAD_COUNT_FINDER 256
+#endif
 
 //GPU Parameters
 #define HLTCA_GPU_WARP_SIZE 32
@@ -21,7 +37,9 @@
 #define HLTCA_GPU_RESCHED                                                              //Use dynamic tracklet scheduling
 
 #define HLTCA_GPU_TEXTURE_FETCH                                                        //Fetch data through texture cache
+#ifndef FERMI
 #define HLTCA_GPU_TEXTURE_FETCHa                                               //Fetch also in Neighbours Finder
+#endif
 
 //#define HLTCA_GPU_TRACKLET_CONSTRUCTOR_DO_PROFILE            //Output Profiling Data for Tracklet Constructor Tracklet Scheduling
 //#define HLTCA_GPU_TIME_PROFILE                                               //Output Time Profiling Data for asynchronous DMA transfer
@@ -37,7 +55,7 @@
 //#define HLTCA_GPU_EMULATION_SINGLE_TRACKLET 1313             //Run Tracklet constructor on on single Tracklet in Device Emulation Mode
 //#define HLTCA_GPU_EMULATION_DEBUG_TRACKLET 1313
 
-#define HLTCA_GPU_DEFAULT_MAX_SLICE_COUNT 12
+//#define HLTCA_GPU_DEFAULT_MAX_SLICE_COUNT 12
 
 #define HLTCA_GPU_TRACKER_CONSTANT_MEM 65000                   //Amount of Constant Memory to reserve
 
index dd0d660..81ff305 100644 (file)
@@ -12,6 +12,7 @@
 
 #include "AliHLTTPCCADef.h"
 #include "AliHLTTPCCARow.h"
+#include "AliHLTTPCCAGPUConfig.h"
 class AliHLTTPCCATracker;
 
 /**
@@ -47,8 +48,8 @@ class AliHLTTPCCANeighboursFinder
         int fIRowDn;// previous row number
         int fNRows; // number of rows
 #if ALIHLTTPCCANEIGHBOURS_FINDER_MAX_NNEIGHUP > 0
-        float2 fA[256][ALIHLTTPCCANEIGHBOURS_FINDER_MAX_NNEIGHUP]; // temp memory
-        unsigned short fB[256][ALIHLTTPCCANEIGHBOURS_FINDER_MAX_NNEIGHUP]; // temp memory
+        float2 fA[HLTCA_GPU_THREAD_COUNT_FINDER][ALIHLTTPCCANEIGHBOURS_FINDER_MAX_NNEIGHUP]; // temp memory
+        unsigned short fB[HLTCA_GPU_THREAD_COUNT_FINDER][ALIHLTTPCCANEIGHBOURS_FINDER_MAX_NNEIGHUP]; // temp memory
 #endif //ALIHLTTPCCANEIGHBOURS_FINDER_MAX_NNEIGHUP > 0
                AliHLTTPCCARow fRow, fRowUp, fRowDown;
     };
index 0b7e527..216c069 100644 (file)
@@ -31,7 +31,7 @@ class AliHLTTPCCATrackletSelector
         int fNThreadsTotal; // total n threads
         int fNTracklets; // n of tracklets
 #if HLTCA_GPU_TRACKLET_SELECTOR_HITS_REG_SIZE != 0
-               AliHLTTPCCAHitId fHits[HLTCA_GPU_THREAD_COUNT][HLTCA_GPU_TRACKLET_SELECTOR_HITS_REG_SIZE];
+               AliHLTTPCCAHitId fHits[HLTCA_GPU_THREAD_COUNT_SELECTOR][HLTCA_GPU_TRACKLET_SELECTOR_HITS_REG_SIZE];
 #endif //HLTCA_GPU_TRACKLET_SELECTOR_HITS_REG_SIZE != 0
        };