Completed given DB_FILE in a "normal" walk.
Reimplemented from Impala::Core::VideoSet::Listener. Definition at line 148 of file ComputeKernelData.h. References Impala::Core::Database::RawDataSet::GetFilePathPrecomputedKernels(), Impala::Core::Database::RawDataSet::GetSetName(), ILOG_INFO, mBaseSet, mKernelMatrixName, and mWalkType. 00149 { 00150 String kernelDataCacheFilename = vs->GetFilePathKernelData( 00151 mWalkType, 00152 mBaseSet->GetSetName(), 00153 mKernelMatrixName, 00154 fileId, false, true); 00155 if(!kernelDataCacheFilename.empty()) 00156 { 00157 ILOG_INFO("Skipping, KernelData already exists: " << 00158 kernelDataCacheFilename); 00159 return; 00160 } 00161 00162 String storageFilename = vs->GetFilePathKernelData( 00163 mWalkType, 00164 mBaseSet->GetSetName(), 00165 mKernelMatrixName, 00166 fileId, true, false); 00167 00168 String inputDefinition = mBaseSet->GetFilePathPrecomputedKernels 00169 (mKernelMatrixName + ".input.txt", "", false, false); 00170 00171 String averagesFilename = mBaseSet->GetFilePathPrecomputedKernels 00172 (mKernelMatrixName + ".averages.raw", "", false, false); 00173 00174 // compute it 00175 #ifdef CUDA 00176 bool GPU = Link::Cuda::CudaUsed(); 00177 #else 00178 bool GPU = false; 00179 #endif 00180 int setting_slabWidth = 1024; 00181 PrecomputeTask* pt = new PrecomputeTask(inputDefinition, 00182 averagesFilename, storageFilename, vs, mBaseSet, fileId, mWalkType); 00183 ILOG_INFO("GPU mode: " << GPU); 00184 if(GPU) 00185 { 00186 ComputeKernelMatrix<float, true>(pt, setting_slabWidth); 00187 } 00188 else 00189 { 00190 #ifdef CUDA 00191 // CUDA mode must be in float to make it compile, even for CPU 00192 ComputeKernelMatrix<float, false>(pt, setting_slabWidth); 00193 #else 00194 ComputeKernelMatrix<double, false>(pt, setting_slabWidth); 00195 #endif 00196 } 00197 delete pt; 00198 }
Here is the call graph for this function:
|