Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::IProcessorAffinityService Class Referenceabstract

Interface of a CPU core affinity management service. More...

#include <arcane/utils/IProcessorAffinityService.h>

Inheritance diagram for Arcane::IProcessorAffinityService:
Collaboration diagram for Arcane::IProcessorAffinityService:

Public Member Functions

virtual void build ()=0
virtual void printInfos ()=0
 Displays complete topology information via info().
virtual String cpuSetString ()=0
 Returns the cpuset for the current thread.
virtual void bindThread (Int32 cpu)=0
 Constrains the current thread to stay on the core with index cpu.
virtual Int32 numberOfCore ()=0
 Number of CPU cores (-1 if unknown).
virtual Int32 numberOfSocket ()=0
 Number of sockets (-1 if unknown).
virtual Int32 numberOfProcessingUnit ()=0
 Number of logical cores (-1 if unknown).

Detailed Description

Interface of a CPU core affinity management service.

Definition at line 32 of file IProcessorAffinityService.h.

Constructor & Destructor Documentation

◆ ~IProcessorAffinityService()

virtual Arcane::IProcessorAffinityService::~IProcessorAffinityService ( )
inlinevirtual

Definition at line 36 of file IProcessorAffinityService.h.

Member Function Documentation

◆ bindThread()

virtual void Arcane::IProcessorAffinityService::bindThread ( Int32 cpu)
pure virtual

Constrains the current thread to stay on the core with index cpu.

Implemented in Arcane::HWLocProcessorAffinityService.

◆ cpuSetString()

virtual String Arcane::IProcessorAffinityService::cpuSetString ( )
pure virtual

Returns the cpuset for the current thread.

The returned string is in a format compatible with that of taskset. For example, we can have values such as 'ff', '1, or 'ffff1234,ff'.

Implemented in Arcane::HWLocProcessorAffinityService.

Referenced by Arcane::SubDomain::_printCPUAffinity().

Here is the caller graph for this function:

◆ numberOfCore()

virtual Int32 Arcane::IProcessorAffinityService::numberOfCore ( )
pure virtual

Number of CPU cores (-1 if unknown).

Implemented in Arcane::HWLocProcessorAffinityService.

◆ numberOfProcessingUnit()

virtual Int32 Arcane::IProcessorAffinityService::numberOfProcessingUnit ( )
pure virtual

Number of logical cores (-1 if unknown).

Implemented in Arcane::HWLocProcessorAffinityService.

◆ numberOfSocket()

virtual Int32 Arcane::IProcessorAffinityService::numberOfSocket ( )
pure virtual

Number of sockets (-1 if unknown).

Implemented in Arcane::HWLocProcessorAffinityService.

◆ printInfos()

virtual void Arcane::IProcessorAffinityService::printInfos ( )
pure virtual

Displays complete topology information via info().

Implemented in Arcane::HWLocProcessorAffinityService.

Referenced by Arcane::Application::initialize().

Here is the caller graph for this function:

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