libfaster API Documentation  Development Version
Super fast distributted computing
faster::_workerIFdd< K, T > Class Template Reference
Inheritance diagram for faster::_workerIFdd< K, T >:
faster::workerIFddCore< K, T > faster::workerFddBase

Description

template<class K, class T>
class faster::_workerIFdd< K, T >

Definition at line 139 of file _workerIFdd.h.

Public Member Functions

 _workerIFdd (unsigned int ident, fddType kt, fddType t)
 
 _workerIFdd (unsigned int ident, fddType kt, fddType t, size_t size)
 
void setData (K *keys, T *data, size_t size)
 
void setData (void *keys, void *data, size_t size)
 
void setData (void *keys, void *data, size_t *lineSizes UNUSED, size_t size)
 
void setDataRaw (void *keys, void *data, size_t size) override
 
void setDataRaw (void *keys UNUSED, void *data UNUSED, size_t *lineSizes UNUSED, size_t size UNUSED) override
 
size_t * getLineSizes ()
 
void insert (void *k, void *in, size_t s)
 
void insertl (void *in)
 
void insert (K &key, T &in)
 
void insert (std::deque< std::pair< K, T > > &in)
 
void apply (void *func, fddOpType op, workerFddBase *dest, fastCommBuffer &buffer)
 
void collect (fastComm *comm) override
 
template<typename L , typename U >
void map (workerFddBase *dest, ImapIPFunctionP< K, T, L, U > mapFunc)
 
template<typename L , typename U >
void map (workerFddBase *dest, IPmapIPFunctionP< K, T, L, U > mapFunc)
 
template<typename U >
void map (workerFddBase *dest, mapIPFunctionP< K, T, U > mapFunc)
 
template<typename U >
void map (workerFddBase *dest, PmapIPFunctionP< K, T, U > mapFunc)
 
template<typename L , typename U >
void bulkMap (workerFddBase *dest, IbulkMapIPFunctionP< K, T, L, U > bulkMapFunc)
 
template<typename L , typename U >
void bulkMap (workerFddBase *dest, IPbulkMapIPFunctionP< K, T, L, U > bulkMapFunc)
 
template<typename U >
void bulkMap (workerFddBase *dest, bulkMapIPFunctionP< K, T, U > bulkMapFunc)
 
template<typename U >
void bulkMap (workerFddBase *dest, PbulkMapIPFunctionP< K, T, U > bulkMapFunc)
 
template<typename L , typename U >
void flatMap (workerFddBase *dest, IflatMapIPFunctionP< K, T, L, U > flatMapFunc)
 
template<typename L , typename U >
void flatMap (workerFddBase *dest, IPflatMapIPFunctionP< K, T, L, U > flatMapFunc)
 
template<typename U >
void flatMap (workerFddBase *dest, flatMapIPFunctionP< K, T, U > flatMapFunc)
 
template<typename U >
void flatMap (workerFddBase *dest, PflatMapIPFunctionP< K, T, U > flatMapFunc)
 
template<typename L , typename U >
void bulkFlatMap (workerFddBase *dest, IbulkFlatMapIPFunctionP< K, T, L, U > bulkFlatMapFunc)
 
template<typename L , typename U >
void bulkFlatMap (workerFddBase *dest, IPbulkFlatMapIPFunctionP< K, T, L, U > bulkFlatMapFunc)
 
template<typename U >
void bulkFlatMap (workerFddBase *dest, bulkFlatMapIPFunctionP< K, T, U > bulkFlatMapFunc)
 
template<typename U >
void bulkFlatMap (workerFddBase *dest, PbulkFlatMapIPFunctionP< K, T, U > bulkFlatMapFunc)
 
- Public Member Functions inherited from faster::workerIFddCore< K, T >
 workerIFddCore (unsigned int ident, fddType kt, fddType t)
 
 workerIFddCore (unsigned int ident, fddType kt, fddType t, size_t size)
 
fddType getType () override
 
fddType getKeyType () override
 
void setData (void *data UNUSED, size_t size UNUSED)
 
void setData (void *data UNUSED, size_t *ls UNUSED, size_t size UNUSED)
 
void setDataRaw (void *data UNUSED, size_t size UNUSED) override
 
void setDataRaw (void *data UNUSED, size_t *lineSizes UNUSED, size_t size UNUSED) override
 
T & operator[] (size_t address)
 
void * getItem (size_t address)
 
void * getData () override
 
void * getKeys ()
 
size_t getSize () override
 
size_t itemSize () override
 
size_t baseSize () override
 
void setSize (size_t s)
 
void deleteItem (void *item) override
 
void shrink ()
 
std::vector< std::vector< T * > > findKeyInterval (K *keys, T *data, size_t fddSize)
 
void preapply (unsigned long int id, void *func, fddOpType op, workerFddBase *dest, fastComm *comm)
 
bool onlineReadStage3 (std::deque< std::vector< std::pair< K, T >>> &q2, omp_lock_t &q2lock)
 
bool onlinePartReadStage3 (std::unordered_map< K, int > &localKeyMap, fastComm *comm, void *funcP, std::deque< std::vector< std::pair< K, T >>> &q2, omp_lock_t &q2lock)
 
void onlineFullPartRead (fastComm *comm, void *funcP)
 
void onlinePartRead (fastComm *comm, void *funcP)
 
void onlineRead (fastComm *comm)
 
void groupByKey (fastComm *comm)
 
void groupByKeyHashed (fastComm *comm)
 
void countByKey (fastComm *comm)
 
void exchangeDataByKey (fastComm *comm)
 
bool exchangeDataByKeyHashed (fastComm *comm)
 
void exchangeDataByKeyMapped (fastComm *comm)
 
std::vector< std::vector< void * > > * getKeyLocations ()
 
void * getUKeys ()
 
void setUKeys (void *uk)
 
void * getKeyMap ()
 
void setKeyMap (void *km)
 
void writeToFile (void *path, size_t procId, void *sufix)
 
- Public Member Functions inherited from faster::workerFddBase
 workerFddBase (unsigned int ident, fddType t)
 
virtual void setData (void *, size_t)=0
 
virtual void setData (void *, size_t *, size_t)=0
 
virtual void setData (void *, void *, size_t *, size_t)=0
 
virtual void setDataRaw (void *, size_t)=0
 
virtual void setDataRaw (void *, size_t *, size_t)=0
 
virtual void setDataRaw (void *, void *, size_t *, size_t)=0
 

Additional Inherited Members

- Protected Member Functions inherited from faster::workerIFddCore< K, T >
K * distributeOwnership (fastComm *comm, K *uKeys, size_t cSize)
 
void sendPartKeyCount (fastComm *comm)
 
std::unordered_map< K, size_t > recvPartKeyMaxCount (fastComm *comm, std::unordered_map< K, std::pair< size_t, std::deque< int >> > &keyPPMaxCount)
 
std::unordered_map< K, size_t > recvPartKeyCount (fastComm *comm)
 
std::unordered_map< K, size_t > distributedMaxKeyCount (fastComm *comm, std::unordered_map< K, std::pair< size_t, std::deque< int >> > &keyPPMaxCount)
 
bool EDBKsendDataAsync (fastComm *comm, int owner, K &key, T &data, std::vector< size_t > &dataSize)
 
bool sendPending (fastComm *comm, std::vector< std::deque< std::pair< K, T > > > &pendingSend, std::vector< size_t > &dataSize)
 
void flushDataSend (fastComm *comm, std::vector< size_t > &dataSize)
 
bool EDBKSendData (fastComm *comm, std::vector< size_t > &dataSize)
 
bool EDBKSendDataHashed (fastComm *comm, size_t &pos, std::vector< bool > &deleted, std::vector< size_t > &dataSize, std::deque< std::pair< K, T > > &recvData, std::vector< std::deque< std::pair< K, T > > > &pendingSend, bool &dirty)
 
bool EDBKRecvData (fastComm *comm, size_t &pos, size_t &posLimit, std::vector< bool > &deleted, std::deque< std::pair< K, T > > &recvData, int &peersFinised, bool &dirty)
 
void EDBKFinishDataInsert (std::vector< bool > &deleted, std::deque< std::pair< K, T > > &recvData, size_t &pos)
 
void EDBKShrinkData (std::vector< bool > &deleted, size_t &pos)
 
void findMyKeys (int numProcs, int Id)
 
void findMyKeysByHash (int numProcs)
 
- Protected Attributes inherited from faster::workerIFddCore< K, T >
indexedFddStorage< K, T > * localData
 
std::shared_ptr< std::vector< K > > uKeys
 
std::shared_ptr< std::unordered_map< K, int > > keyMap
 
std::vector< std::vector< void * > > keyLocations
 
bool groupedByKey
 
bool groupedByHash
 
- Protected Attributes inherited from faster::workerFddBase
unsigned long int id
 
fddType type
 
fddType keyType
 

The documentation for this class was generated from the following files: