IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ipsdk::core::DistributedProcessingPolicy Class Reference

Class allowing to describe distributed processing policy used on local machine. More...

#include <DistributedProcessingPolicy.h>

Inheritance diagram for ipsdk::core::DistributedProcessingPolicy:
ipsdk::BaseSerializationObject ipsdk::BaseDynamicObject

Public Member Functions

bool isInit () const
 retrieve object initialization flag
 
void init (const ipUInt64 &maxMemSzForAllLocalDistributedStrip, const ipUInt64 &maxMemSzForRemoteStripRequest, const ipUInt64 &distributedProcessingMemThreshold, const ipUInt64 &maxMemSzForDistributedProcessing, const ipUInt64 &connectionsInitializationTimeOut, const ipUInt64 &distributedAllocationWakeUpTimeout, const ipUInt64 &distributedAllocationFailureTimeout)
 object initialization
 
void initDefault ()
 object default initialization
 
ipUInt64 getMaxMemSzForAllLocalDistributedStrip () const
 retrieve maximum used physical memory (RAM) for sum of all locally stored distributed strip (default : 70% of total physical memory size) More...
 
ipUInt64 getMaxMemSzForRemoteStripRequest () const
 retrieve maximum used physical memory (RAM) for remote strip memory storage request (default : 100000000) More...
 
ipUInt64 getDistributedProcessingMemThreshold () const
 retrieve threshold used to trigger a distributed processing of data (default : 1000000000) More...
 
ipUInt64 getMaxMemSzForDistributedProcessing () const
 retrieve maximum memory size for processed data on a given remote computer (default : 4000000000) More...
 
ipUInt64 getConnectionsInitializationTimeOut () const
 retrieve library time out for network connections initialization (default : 60000) More...
 
ipUInt64 getDistributedAllocationWakeUpTimeout () const
 retrieve time out (in microseconds) used to wake up waiting loop during distributed image allocation. During distributed image allocation we request memory allocation on remote computers and we wait for answers. If, for a reason or another, some computers are slow in reponding (ie with a duration greater to this timeout) allocation request loop will emit a new allocation request to computers which have already answered and then potentially allow them to handle more memory (default value : 5000 -> 5 seconds) More...
 
ipUInt64 getDistributedAllocationFailureTimeout () const
 retrieve time out (in microseconds) used to determine a failure into waiting loop used for distributed image allocation. During distributed image allocation we request memory allocation on remote computers and we wait for answers. If, for a reason or another, computers are slow in reponding (ie with a duration greater to this timeout) allocation request loop will fail (default value : 0 -> infinite wait) More...
 
void clear ()
 clear of object data
 
Constructors and destructors
 DistributedProcessingPolicy ()
 
 ~DistributedProcessingPolicy ()
 
- Public Member Functions inherited from ipsdk::BaseSerializationObject
 BaseSerializationObject ()
 Default constructor.
 
virtual ~BaseSerializationObject ()=0
 destructor
 
- Public Member Functions inherited from ipsdk::BaseDynamicObject
virtual const std::string & getClassName () const
 method allowing to retrieve object class name
 
virtual BaseDynamicObjectcreateNew () const =0
 method allowing to create new instance of current object type
 
virtual DynamicObjectPtr createShared () const =0
 method allowing to create new shared instance of current object type
 
virtual bool hasCopySupport () const =0
 check whether objet has copy support
 
virtual BaseDynamicObjectduplicate () const =0
 method allowing to duplicate current object More...
 
virtual DynamicObjectPtr duplicateShared () const =0
 method allowing shared duplication of current object More...
 
 BaseDynamicObject ()
 
virtual ~BaseDynamicObject ()=0
 

Protected Member Functions

void checkValues ()
 checks that provided values are in allowed ranges, and adjust it if not
 
- Protected Member Functions inherited from ipsdk::BaseSerializationObject
virtual BoolResult write (BaseOArchive &ar) const
 method allowing to ensure serialization write part for object
 
virtual BoolResult read (BaseIArchive &ar)
 method allowing to ensure serialization read part for object
 
- Protected Member Functions inherited from ipsdk::BaseDynamicObject
virtual void initCtorCopy (const BaseDynamicObject &object)
 
virtual void copy (const BaseDynamicObject &object)
 method allowing to copy data from another object
 

Protected Attributes

ipUInt64 _maxMemSzForAllLocalDistributedStrip
 
ipUInt64 _maxMemSzForRemoteStripRequest
 
ipUInt64 _distributedProcessingMemThreshold
 
ipUInt64 _maxMemSzForDistributedProcessing
 
ipUInt64 _connectionsInitializationTimeOut
 
ipUInt64 _distributedAllocationWakeUpTimeout
 
ipUInt64 _distributedAllocationFailureTimeout
 
bool _bInit
 object initialization flag
 

Additional Inherited Members

- Static Public Member Functions inherited from ipsdk::BaseSerializationObject
static ipUInt32 getVersion ()
 method allowing to retrieve class version information for serialization
 
- Static Public Member Functions inherited from ipsdk::BaseDynamicObject
static const std::string & getTypeName ()
 method allowing to retrieve name associated to class
 

Detailed Description

Class allowing to describe distributed processing policy used on local machine.

Author
E. Noirfalise
Date
2015/11/04

Member Function Documentation

◆ getMaxMemSzForAllLocalDistributedStrip()

ipUInt64 ipsdk::core::DistributedProcessingPolicy::getMaxMemSzForAllLocalDistributedStrip ( ) const

retrieve maximum used physical memory (RAM) for sum of all locally stored distributed strip (default : 70% of total physical memory size)

Exceptions
ipsdk::core::IPSDKCoreExceptionif isInit() == false

◆ getMaxMemSzForRemoteStripRequest()

ipUInt64 ipsdk::core::DistributedProcessingPolicy::getMaxMemSzForRemoteStripRequest ( ) const

retrieve maximum used physical memory (RAM) for remote strip memory storage request (default : 100000000)

Exceptions
ipsdk::core::IPSDKCoreExceptionif isInit() == false

◆ getDistributedProcessingMemThreshold()

ipUInt64 ipsdk::core::DistributedProcessingPolicy::getDistributedProcessingMemThreshold ( ) const

retrieve threshold used to trigger a distributed processing of data (default : 1000000000)

Exceptions
ipsdk::core::IPSDKCoreExceptionif isInit() == false

◆ getMaxMemSzForDistributedProcessing()

ipUInt64 ipsdk::core::DistributedProcessingPolicy::getMaxMemSzForDistributedProcessing ( ) const

retrieve maximum memory size for processed data on a given remote computer (default : 4000000000)

Exceptions
ipsdk::core::IPSDKCoreExceptionif isInit() == false

◆ getConnectionsInitializationTimeOut()

ipUInt64 ipsdk::core::DistributedProcessingPolicy::getConnectionsInitializationTimeOut ( ) const

retrieve library time out for network connections initialization (default : 60000)

Exceptions
ipsdk::core::IPSDKCoreExceptionif isInit() == false

◆ getDistributedAllocationWakeUpTimeout()

ipUInt64 ipsdk::core::DistributedProcessingPolicy::getDistributedAllocationWakeUpTimeout ( ) const

retrieve time out (in microseconds) used to wake up waiting loop during distributed image allocation. During distributed image allocation we request memory allocation on remote computers and we wait for answers. If, for a reason or another, some computers are slow in reponding (ie with a duration greater to this timeout) allocation request loop will emit a new allocation request to computers which have already answered and then potentially allow them to handle more memory (default value : 5000 -> 5 seconds)

Exceptions
ipsdk::core::IPSDKCoreExceptionif isInit() == false

◆ getDistributedAllocationFailureTimeout()

ipUInt64 ipsdk::core::DistributedProcessingPolicy::getDistributedAllocationFailureTimeout ( ) const

retrieve time out (in microseconds) used to determine a failure into waiting loop used for distributed image allocation. During distributed image allocation we request memory allocation on remote computers and we wait for answers. If, for a reason or another, computers are slow in reponding (ie with a duration greater to this timeout) allocation request loop will fail (default value : 0 -> infinite wait)

Exceptions
ipsdk::core::IPSDKCoreExceptionif isInit() == false

Member Data Documentation

◆ _maxMemSzForAllLocalDistributedStrip

ipUInt64 ipsdk::core::DistributedProcessingPolicy::_maxMemSzForAllLocalDistributedStrip
protected

maximum used physical memory (RAM) for sum of all locally stored distributed strip (default : 70% of total physical memory size)

◆ _maxMemSzForRemoteStripRequest

ipUInt64 ipsdk::core::DistributedProcessingPolicy::_maxMemSzForRemoteStripRequest
protected

maximum used physical memory (RAM) for remote strip memory storage request (default : 100000000)

◆ _distributedProcessingMemThreshold

ipUInt64 ipsdk::core::DistributedProcessingPolicy::_distributedProcessingMemThreshold
protected

threshold used to trigger a distributed processing of data (default : 1000000000)

◆ _maxMemSzForDistributedProcessing

ipUInt64 ipsdk::core::DistributedProcessingPolicy::_maxMemSzForDistributedProcessing
protected

maximum memory size for processed data on a given remote computer (default : 4000000000)

◆ _connectionsInitializationTimeOut

ipUInt64 ipsdk::core::DistributedProcessingPolicy::_connectionsInitializationTimeOut
protected

library time out for network connections initialization (default : 60000)

◆ _distributedAllocationWakeUpTimeout

ipUInt64 ipsdk::core::DistributedProcessingPolicy::_distributedAllocationWakeUpTimeout
protected

time out (in microseconds) used to wake up waiting loop during distributed image allocation. During distributed image allocation we request memory allocation on remote computers and we wait for answers. If, for a reason or another, some computers are slow in reponding (ie with a duration greater to this timeout) allocation request loop will emit a new allocation request to computers which have already answered and then potentially allow them to handle more memory (default value : 5000 -> 5 seconds)

◆ _distributedAllocationFailureTimeout

ipUInt64 ipsdk::core::DistributedProcessingPolicy::_distributedAllocationFailureTimeout
protected

time out (in microseconds) used to determine a failure into waiting loop used for distributed image allocation. During distributed image allocation we request memory allocation on remote computers and we wait for answers. If, for a reason or another, computers are slow in reponding (ie with a duration greater to this timeout) allocation request loop will fail (default value : 0 -> infinite wait)


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