Home || Architecture || Video Search || Visual Search || Scripts || Applications || Important Messages || OGL || Src

void Impala::Core::Matrix::DistributedAccess::LoadParts ( String  filenamebase,
Core::Database::RawDataSet set,
Core::Database::RawDataSet set2 
) [inline, private]

Definition at line 317 of file DistributedAccess.h.

References Impala::Core::Database::RawDataSet::GetDatabase(), Impala::Core::Database::RawDataSet::GetFilePathPrecomputedKernels(), GetOwnerOfPart(), GetPartNr(), Impala::Core::Database::RawDataSet::GetSetName(), Impala::MakeString(), Impala::Core::Matrix::MatTranspose(), mColumns, mParts, mRows, mValid, Impala::Core::Matrix::DistributedAccess::IndexConverter::PartCount(), and Impala::Core::Array::ReadRaw().

Referenced by DistributedAccess().

00319     {
00320         ILOG_DEBUG_NODE("starting LoadParts");
00321         int id = Link::Mpi::MyId();
00322         for(int r=0 ; r<mRows->PartCount() ; r++)
00323         {
00324             for(int c=0 ; c<mColumns->PartCount() ; c++)
00325             {
00326                 int i = GetPartNr(r,c);
00327                 if(GetOwnerOfPart(i) == id)
00328                 {
00329                     Matrix::Mat* m = 0;
00330                     String filename = filenamebase + ".precomputed.part-R" +
00331                                MakeString(r) + "-C" + MakeString(c) + ".raw";
00332                     if (set2)
00333                     {
00334                         filename = set2->GetFilePathPrecomputedKernels
00335                             (filename, set->GetSetName(), false, false);
00336                         ReadRaw(m, filename, set2->GetDatabase());
00337                     }
00338                     else
00339                     {
00340                         filename = set->GetFilePathPrecomputedKernels
00341                             (filename, "", false, false);
00342                         ReadRaw(m, filename, set->GetDatabase());
00343                     }
00344                     if(!m)
00345                     {
00346                         ILOG_ERROR_NODE("did not load matrix");
00347                         exit(0); 
00348                         // exiting one node makes the whole thing crash,
00349                         // this is intentionally
00350                     }
00351                     //ILOG_DEBUG_NODE("loaded matrix r" << r << "c" << c);
00352                     mParts.push_back(MatTranspose(m));
00353                     delete m;
00354                 }
00355             }
00356         }
00357         mValid = true;
00358     }

Here is the call graph for this function:


Generated on Fri Mar 19 11:16:27 2010 for ImpalaSrc by  doxygen 1.5.1